jodit-pro 4.6.10 → 4.6.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (369) hide show
  1. package/.nvmrc +1 -1
  2. package/es2015/jodit.css +1 -1
  3. package/es2015/jodit.fat.min.js +2 -2
  4. package/es2015/jodit.js +1278 -1328
  5. package/es2015/jodit.min.js +2 -2
  6. package/es2015/plugins/autocomplete/autocomplete.js +1 -1
  7. package/es2015/plugins/autocomplete/autocomplete.min.js +2 -2
  8. package/es2015/plugins/backup/backup.css +1 -1
  9. package/es2015/plugins/backup/backup.js +65 -65
  10. package/es2015/plugins/backup/backup.min.js +2 -2
  11. package/es2015/plugins/button-generator/button-generator.css +1 -1
  12. package/es2015/plugins/button-generator/button-generator.js +110 -110
  13. package/es2015/plugins/button-generator/button-generator.min.js +2 -2
  14. package/es2015/plugins/change-case/change-case.js +7 -7
  15. package/es2015/plugins/change-case/change-case.min.js +2 -2
  16. package/es2015/plugins/color-picker/color-picker.css +1 -1
  17. package/es2015/plugins/color-picker/color-picker.js +37 -37
  18. package/es2015/plugins/color-picker/color-picker.min.js +2 -2
  19. package/es2015/plugins/emoji/emoji.css +1 -1
  20. package/es2015/plugins/emoji/emoji.js +47 -47
  21. package/es2015/plugins/emoji/emoji.min.js +2 -2
  22. package/es2015/plugins/export-docs/export-docs.js +18 -18
  23. package/es2015/plugins/export-docs/export-docs.min.js +2 -2
  24. package/es2015/plugins/finder/finder.css +1 -1
  25. package/es2015/plugins/finder/finder.js +452 -452
  26. package/es2015/plugins/finder/finder.min.js +2 -2
  27. package/es2015/plugins/google-maps/google-maps.css +1 -1
  28. package/es2015/plugins/google-maps/google-maps.js +265 -265
  29. package/es2015/plugins/google-maps/google-maps.min.js +2 -2
  30. package/es2015/plugins/google-search/google-search.js +1 -1
  31. package/es2015/plugins/google-search/google-search.min.js +2 -2
  32. package/es2015/plugins/highlight-signature/highlight-signature.js +23 -23
  33. package/es2015/plugins/highlight-signature/highlight-signature.min.js +2 -2
  34. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  35. package/es2015/plugins/iframe-editor/iframe-editor.js +40 -40
  36. package/es2015/plugins/iframe-editor/iframe-editor.min.js +2 -2
  37. package/es2015/plugins/keyboard/keyboard.css +1 -1
  38. package/es2015/plugins/keyboard/keyboard.js +60 -60
  39. package/es2015/plugins/keyboard/keyboard.min.js +2 -2
  40. package/es2015/plugins/mobile-view/mobile-view.js +26 -26
  41. package/es2015/plugins/mobile-view/mobile-view.min.js +2 -2
  42. package/es2015/plugins/page-break/page-break.js +27 -27
  43. package/es2015/plugins/page-break/page-break.min.js +2 -2
  44. package/es2015/plugins/paste-code/paste-code.css +1 -1
  45. package/es2015/plugins/paste-code/paste-code.js +51 -51
  46. package/es2015/plugins/paste-code/paste-code.min.js +2 -2
  47. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  48. package/es2015/plugins/paste-from-word/paste-from-word.min.js +2 -2
  49. package/es2015/plugins/show-blocks/show-blocks.js +27 -27
  50. package/es2015/plugins/show-blocks/show-blocks.min.js +2 -2
  51. package/es2015/plugins/todo-list/todo-list.css +1 -1
  52. package/es2015/plugins/todo-list/todo-list.js +62 -62
  53. package/es2015/plugins/todo-list/todo-list.min.js +2 -2
  54. package/es2015/plugins/translate/translate.css +1 -1
  55. package/es2015/plugins/translate/translate.js +62 -62
  56. package/es2015/plugins/translate/translate.min.js +2 -2
  57. package/es2015/plugins/tune-block/tune-block.css +1 -1
  58. package/es2015/plugins/tune-block/tune-block.js +50 -50
  59. package/es2015/plugins/tune-block/tune-block.min.js +2 -2
  60. package/es2018/jodit.css +1 -1
  61. package/es2018/jodit.fat.min.js +2 -2
  62. package/es2018/jodit.js +1123 -1118
  63. package/es2018/jodit.min.js +2 -2
  64. package/es2018/plugins/autocomplete/autocomplete.js +1 -1
  65. package/es2018/plugins/autocomplete/autocomplete.min.js +2 -2
  66. package/es2018/plugins/backup/backup.css +1 -1
  67. package/es2018/plugins/backup/backup.js +64 -64
  68. package/es2018/plugins/backup/backup.min.js +2 -2
  69. package/es2018/plugins/button-generator/button-generator.css +1 -1
  70. package/es2018/plugins/button-generator/button-generator.js +110 -110
  71. package/es2018/plugins/button-generator/button-generator.min.js +2 -2
  72. package/es2018/plugins/change-case/change-case.js +7 -7
  73. package/es2018/plugins/change-case/change-case.min.js +2 -2
  74. package/es2018/plugins/color-picker/color-picker.css +1 -1
  75. package/es2018/plugins/color-picker/color-picker.js +37 -37
  76. package/es2018/plugins/color-picker/color-picker.min.js +2 -2
  77. package/es2018/plugins/emoji/emoji.css +1 -1
  78. package/es2018/plugins/emoji/emoji.js +45 -45
  79. package/es2018/plugins/emoji/emoji.min.js +2 -2
  80. package/es2018/plugins/export-docs/export-docs.js +1 -1
  81. package/es2018/plugins/export-docs/export-docs.min.js +2 -2
  82. package/es2018/plugins/finder/finder.css +1 -1
  83. package/es2018/plugins/finder/finder.js +446 -446
  84. package/es2018/plugins/finder/finder.min.js +2 -2
  85. package/es2018/plugins/google-maps/google-maps.css +1 -1
  86. package/es2018/plugins/google-maps/google-maps.js +262 -262
  87. package/es2018/plugins/google-maps/google-maps.min.js +2 -2
  88. package/es2018/plugins/google-search/google-search.js +1 -1
  89. package/es2018/plugins/google-search/google-search.min.js +2 -2
  90. package/es2018/plugins/highlight-signature/highlight-signature.js +23 -23
  91. package/es2018/plugins/highlight-signature/highlight-signature.min.js +2 -2
  92. package/es2018/plugins/iframe-editor/iframe-editor.css +1 -1
  93. package/es2018/plugins/iframe-editor/iframe-editor.js +40 -40
  94. package/es2018/plugins/iframe-editor/iframe-editor.min.js +2 -2
  95. package/es2018/plugins/keyboard/keyboard.css +1 -1
  96. package/es2018/plugins/keyboard/keyboard.js +60 -60
  97. package/es2018/plugins/keyboard/keyboard.min.js +2 -2
  98. package/es2018/plugins/mobile-view/mobile-view.js +26 -26
  99. package/es2018/plugins/mobile-view/mobile-view.min.js +2 -2
  100. package/es2018/plugins/page-break/page-break.js +27 -27
  101. package/es2018/plugins/page-break/page-break.min.js +2 -2
  102. package/es2018/plugins/paste-code/paste-code.css +1 -1
  103. package/es2018/plugins/paste-code/paste-code.js +49 -49
  104. package/es2018/plugins/paste-code/paste-code.min.js +2 -2
  105. package/es2018/plugins/paste-from-word/paste-from-word.js +1 -1
  106. package/es2018/plugins/paste-from-word/paste-from-word.min.js +2 -2
  107. package/es2018/plugins/show-blocks/show-blocks.js +27 -27
  108. package/es2018/plugins/show-blocks/show-blocks.min.js +2 -2
  109. package/es2018/plugins/todo-list/todo-list.css +1 -1
  110. package/es2018/plugins/todo-list/todo-list.js +62 -62
  111. package/es2018/plugins/todo-list/todo-list.min.js +2 -2
  112. package/es2018/plugins/translate/translate.css +1 -1
  113. package/es2018/plugins/translate/translate.js +61 -61
  114. package/es2018/plugins/translate/translate.min.js +2 -2
  115. package/es2018/plugins/tune-block/tune-block.css +1 -1
  116. package/es2018/plugins/tune-block/tune-block.js +50 -50
  117. package/es2018/plugins/tune-block/tune-block.min.js +2 -2
  118. package/es2021/jodit.css +1 -1
  119. package/es2021/jodit.fat.min.js +2 -2
  120. package/es2021/jodit.js +1123 -1118
  121. package/es2021/jodit.min.js +2 -2
  122. package/es2021/plugins/autocomplete/autocomplete.js +1 -1
  123. package/es2021/plugins/autocomplete/autocomplete.min.js +2 -2
  124. package/es2021/plugins/backup/backup.css +1 -1
  125. package/es2021/plugins/backup/backup.js +64 -64
  126. package/es2021/plugins/backup/backup.min.js +2 -2
  127. package/es2021/plugins/button-generator/button-generator.css +1 -1
  128. package/es2021/plugins/button-generator/button-generator.js +110 -110
  129. package/es2021/plugins/button-generator/button-generator.min.js +2 -2
  130. package/es2021/plugins/change-case/change-case.js +7 -7
  131. package/es2021/plugins/change-case/change-case.min.js +2 -2
  132. package/es2021/plugins/color-picker/color-picker.css +1 -1
  133. package/es2021/plugins/color-picker/color-picker.js +37 -37
  134. package/es2021/plugins/color-picker/color-picker.min.js +2 -2
  135. package/es2021/plugins/emoji/emoji.css +1 -1
  136. package/es2021/plugins/emoji/emoji.js +45 -45
  137. package/es2021/plugins/emoji/emoji.min.js +2 -2
  138. package/es2021/plugins/export-docs/export-docs.js +1 -1
  139. package/es2021/plugins/export-docs/export-docs.min.js +2 -2
  140. package/es2021/plugins/finder/finder.css +1 -1
  141. package/es2021/plugins/finder/finder.js +446 -446
  142. package/es2021/plugins/finder/finder.min.js +2 -2
  143. package/es2021/plugins/google-maps/google-maps.css +1 -1
  144. package/es2021/plugins/google-maps/google-maps.js +262 -262
  145. package/es2021/plugins/google-maps/google-maps.min.js +2 -2
  146. package/es2021/plugins/google-search/google-search.js +1 -1
  147. package/es2021/plugins/google-search/google-search.min.js +2 -2
  148. package/es2021/plugins/highlight-signature/highlight-signature.js +23 -23
  149. package/es2021/plugins/highlight-signature/highlight-signature.min.js +2 -2
  150. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  151. package/es2021/plugins/iframe-editor/iframe-editor.js +40 -40
  152. package/es2021/plugins/iframe-editor/iframe-editor.min.js +2 -2
  153. package/es2021/plugins/keyboard/keyboard.css +1 -1
  154. package/es2021/plugins/keyboard/keyboard.js +60 -60
  155. package/es2021/plugins/keyboard/keyboard.min.js +2 -2
  156. package/es2021/plugins/mobile-view/mobile-view.js +26 -26
  157. package/es2021/plugins/mobile-view/mobile-view.min.js +2 -2
  158. package/es2021/plugins/page-break/page-break.js +27 -27
  159. package/es2021/plugins/page-break/page-break.min.js +2 -2
  160. package/es2021/plugins/paste-code/paste-code.css +1 -1
  161. package/es2021/plugins/paste-code/paste-code.js +49 -49
  162. package/es2021/plugins/paste-code/paste-code.min.js +2 -2
  163. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  164. package/es2021/plugins/paste-from-word/paste-from-word.min.js +2 -2
  165. package/es2021/plugins/show-blocks/show-blocks.js +27 -27
  166. package/es2021/plugins/show-blocks/show-blocks.min.js +2 -2
  167. package/es2021/plugins/todo-list/todo-list.css +1 -1
  168. package/es2021/plugins/todo-list/todo-list.js +62 -62
  169. package/es2021/plugins/todo-list/todo-list.min.js +2 -2
  170. package/es2021/plugins/translate/translate.css +1 -1
  171. package/es2021/plugins/translate/translate.js +61 -61
  172. package/es2021/plugins/translate/translate.min.js +2 -2
  173. package/es2021/plugins/tune-block/tune-block.css +1 -1
  174. package/es2021/plugins/tune-block/tune-block.js +50 -50
  175. package/es2021/plugins/tune-block/tune-block.min.js +2 -2
  176. package/es2021.en/jodit.css +1 -1
  177. package/es2021.en/jodit.fat.min.js +2 -2
  178. package/es2021.en/jodit.js +1123 -1118
  179. package/es2021.en/jodit.min.js +2 -2
  180. package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
  181. package/es2021.en/plugins/autocomplete/autocomplete.min.js +2 -2
  182. package/es2021.en/plugins/backup/backup.css +1 -1
  183. package/es2021.en/plugins/backup/backup.js +64 -64
  184. package/es2021.en/plugins/backup/backup.min.js +2 -2
  185. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  186. package/es2021.en/plugins/button-generator/button-generator.js +110 -110
  187. package/es2021.en/plugins/button-generator/button-generator.min.js +2 -2
  188. package/es2021.en/plugins/change-case/change-case.js +7 -7
  189. package/es2021.en/plugins/change-case/change-case.min.js +2 -2
  190. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  191. package/es2021.en/plugins/color-picker/color-picker.js +37 -37
  192. package/es2021.en/plugins/color-picker/color-picker.min.js +2 -2
  193. package/es2021.en/plugins/emoji/emoji.css +1 -1
  194. package/es2021.en/plugins/emoji/emoji.js +45 -45
  195. package/es2021.en/plugins/emoji/emoji.min.js +2 -2
  196. package/es2021.en/plugins/export-docs/export-docs.js +1 -1
  197. package/es2021.en/plugins/export-docs/export-docs.min.js +2 -2
  198. package/es2021.en/plugins/finder/finder.css +1 -1
  199. package/es2021.en/plugins/finder/finder.js +446 -446
  200. package/es2021.en/plugins/finder/finder.min.js +2 -2
  201. package/es2021.en/plugins/google-maps/google-maps.css +1 -1
  202. package/es2021.en/plugins/google-maps/google-maps.js +262 -262
  203. package/es2021.en/plugins/google-maps/google-maps.min.js +2 -2
  204. package/es2021.en/plugins/google-search/google-search.js +1 -1
  205. package/es2021.en/plugins/google-search/google-search.min.js +2 -2
  206. package/es2021.en/plugins/highlight-signature/highlight-signature.js +23 -23
  207. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +2 -2
  208. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  209. package/es2021.en/plugins/iframe-editor/iframe-editor.js +40 -40
  210. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +2 -2
  211. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  212. package/es2021.en/plugins/keyboard/keyboard.js +60 -60
  213. package/es2021.en/plugins/keyboard/keyboard.min.js +2 -2
  214. package/es2021.en/plugins/mobile-view/mobile-view.js +26 -26
  215. package/es2021.en/plugins/mobile-view/mobile-view.min.js +2 -2
  216. package/es2021.en/plugins/page-break/page-break.js +27 -27
  217. package/es2021.en/plugins/page-break/page-break.min.js +2 -2
  218. package/es2021.en/plugins/paste-code/paste-code.css +1 -1
  219. package/es2021.en/plugins/paste-code/paste-code.js +49 -49
  220. package/es2021.en/plugins/paste-code/paste-code.min.js +2 -2
  221. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  222. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +2 -2
  223. package/es2021.en/plugins/show-blocks/show-blocks.js +27 -27
  224. package/es2021.en/plugins/show-blocks/show-blocks.min.js +2 -2
  225. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  226. package/es2021.en/plugins/todo-list/todo-list.js +62 -62
  227. package/es2021.en/plugins/todo-list/todo-list.min.js +2 -2
  228. package/es2021.en/plugins/translate/translate.css +1 -1
  229. package/es2021.en/plugins/translate/translate.js +61 -61
  230. package/es2021.en/plugins/translate/translate.min.js +2 -2
  231. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  232. package/es2021.en/plugins/tune-block/tune-block.js +50 -50
  233. package/es2021.en/plugins/tune-block/tune-block.min.js +2 -2
  234. package/es5/jodit.css +2 -2
  235. package/es5/jodit.fat.min.js +2 -2
  236. package/es5/jodit.js +1461 -1568
  237. package/es5/jodit.min.css +2 -2
  238. package/es5/jodit.min.js +2 -2
  239. package/es5/plugins/autocomplete/autocomplete.js +1 -1
  240. package/es5/plugins/autocomplete/autocomplete.min.js +2 -2
  241. package/es5/plugins/backup/backup.css +1 -1
  242. package/es5/plugins/backup/backup.js +80 -80
  243. package/es5/plugins/backup/backup.min.js +2 -2
  244. package/es5/plugins/button-generator/button-generator.css +1 -1
  245. package/es5/plugins/button-generator/button-generator.js +137 -137
  246. package/es5/plugins/button-generator/button-generator.min.js +2 -2
  247. package/es5/plugins/change-case/change-case.js +17 -17
  248. package/es5/plugins/change-case/change-case.min.js +2 -2
  249. package/es5/plugins/color-picker/color-picker.css +1 -1
  250. package/es5/plugins/color-picker/color-picker.js +40 -40
  251. package/es5/plugins/color-picker/color-picker.min.js +2 -2
  252. package/es5/plugins/emoji/emoji.css +1 -1
  253. package/es5/plugins/emoji/emoji.js +54 -54
  254. package/es5/plugins/emoji/emoji.min.js +2 -2
  255. package/es5/plugins/export-docs/export-docs.js +21 -21
  256. package/es5/plugins/export-docs/export-docs.min.js +2 -2
  257. package/es5/plugins/finder/finder.css +1 -1
  258. package/es5/plugins/finder/finder.js +495 -495
  259. package/es5/plugins/finder/finder.min.js +2 -2
  260. package/es5/plugins/google-maps/google-maps.css +1 -1
  261. package/es5/plugins/google-maps/google-maps.js +299 -299
  262. package/es5/plugins/google-maps/google-maps.min.js +2 -2
  263. package/es5/plugins/google-search/google-search.js +17 -17
  264. package/es5/plugins/google-search/google-search.min.js +2 -2
  265. package/es5/plugins/highlight-signature/highlight-signature.js +26 -26
  266. package/es5/plugins/highlight-signature/highlight-signature.min.js +2 -2
  267. package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
  268. package/es5/plugins/iframe-editor/iframe-editor.js +43 -43
  269. package/es5/plugins/iframe-editor/iframe-editor.min.js +2 -2
  270. package/es5/plugins/keyboard/keyboard.css +1 -1
  271. package/es5/plugins/keyboard/keyboard.js +62 -62
  272. package/es5/plugins/keyboard/keyboard.min.js +2 -2
  273. package/es5/plugins/mobile-view/mobile-view.js +28 -28
  274. package/es5/plugins/mobile-view/mobile-view.min.js +2 -2
  275. package/es5/plugins/page-break/page-break.js +29 -29
  276. package/es5/plugins/page-break/page-break.min.js +2 -2
  277. package/es5/plugins/paste-code/paste-code.css +1 -1
  278. package/es5/plugins/paste-code/paste-code.js +55 -55
  279. package/es5/plugins/paste-code/paste-code.min.js +2 -2
  280. package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
  281. package/es5/plugins/paste-from-word/paste-from-word.min.js +2 -2
  282. package/es5/plugins/show-blocks/show-blocks.js +28 -28
  283. package/es5/plugins/show-blocks/show-blocks.min.js +2 -2
  284. package/es5/plugins/todo-list/todo-list.css +1 -1
  285. package/es5/plugins/todo-list/todo-list.js +64 -64
  286. package/es5/plugins/todo-list/todo-list.min.js +2 -2
  287. package/es5/plugins/translate/translate.css +1 -1
  288. package/es5/plugins/translate/translate.js +77 -77
  289. package/es5/plugins/translate/translate.min.js +2 -2
  290. package/es5/plugins/tune-block/tune-block.css +1 -1
  291. package/es5/plugins/tune-block/tune-block.js +65 -65
  292. package/es5/plugins/tune-block/tune-block.min.js +2 -2
  293. package/esm/index.js +1 -1
  294. package/esm/jodit-pro.js +1 -1
  295. package/esm/plugins/autocomplete/autocomplete.js +1 -1
  296. package/esm/plugins/autocomplete/ui/autocomplete.js +1 -1
  297. package/esm/plugins/backup/backup.js +1 -1
  298. package/esm/plugins/backup/modules/store.js +1 -1
  299. package/esm/plugins/backup/ui/list.js +1 -1
  300. package/esm/plugins/button-generator/button-generator.js +1 -1
  301. package/esm/plugins/button-generator/ui/button/button.js +1 -1
  302. package/esm/plugins/button-generator/ui/form/form.js +1 -1
  303. package/esm/plugins/button-generator/ui/generator/button-generator.js +1 -1
  304. package/esm/plugins/button-generator/ui/preview/preview.js +1 -1
  305. package/esm/plugins/change-case/change-case.js +1 -1
  306. package/esm/plugins/color-picker/ui/input/color-input.js +1 -1
  307. package/esm/plugins/emoji/config.js +1 -1
  308. package/esm/plugins/emoji/emoji.js +1 -1
  309. package/esm/plugins/emoji/ui/emoji.js +1 -1
  310. package/esm/plugins/export-docs/export-docs.js +1 -1
  311. package/esm/plugins/finder/browser.js +1 -1
  312. package/esm/plugins/finder/finder.js +1 -1
  313. package/esm/plugins/finder/helpers/context-menu.js +1 -1
  314. package/esm/plugins/finder/helpers/helpers.js +1 -1
  315. package/esm/plugins/finder/helpers/loading-manager.js +1 -1
  316. package/esm/plugins/finder/helpers/persistent-store.js +1 -1
  317. package/esm/plugins/finder/helpers/state-manager.js +1 -1
  318. package/esm/plugins/finder/ui/folder/folder.js +1 -1
  319. package/esm/plugins/finder/ui/header/header.js +1 -1
  320. package/esm/plugins/finder/ui/item/item.js +1 -1
  321. package/esm/plugins/finder/ui/lightboox/lightbox.js +1 -1
  322. package/esm/plugins/finder/ui/panel/panel.js +1 -1
  323. package/esm/plugins/finder/ui/preview/preview.js +1 -1
  324. package/esm/plugins/finder/ui/progress/progress.js +1 -1
  325. package/esm/plugins/finder/ui/settings/settings.js +1 -1
  326. package/esm/plugins/finder/ui/source/source.js +1 -1
  327. package/esm/plugins/finder/ui/sources/sources.js +1 -1
  328. package/esm/plugins/finder/ui/tree/tree.js +1 -1
  329. package/esm/plugins/finder/ui/virtual-scroll/virtual-scroll.js +1 -1
  330. package/esm/plugins/google-maps/google-maps.js +1 -1
  331. package/esm/plugins/google-maps/helpers/generate-static-elements.js +1 -1
  332. package/esm/plugins/google-maps/helpers/helpers.js +1 -1
  333. package/esm/plugins/google-maps/ui/combo-box/combo-box.js +1 -1
  334. package/esm/plugins/google-maps/ui/editors/base.js +1 -1
  335. package/esm/plugins/google-maps/ui/editors/marker/marker.js +1 -1
  336. package/esm/plugins/google-maps/ui/map/map.js +1 -1
  337. package/esm/plugins/google-maps/ui/map/modules/init-or-update-element-from-state.js +1 -1
  338. package/esm/plugins/google-maps/ui/map/modules/open-props-dialog.js +1 -1
  339. package/esm/plugins/google-maps/ui/maps-controls/maps-controls.js +1 -1
  340. package/esm/plugins/google-maps/ui/wysiwyg/wysiwyg.js +1 -1
  341. package/esm/plugins/highlight-signature/highlight-signature.js +1 -1
  342. package/esm/plugins/iframe-editor/iframe-editor.js +1 -1
  343. package/esm/plugins/keyboard/keyboard.js +1 -1
  344. package/esm/plugins/keyboard/ui/keyboard/keyboard.js +1 -1
  345. package/esm/plugins/license/helpers/helpers.js +1 -1
  346. package/esm/plugins/license/license.js +1 -1
  347. package/esm/plugins/mobile-view/mobile-view.js +1 -1
  348. package/esm/plugins/page-break/page-break.js +1 -1
  349. package/esm/plugins/paste-code/paste-code.js +1 -1
  350. package/esm/plugins/paste-from-word/cases/clean-styles.js +1 -1
  351. package/esm/plugins/paste-from-word/cases/convert-style-unit-to-pixels.js +1 -1
  352. package/esm/plugins/paste-from-word/cases/convert-to-list.js +1 -1
  353. package/esm/plugins/paste-from-word/cases/process-image.js +1 -1
  354. package/esm/plugins/paste-from-word/element/checkers.js +1 -1
  355. package/esm/plugins/paste-from-word/element/element.js +1 -1
  356. package/esm/plugins/paste-from-word/element/render.js +1 -1
  357. package/esm/plugins/paste-from-word/element/style.js +1 -1
  358. package/esm/plugins/paste-from-word/helpers/apply-styles-pro.js +1 -1
  359. package/esm/plugins/paste-from-word/helpers/calc-list-levels.js +1 -1
  360. package/esm/plugins/paste-from-word/helpers/helpers.js +1 -1
  361. package/esm/plugins/paste-from-word/helpers/transform-word-to-html.js +1 -1
  362. package/esm/plugins/show-blocks/show-blocks.js +1 -1
  363. package/esm/plugins/todo-list/config.js +1 -1
  364. package/esm/plugins/todo-list/todo-list.js +1 -1
  365. package/esm/plugins/translate/providers/google/google.js +1 -1
  366. package/esm/plugins/translate/translate.js +1 -1
  367. package/esm/plugins/translate/ui/list/list.js +1 -1
  368. package/esm/plugins/tune-block/ui/tuner/tuner.js +1 -1
  369. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v4.6.10
4
+ * Version: v4.6.13
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -26,12 +26,12 @@ __webpack_require__.r(__webpack_exports__);
26
26
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
27
27
  /* harmony export */ tuneBlock: function() { return /* binding */ tuneBlock; }
28
28
  /* harmony export */ });
29
- /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(31635);
30
- /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(46217);
31
- /* harmony import */ var _ui_tuner_tuner__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(72193);
32
- /* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(65478);
33
- /* harmony import */ var jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(50911);
34
- /* harmony import */ var jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(34013);
29
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(31635);
30
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46217);
31
+ /* harmony import */ var _ui_tuner_tuner__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(72193);
32
+ /* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(65478);
33
+ /* harmony import */ var jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(50911);
34
+ /* harmony import */ var jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(34013);
35
35
  /*!
36
36
  * Jodit Editor PRO (https://xdsoft.net/jodit/)
37
37
  * See LICENSE.md in the project root for license information.
@@ -47,12 +47,12 @@ __webpack_require__.r(__webpack_exports__);
47
47
  * Tune block with popup: move, align, change block tag, and another options
48
48
  */
49
49
  var tuneBlock = /** @class */ (function (_super) {
50
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__extends */ .C6)(tuneBlock, _super);
50
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__extends */ .C6)(tuneBlock, _super);
51
51
  function tuneBlock() {
52
52
  return _super !== null && _super.apply(this, arguments) || this;
53
53
  }
54
54
  tuneBlock.prototype.afterInit = function (jodit) {
55
- this.tuner = new _ui_tuner_tuner__WEBPACK_IMPORTED_MODULE_1__/* .UITuner */ .f(jodit);
55
+ this.tuner = new _ui_tuner_tuner__WEBPACK_IMPORTED_MODULE_2__/* .UITuner */ .f(jodit);
56
56
  };
57
57
  /**
58
58
  * Handler: click on an element outside the editor or the keyboard closes the tuner
@@ -78,20 +78,20 @@ var tuneBlock = /** @class */ (function (_super) {
78
78
  };
79
79
  /** @override */
80
80
  tuneBlock.requires = ['license'];
81
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
82
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__.watch)(':outsideClick :keydown')
81
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
82
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.watch)(':outsideClick :keydown')
83
83
  ], tuneBlock.prototype, "hideTuner", null);
84
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
85
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__.watch)('j.ed:selectionchange'),
86
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__.debounce)()
84
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
85
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.watch)('j.ed:selectionchange'),
86
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.debounce)()
87
87
  ], tuneBlock.prototype, "onChangeSelection", null);
88
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
89
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__.watch)(':click')
88
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
89
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.watch)(':click')
90
90
  ], tuneBlock.prototype, "onClickInBlock", null);
91
91
  return tuneBlock;
92
- }(jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_3__/* .Plugin */ .k));
92
+ }(jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_4__/* .Plugin */ .k));
93
93
 
94
- jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_4__/* .JoditPro */ .A.plugins.add('tune-block', tuneBlock);
94
+ jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_5__/* .JoditPro */ .A.plugins.add('tune-block', tuneBlock);
95
95
 
96
96
 
97
97
  /***/ }),
@@ -99,10 +99,10 @@ jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_4__/* .JoditPro */ .A.plugins.add('
99
99
  /***/ 46217:
100
100
  /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
101
101
 
102
- /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(31635);
103
- /* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6441);
104
- /* harmony import */ var jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22732);
105
- /* harmony import */ var jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(21537);
102
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(31635);
103
+ /* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6441);
104
+ /* harmony import */ var jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(22732);
105
+ /* harmony import */ var jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(21537);
106
106
  /*!
107
107
  * Jodit Editor PRO (https://xdsoft.net/jodit/)
108
108
  * See LICENSE.md in the project root for license information.
@@ -112,7 +112,7 @@ jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_4__/* .JoditPro */ .A.plugins.add('
112
112
 
113
113
 
114
114
 
115
- var common = ['tune.up', 'tune.remove', 'tune.down'], header = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__spreadArray */ .fX)([
115
+ var common = ['tune.up', 'tune.remove', 'tune.down'], header = (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__spreadArray */ .fX)([
116
116
  'tune.h1',
117
117
  'tune.h2',
118
118
  'tune.h3',
@@ -121,15 +121,15 @@ var common = ['tune.up', 'tune.remove', 'tune.down'], header = (0,tslib__WEBPACK
121
121
  'tune.h5',
122
122
  'tune.h6',
123
123
  '\n'
124
- ], (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__read */ .zs)(common), false);
125
- jodit_esm_config__WEBPACK_IMPORTED_MODULE_0__/* .Config */ .T.prototype.tuneBlock = {
124
+ ], (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__read */ .zs)(common), false);
125
+ jodit_esm_config__WEBPACK_IMPORTED_MODULE_1__/* .Config */ .T.prototype.tuneBlock = {
126
126
  popup: {
127
127
  p: common,
128
128
  table: common,
129
129
  img: common,
130
130
  blockquote: common,
131
131
  div: common,
132
- pre: (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__spreadArray */ .fX)(['tune.editPre'], (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__read */ .zs)(common), false),
132
+ pre: (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__spreadArray */ .fX)(['tune.editPre'], (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__read */ .zs)(common), false),
133
133
  h1: header,
134
134
  h2: header,
135
135
  h3: header,
@@ -152,7 +152,7 @@ function headerControl(h) {
152
152
  exec: function (editor, target) {
153
153
  if (target) {
154
154
  editor.selection.save();
155
- var header_1 = jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.replace(target, h, editor.createInside);
155
+ var header_1 = jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .J.replace(target, h, editor.createInside);
156
156
  editor.selection.restore();
157
157
  editor.e.fire('synchro');
158
158
  editor.e.fire('afterExecTune.tune', header_1);
@@ -173,7 +173,7 @@ function moveTo(up) {
173
173
  var siblingNode = target === null || target === void 0 ? void 0 : target[sibling];
174
174
  if (target && siblingNode) {
175
175
  editor.selection.save();
176
- (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_2__.call)(up ? jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.before : jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.after, siblingNode, target);
176
+ (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_3__.call)(up ? jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .J.before : jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .J.after, siblingNode, target);
177
177
  editor.selection.restore();
178
178
  }
179
179
  editor.e.fire('synchro');
@@ -182,7 +182,7 @@ function moveTo(up) {
182
182
  }
183
183
  };
184
184
  }
185
- jodit_esm_config__WEBPACK_IMPORTED_MODULE_0__/* .Config */ .T.prototype.controls.tune = {
185
+ jodit_esm_config__WEBPACK_IMPORTED_MODULE_1__/* .Config */ .T.prototype.controls.tune = {
186
186
  h1: headerControl('h1'),
187
187
  h2: headerControl('h2'),
188
188
  h3: headerControl('h3'),
@@ -200,7 +200,7 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_0__/* .Config */ .T.prototype.controls
200
200
  remove: {
201
201
  icon: 'bin',
202
202
  exec: function (editor, target) {
203
- jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.safeRemove(target);
203
+ jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .J.safeRemove(target);
204
204
  editor.e.fire('synchro');
205
205
  editor.e.fire('closeTuner.tune');
206
206
  editor.e.fire('hideTuner.tune');
@@ -217,12 +217,12 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_0__/* .Config */ .T.prototype.controls
217
217
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
218
218
  /* harmony export */ f: function() { return /* binding */ UITuner; }
219
219
  /* harmony export */ });
220
- /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(31635);
221
- /* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(65478);
222
- /* harmony import */ var jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22732);
223
- /* harmony import */ var jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(21537);
224
- /* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(67510);
225
- /* harmony import */ var jodit_esm_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(21491);
220
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(31635);
221
+ /* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(65478);
222
+ /* harmony import */ var jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(22732);
223
+ /* harmony import */ var jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(21537);
224
+ /* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(67510);
225
+ /* harmony import */ var jodit_esm_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(21491);
226
226
  /*!
227
227
  * Jodit Editor PRO (https://xdsoft.net/jodit/)
228
228
  * See LICENSE.md in the project root for license information.
@@ -236,12 +236,12 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_0__/* .Config */ .T.prototype.controls
236
236
 
237
237
 
238
238
  var UITuner = /** @class */ (function (_super) {
239
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__extends */ .C6)(UITuner, _super);
239
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__extends */ .C6)(UITuner, _super);
240
240
  function UITuner() {
241
- var _this = _super.apply(this, (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__spreadArray */ .fX)([], (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__read */ .zs)(arguments), false)) || this;
241
+ var _this = _super.apply(this, (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__spreadArray */ .fX)([], (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__read */ .zs)(arguments), false)) || this;
242
242
  _this.isShown = false;
243
- _this.toolbar = (0,jodit_esm_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_4__/* .makeCollection */ .$K)(_this.j, _this);
244
- _this.popup = new jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_3__/* .Popup */ .zD(_this.j, false);
243
+ _this.toolbar = (0,jodit_esm_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__/* .makeCollection */ .$K)(_this.j, _this);
244
+ _this.popup = new jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__/* .Popup */ .zD(_this.j, false);
245
245
  return _this;
246
246
  }
247
247
  UITuner.prototype.className = function () {
@@ -259,9 +259,9 @@ var UITuner = /** @class */ (function (_super) {
259
259
  if (!target) {
260
260
  return this.hide();
261
261
  }
262
- var block = jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.isBlock(target)
262
+ var block = jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .J.isBlock(target)
263
263
  ? target
264
- : jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.closest(target, function (node) {
264
+ : jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .J.closest(target, function (node) {
265
265
  return Boolean(node &&
266
266
  _this.j.o.tuneBlock.popup[node.nodeName.toLowerCase()]);
267
267
  }, this.j.editor);
@@ -284,7 +284,7 @@ var UITuner = /** @class */ (function (_super) {
284
284
  UITuner.prototype.hide = function () {
285
285
  if (this.isShown) {
286
286
  this.isShown = false;
287
- jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.safeRemove(this.container);
287
+ jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .J.safeRemove(this.container);
288
288
  this.closeToolbar();
289
289
  }
290
290
  };
@@ -301,12 +301,12 @@ var UITuner = /** @class */ (function (_super) {
301
301
  */
302
302
  UITuner.prototype.calcPosition = function () {
303
303
  var offset = 15;
304
- var marginLeft = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_2__.css)(this.j.editor, 'marginLeft');
305
- var paddingLeft = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_2__.css)(this.j.editor, 'paddingLeft');
306
- var marginTop = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_2__.css)(this.j.editor, 'marginTop');
304
+ var marginLeft = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_3__.css)(this.j.editor, 'marginLeft');
305
+ var paddingLeft = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_3__.css)(this.j.editor, 'paddingLeft');
306
+ var marginTop = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_3__.css)(this.j.editor, 'marginTop');
307
307
  var left = this.currentBlock.offsetWidth - offset + marginLeft + paddingLeft;
308
308
  var top = this.currentBlock.offsetTop - this.j.editor.scrollTop + marginTop;
309
- (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_2__.css)(this.container, {
309
+ (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_3__.css)(this.container, {
310
310
  transform: "translate3d(".concat(left, "px, ").concat(top, "px, 0)")
311
311
  });
312
312
  if (this.popup.isOpened) {
@@ -346,7 +346,7 @@ var UITuner = /** @class */ (function (_super) {
346
346
  if (!this.popup.isOpened) {
347
347
  var handle_1 = this.getElm('handle');
348
348
  void 0;
349
- this.popup.open(function () { return (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_2__.position)(handle_1); });
349
+ this.popup.open(function () { return (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_3__.position)(handle_1); });
350
350
  }
351
351
  };
352
352
  /**
@@ -359,31 +359,31 @@ var UITuner = /** @class */ (function (_super) {
359
359
  UITuner.prototype.toggleToolbar = function () {
360
360
  this.getMod('opened') ? this.closeToolbar() : this.openToolbar();
361
361
  };
362
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
363
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__.watch)(':hideTuner.tune')
362
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
363
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)(':hideTuner.tune')
364
364
  ], UITuner.prototype, "hide", null);
365
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
366
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__.watch)('j.editor:scroll'),
367
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__.throttle)(10)
365
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
366
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)('j.editor:scroll'),
367
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.throttle)(10)
368
368
  ], UITuner.prototype, "onEditorScroll", null);
369
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
370
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__.watch)(':afterExecTune.tune'),
371
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__.idle)()
369
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
370
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)(':afterExecTune.tune'),
371
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.idle)()
372
372
  ], UITuner.prototype, "onAfterExecTune", null);
373
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
374
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__.watch)('container:click container:mousedown')
373
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
374
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)('container:click container:mousedown')
375
375
  ], UITuner.prototype, "onClickPrevent", null);
376
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
377
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__.watch)('handle:click')
376
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
377
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)('handle:click')
378
378
  ], UITuner.prototype, "onTargetClick", null);
379
- (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
380
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__.watch)(':closeTuner.tune')
379
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
380
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)(':closeTuner.tune')
381
381
  ], UITuner.prototype, "closeToolbar", null);
382
- UITuner = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .Cg)([
383
- jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_0__.component
382
+ UITuner = (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
383
+ jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.component
384
384
  ], UITuner);
385
385
  return UITuner;
386
- }(jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .D$));
386
+ }(jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__/* .UIElement */ .D$));
387
387
 
388
388
 
389
389
 
@@ -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.6.10
4
+ * Version: v4.6.13
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
8
8
 
9
9
 
10
- "use strict";!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 n in o)("object"==typeof exports?exports:t)[n]=o[n]}}(self,(function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[576],{1233:function(t,e,o){o.r(e),o.d(e,{tuneBlock:function(){return u}});var n=o(31635),i=(o(46217),o(72193)),r=o(65478),s=o(50911),c=o(34013),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return(0,n.C6)(e,t),e.prototype.afterInit=function(t){this.tuner=new i.f(t)},e.prototype.hideTuner=function(){this.tuner.hide()},e.prototype.onChangeSelection=function(){this.j.s.isCollapsed()||this.hideTuner()},e.prototype.onClickInBlock=function(t){this.j.s.isCollapsed()&&this.tuner.show()},e.prototype.beforeDestruct=function(t){this.tuner.destruct()},e.requires=["license"],(0,n.Cg)([(0,r.watch)(":outsideClick :keydown")],e.prototype,"hideTuner",null),(0,n.Cg)([(0,r.watch)("j.ed:selectionchange"),(0,r.debounce)()],e.prototype,"onChangeSelection",null),(0,n.Cg)([(0,r.watch)(":click")],e.prototype,"onClickInBlock",null),e}(s.k);c.A.plugins.add("tune-block",u)},46217:function(t,e,o){var n=o(31635),i=o(6441),r=o(22732),s=o(21537),c=["tune.up","tune.remove","tune.down"],u=(0,n.fX)(["tune.h1","tune.h2","tune.h3","\n","tune.h4","tune.h5","tune.h6","\n"],(0,n.zs)(c),!1);function p(t){return{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><text dominant-baseline="text-before-edge" style="font: 45px sans-serif" x="0" y="0">'+t.toUpperCase()+"</text></svg>",isActive:function(e,o){var n;return(null===(n=null==o?void 0:o.target)||void 0===n?void 0:n.tagName.toLowerCase())===t},exec:function(e,o){if(o){e.selection.save();var n=r.J.replace(o,t,e.createInside);e.selection.restore(),e.e.fire("synchro"),e.e.fire("afterExecTune.tune",n)}return!0}}}function l(t){var e=t?"previousSibling":"nextSibling";return{icon:t?"angle-up":"angle-down",isDisabled:function(t,o){var n;return!(null===(n=null==o?void 0:o.target)||void 0===n?void 0:n[e])},exec:function(o,n){var i=null==n?void 0:n[e];return n&&i&&(o.selection.save(),(0,s.call)(t?r.J.before:r.J.after,i,n),o.selection.restore()),o.e.fire("synchro"),o.e.fire("afterExecTune.tune"),!0}}}i.T.prototype.tuneBlock={popup:{p:c,table:c,img:c,blockquote:c,div:c,pre:(0,n.fX)(["tune.editPre"],(0,n.zs)(c),!1),h1:u,h2:u,h3:u,h4:u,h5:u,h6:u}},i.T.prototype.controls.tune={h1:p("h1"),h2:p("h2"),h3:p("h3"),h4:p("h4"),h5:p("h5"),h6:p("h6"),up:l(!0),down:l(!1),editPre:{icon:"pencil",exec:function(t,e){t.e.fire("editPreInPasteCode",e)}},remove:{icon:"bin",exec:function(t,e){r.J.safeRemove(e),t.e.fire("synchro"),t.e.fire("closeTuner.tune"),t.e.fire("hideTuner.tune")}}}},72193:function(t,e,o){o.d(e,{f:function(){return p}});var n=o(31635),i=o(65478),r=o(22732),s=o(21537),c=o(67510),u=o(21491),p=function(t){function e(){var e=t.apply(this,(0,n.fX)([],(0,n.zs)(arguments),!1))||this;return e.isShown=!1,e.toolbar=(0,u.$K)(e.j,e),e.popup=new c.zD(e.j,!1),e}return(0,n.C6)(e,t),e.prototype.className=function(){return"UITuner"},e.prototype.render=function(){return"<div>\n\t\t\t<div class='&__handle' title='~Click to tune~'/>\n\t\t</div>"},e.prototype.show=function(){var t=this,e=this.j.s.current();if(!e)return this.hide();var o=r.J.isBlock(e)?e:r.J.closest(e,(function(e){return Boolean(e&&t.j.o.tuneBlock.popup[e.nodeName.toLowerCase()])}),this.j.editor);if(!o||o===this.j.editor||!this.j.o.tuneBlock.popup[o.tagName.toLowerCase()])return this.hide();this.currentBlock=o,this.isShown=!0,this.closeToolbar(),this.calcPosition(),this.container.parentNode||this.j.workplace.append(this.container)},e.prototype.hide=function(){this.isShown&&(this.isShown=!1,r.J.safeRemove(this.container),this.closeToolbar())},e.prototype.onEditorScroll=function(){this.isShown&&this.calcPosition()},e.prototype.calcPosition=function(){var t=(0,s.css)(this.j.editor,"marginLeft"),e=(0,s.css)(this.j.editor,"paddingLeft"),o=(0,s.css)(this.j.editor,"marginTop"),n=this.currentBlock.offsetTop-this.j.editor.scrollTop+o;(0,s.css)(this.container,{transform:"translate3d(".concat(this.currentBlock.offsetWidth-15+t+e,"px, ").concat(n,"px, 0)")}),this.popup.isOpened&&this.popup.updatePosition()},e.prototype.onAfterExecTune=function(t){t&&(this.currentBlock=t),this.calcPosition(),this.openToolbar()},e.prototype.onClickPrevent=function(t){t.preventDefault(),t.stopPropagation()},e.prototype.onTargetClick=function(){this.toggleToolbar()},e.prototype.openToolbar=function(){if(this.setMod("opened",!0),this.toolbar.build(this.j.o.tuneBlock.popup[this.currentBlock.tagName.toLowerCase()],this.currentBlock),this.popup.setContent(this.toolbar.container),!this.popup.isOpened){var t=this.getElm("handle");this.popup.open((function(){return(0,s.position)(t)}))}},e.prototype.closeToolbar=function(){this.setMod("opened",!1),this.popup.close()},e.prototype.toggleToolbar=function(){this.getMod("opened")?this.closeToolbar():this.openToolbar()},(0,n.Cg)([(0,i.watch)(":hideTuner.tune")],e.prototype,"hide",null),(0,n.Cg)([(0,i.watch)("j.editor:scroll"),(0,i.throttle)(10)],e.prototype,"onEditorScroll",null),(0,n.Cg)([(0,i.watch)(":afterExecTune.tune"),(0,i.idle)()],e.prototype,"onAfterExecTune",null),(0,n.Cg)([(0,i.watch)("container:click container:mousedown")],e.prototype,"onClickPrevent",null),(0,n.Cg)([(0,i.watch)("handle:click")],e.prototype,"onTargetClick",null),(0,n.Cg)([(0,i.watch)(":closeTuner.tune")],e.prototype,"closeToolbar",null),(0,n.Cg)([i.component],e)}(c.D$)}},function(t){return t(t.s=1233)}])}));
10
+ "use strict";!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 n in o)("object"==typeof exports?exports:t)[n]=o[n]}}(self,function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[576],{1233:function(t,e,o){o.r(e),o.d(e,{tuneBlock:function(){return u}});var n=o(31635),i=(o(46217),o(72193)),r=o(65478),s=o(50911),c=o(34013),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return(0,n.C6)(e,t),e.prototype.afterInit=function(t){this.tuner=new i.f(t)},e.prototype.hideTuner=function(){this.tuner.hide()},e.prototype.onChangeSelection=function(){this.j.s.isCollapsed()||this.hideTuner()},e.prototype.onClickInBlock=function(t){this.j.s.isCollapsed()&&this.tuner.show()},e.prototype.beforeDestruct=function(t){this.tuner.destruct()},e.requires=["license"],(0,n.Cg)([(0,r.watch)(":outsideClick :keydown")],e.prototype,"hideTuner",null),(0,n.Cg)([(0,r.watch)("j.ed:selectionchange"),(0,r.debounce)()],e.prototype,"onChangeSelection",null),(0,n.Cg)([(0,r.watch)(":click")],e.prototype,"onClickInBlock",null),e}(s.k);c.A.plugins.add("tune-block",u)},46217:function(t,e,o){var n=o(31635),i=o(6441),r=o(22732),s=o(21537),c=["tune.up","tune.remove","tune.down"],u=(0,n.fX)(["tune.h1","tune.h2","tune.h3","\n","tune.h4","tune.h5","tune.h6","\n"],(0,n.zs)(c),!1);function p(t){return{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><text dominant-baseline="text-before-edge" style="font: 45px sans-serif" x="0" y="0">'+t.toUpperCase()+"</text></svg>",isActive:function(e,o){var n;return(null===(n=null==o?void 0:o.target)||void 0===n?void 0:n.tagName.toLowerCase())===t},exec:function(e,o){if(o){e.selection.save();var n=r.J.replace(o,t,e.createInside);e.selection.restore(),e.e.fire("synchro"),e.e.fire("afterExecTune.tune",n)}return!0}}}function l(t){var e=t?"previousSibling":"nextSibling";return{icon:t?"angle-up":"angle-down",isDisabled:function(t,o){var n;return!(null===(n=null==o?void 0:o.target)||void 0===n?void 0:n[e])},exec:function(o,n){var i=null==n?void 0:n[e];return n&&i&&(o.selection.save(),(0,s.call)(t?r.J.before:r.J.after,i,n),o.selection.restore()),o.e.fire("synchro"),o.e.fire("afterExecTune.tune"),!0}}}i.T.prototype.tuneBlock={popup:{p:c,table:c,img:c,blockquote:c,div:c,pre:(0,n.fX)(["tune.editPre"],(0,n.zs)(c),!1),h1:u,h2:u,h3:u,h4:u,h5:u,h6:u}},i.T.prototype.controls.tune={h1:p("h1"),h2:p("h2"),h3:p("h3"),h4:p("h4"),h5:p("h5"),h6:p("h6"),up:l(!0),down:l(!1),editPre:{icon:"pencil",exec:function(t,e){t.e.fire("editPreInPasteCode",e)}},remove:{icon:"bin",exec:function(t,e){r.J.safeRemove(e),t.e.fire("synchro"),t.e.fire("closeTuner.tune"),t.e.fire("hideTuner.tune")}}}},72193:function(t,e,o){o.d(e,{f:function(){return p}});var n=o(31635),i=o(65478),r=o(22732),s=o(21537),c=o(67510),u=o(21491),p=function(t){function e(){var e=t.apply(this,(0,n.fX)([],(0,n.zs)(arguments),!1))||this;return e.isShown=!1,e.toolbar=(0,u.$K)(e.j,e),e.popup=new c.zD(e.j,!1),e}return(0,n.C6)(e,t),e.prototype.className=function(){return"UITuner"},e.prototype.render=function(){return"<div>\n\t\t\t<div class='&__handle' title='~Click to tune~'/>\n\t\t</div>"},e.prototype.show=function(){var t=this,e=this.j.s.current();if(!e)return this.hide();var o=r.J.isBlock(e)?e:r.J.closest(e,function(e){return Boolean(e&&t.j.o.tuneBlock.popup[e.nodeName.toLowerCase()])},this.j.editor);if(!o||o===this.j.editor||!this.j.o.tuneBlock.popup[o.tagName.toLowerCase()])return this.hide();this.currentBlock=o,this.isShown=!0,this.closeToolbar(),this.calcPosition(),this.container.parentNode||this.j.workplace.append(this.container)},e.prototype.hide=function(){this.isShown&&(this.isShown=!1,r.J.safeRemove(this.container),this.closeToolbar())},e.prototype.onEditorScroll=function(){this.isShown&&this.calcPosition()},e.prototype.calcPosition=function(){var t=(0,s.css)(this.j.editor,"marginLeft"),e=(0,s.css)(this.j.editor,"paddingLeft"),o=(0,s.css)(this.j.editor,"marginTop"),n=this.currentBlock.offsetTop-this.j.editor.scrollTop+o;(0,s.css)(this.container,{transform:"translate3d(".concat(this.currentBlock.offsetWidth-15+t+e,"px, ").concat(n,"px, 0)")}),this.popup.isOpened&&this.popup.updatePosition()},e.prototype.onAfterExecTune=function(t){t&&(this.currentBlock=t),this.calcPosition(),this.openToolbar()},e.prototype.onClickPrevent=function(t){t.preventDefault(),t.stopPropagation()},e.prototype.onTargetClick=function(){this.toggleToolbar()},e.prototype.openToolbar=function(){if(this.setMod("opened",!0),this.toolbar.build(this.j.o.tuneBlock.popup[this.currentBlock.tagName.toLowerCase()],this.currentBlock),this.popup.setContent(this.toolbar.container),!this.popup.isOpened){var t=this.getElm("handle");this.popup.open(function(){return(0,s.position)(t)})}},e.prototype.closeToolbar=function(){this.setMod("opened",!1),this.popup.close()},e.prototype.toggleToolbar=function(){this.getMod("opened")?this.closeToolbar():this.openToolbar()},(0,n.Cg)([(0,i.watch)(":hideTuner.tune")],e.prototype,"hide",null),(0,n.Cg)([(0,i.watch)("j.editor:scroll"),(0,i.throttle)(10)],e.prototype,"onEditorScroll",null),(0,n.Cg)([(0,i.watch)(":afterExecTune.tune"),(0,i.idle)()],e.prototype,"onAfterExecTune",null),(0,n.Cg)([(0,i.watch)("container:click container:mousedown")],e.prototype,"onClickPrevent",null),(0,n.Cg)([(0,i.watch)("handle:click")],e.prototype,"onTargetClick",null),(0,n.Cg)([(0,i.watch)(":closeTuner.tune")],e.prototype,"closeToolbar",null),(0,n.Cg)([i.component],e)}(c.D$)}},function(t){return t(t.s=1233)}])});
package/esm/index.js CHANGED
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import"./plugins/index.js";import{JoditPro as o}from"./jodit-pro.js";export{JoditPro as Jodit}from"./jodit-pro.js";o.plugins.add("poweredByJodit",(function poweredByJodit(){}));
6
+ import"./plugins/index.js";import{JoditPro as o}from"./jodit-pro.js";export{JoditPro as Jodit}from"./jodit-pro.js";o.plugins.add("poweredByJodit",function poweredByJodit(){});
package/esm/jodit-pro.js CHANGED
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import{APP_VERSION as o,IS_PROD as t,IS_TEST as i}from"jodit/esm/core/constants.js";import{appendScriptAsync as r}from"jodit/esm/core/helpers/utils/append-script.js";import{css as s}from"jodit/esm/core/helpers/utils/css.js";import{Jodit as e}from"jodit/esm/index.js";import"./config.js";export class JoditPro extends e{beforeInitHook(){if(t&&!i&&this.o.loadExternalConfig)return r(this,this.basePath+"config.js")}afterInitHook(){(async()=>{if("normal"!==await this.e.fire("checkReserve",location.host)){if(this.isInDestruct)return;const o='Trial version. Buy <a href="https://xdsoft.net/jodit/pro/">Jodit Pro</a>',r=this.c.div("",o);!i&&t&&console.error(o),s(r,{position:"absolute",color:"red",right:10,bottom:10}),this.addDisclaimer(r)}})().catch((()=>null)),super.afterInitHook()}getVersion(){return"PRO "+o}}
6
+ import{APP_VERSION as o,IS_PROD as t,IS_TEST as i}from"jodit/esm/core/constants.js";import{appendScriptAsync as r}from"jodit/esm/core/helpers/utils/append-script.js";import{css as s}from"jodit/esm/core/helpers/utils/css.js";import{Jodit as e}from"jodit/esm/index.js";import"./config.js";export class JoditPro extends e{beforeInitHook(){if(t&&!i&&this.o.loadExternalConfig)return r(this,this.basePath+"config.js")}afterInitHook(){(async()=>{if("normal"!==await this.e.fire("checkReserve",location.host)){if(this.isInDestruct)return;const o='Trial version. Buy <a href="https://xdsoft.net/jodit/pro/">Jodit Pro</a>',r=this.c.div("",o);!i&&t&&console.error(o),s(r,{position:"absolute",color:"red",right:10,bottom:10}),this.addDisclaimer(r)}})().catch(()=>null),super.afterInitHook()}getVersion(){return"PRO "+o}}
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2025 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,n=i<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(r=e[p])&&(n=(i<3?r(n):i>3?r(t,o,n):r(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n};import{Autocomplete as t}from"./ui/autocomplete.js";import{getTextLeftOfCursor as o,replaceTextLeftOfCursorAfterSpace as s}from"./helpers.js";import{Config as r}from"jodit/esm/config.js";import{KEY_DOWN as i,KEY_ENTER as n,KEY_ESC as p,KEY_TAB as l,KEY_UP as u}from"jodit/esm/core/constants.js";import{autobind as c,debounce as a}from"jodit/esm/core/decorators/index.js";import{Dom as m}from"jodit/esm/core/dom/dom.js";import{isArray as d,isFunction as h,isPromise as f,isString as y,position as j,trim as v}from"jodit/esm/core/helpers/index.js";import{Plugin as w}from"jodit/esm/core/plugin/index.js";import{Popup as g}from"jodit/esm/core/ui/popup/popup.js";import{JoditPro as C}from"../../jodit-pro.js";r.prototype.autocomplete={sources:[],maxItems:50,isMatchedQuery:(e,t)=>0===t.toLowerCase().indexOf(e.toLowerCase()),itemRenderer:e=>{var t;return null!==(t=e.title)&&void 0!==t?t:e.value},insertValueRenderer:e=>e.value+"&nbsp;"};export class autocomplete extends w{constructor(e){super(e),this.hasStyle=!C.fatMode,this.sources=[]}afterInit(e){this.popup=new g(e),this.popup.setMod("padding",!1),this.list=new t(e),this.popup.setContent(this.list.container),e.e.on("select.autocomplete",(t=>{let o=t.value;h(t.insertValueRenderer)&&(o=t.insertValueRenderer(t)),m.isNode(o)||(o=e.createInside.fromHTML(o)),s(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===i||e===u||e===n||e===l}async onKeyDown(e){var t,s;if(e.key===p)return void(this.popup.isOpened&&this.popup.close());const{s:r}=this.j;if(autocomplete.isControlKey(e.key)||!r.isInsideArea||!r.isCollapsed)return;const i=(null===(t=this.j.s.sel)||void 0===t?void 0:t.rangeCount)?null===(s=this.j.s.sel)||void 0===s?void 0:s.getRangeAt(0):null,n=i&&o(i).split(" ").pop();if(n&&v(n).length){const e=await this.onAutoComplete(n);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 i:this.list.selectNext();break;case u:this.list.selectPrevious();break;case l: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(f(t)&&(t=await t),h(t))s=await t(e);else if(d(t)){const o=t,{isMatchedQuery:r}=this.j.o.autocomplete;s=o.filter((t=>y(t)?r(e,t):r(e,t.value))).map((e=>y(e)?{title:e,value:e}:e))}else s=await this.resolveFeed(e,t.feed,t);if(this.j.isDestructed)return[];if(s&&d(s)){const{itemRenderer:e,insertValueRenderer:t,maxItems:r}=this.j.o.autocomplete;return s=s.map((s=>{var r,i;return{itemRenderer:null!==(r=null==o?void 0:o.itemRenderer)&&void 0!==r?r:e,insertValueRenderer:null!==(i=null==o?void 0:o.insertValueRenderer)&&void 0!==i?i: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=j(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([c],autocomplete.prototype,"registerAutocompleteSource",null),e([a()],autocomplete.prototype,"onKeyDown",null),e([c],autocomplete.prototype,"onKeyControlDown",null),e([c],autocomplete.prototype,"onEnter",null),e([c],autocomplete.prototype,"onAutoComplete",null),e([c],autocomplete.prototype,"resolveFeed",null),C.plugins.add("autocomplete",autocomplete);
6
+ var e=this&&this.__decorate||function(e,t,o,s){var r,i=arguments.length,n=i<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(r=e[p])&&(n=(i<3?r(n):i>3?r(t,o,n):r(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n};import{Autocomplete as t}from"./ui/autocomplete.js";import{getTextLeftOfCursor as o,replaceTextLeftOfCursorAfterSpace as s}from"./helpers.js";import{Config as r}from"jodit/esm/config.js";import{KEY_DOWN as i,KEY_ENTER as n,KEY_ESC as p,KEY_TAB as l,KEY_UP as u}from"jodit/esm/core/constants.js";import{autobind as c,debounce as a}from"jodit/esm/core/decorators/index.js";import{Dom as m}from"jodit/esm/core/dom/dom.js";import{isArray as d,isFunction as h,isPromise as f,isString as y,position as j,trim as v}from"jodit/esm/core/helpers/index.js";import{Plugin as w}from"jodit/esm/core/plugin/index.js";import{Popup as g}from"jodit/esm/core/ui/popup/popup.js";import{JoditPro as C}from"../../jodit-pro.js";r.prototype.autocomplete={sources:[],maxItems:50,isMatchedQuery:(e,t)=>0===t.toLowerCase().indexOf(e.toLowerCase()),itemRenderer:e=>{var t;return null!==(t=e.title)&&void 0!==t?t:e.value},insertValueRenderer:e=>e.value+"&nbsp;"};export class autocomplete extends w{constructor(e){super(e),this.hasStyle=!C.fatMode,this.sources=[]}afterInit(e){this.popup=new g(e),this.popup.setMod("padding",!1),this.list=new t(e),this.popup.setContent(this.list.container),e.e.on("select.autocomplete",t=>{let o=t.value;h(t.insertValueRenderer)&&(o=t.insertValueRenderer(t)),m.isNode(o)||(o=e.createInside.fromHTML(o)),s(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===i||e===u||e===n||e===l}async onKeyDown(e){var t,s;if(e.key===p)return void(this.popup.isOpened&&this.popup.close());const{s:r}=this.j;if(autocomplete.isControlKey(e.key)||!r.isInsideArea||!r.isCollapsed)return;const i=(null===(t=this.j.s.sel)||void 0===t?void 0:t.rangeCount)?null===(s=this.j.s.sel)||void 0===s?void 0:s.getRangeAt(0):null,n=i&&o(i).split(" ").pop();if(n&&v(n).length){const e=await this.onAutoComplete(n);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 i:this.list.selectNext();break;case u:this.list.selectPrevious();break;case l: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(f(t)&&(t=await t),h(t))s=await t(e);else if(d(t)){const o=t,{isMatchedQuery:r}=this.j.o.autocomplete;s=o.filter(t=>y(t)?r(e,t):r(e,t.value)).map(e=>y(e)?{title:e,value:e}:e)}else s=await this.resolveFeed(e,t.feed,t);if(this.j.isDestructed)return[];if(s&&d(s)){const{itemRenderer:e,insertValueRenderer:t,maxItems:r}=this.j.o.autocomplete;return s=s.map(s=>{var r,i;return{itemRenderer:null!==(r=null==o?void 0:o.itemRenderer)&&void 0!==r?r:e,insertValueRenderer:null!==(i=null==o?void 0:o.insertValueRenderer)&&void 0!==i?i: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=j(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([c],autocomplete.prototype,"registerAutocompleteSource",null),e([a()],autocomplete.prototype,"onKeyDown",null),e([c],autocomplete.prototype,"onKeyControlDown",null),e([c],autocomplete.prototype,"onEnter",null),e([c],autocomplete.prototype,"onAutoComplete",null),e([c],autocomplete.prototype,"resolveFeed",null),C.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-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- var e=this&&this.__decorate||function(e,t,n,o){var r,i=arguments.length,c=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,n,o);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(c=(i<3?r(c):i>3?r(t,n,c):r(t,n))||c);return i>3&&c&&Object.defineProperty(t,n,c),c};import{AutocompleteItem as t}from"./item.js";import{component as n,watch as o}from"jodit/esm/core/decorators/index.js";import{UIGroup as r}from"jodit/esm/core/ui/group/group.js";let i=class Autocomplete extends r{constructor(){super(...arguments),this.elements=[],this.currentSelection=-1}className(){return"Autocomplete"}onChangeSelection(e,t){var n;null!=t&&(null===(n=this.elements[t])||void 0===n||n.setMod("active",!1)),this.elements[this.currentSelection].setMod("active",!0),this.elements[this.currentSelection].container.scrollIntoView(!1)}build(e){this.clear(),e.forEach(((e,n)=>{const o=new t(this.jodit,e);this.j.e.on(o.container,"mousedown touchstart",(e=>{e.preventDefault()})).on(o.container,"click",(()=>{this.currentSelection=n,this.select()})),this.append(o)})),this.currentSelection=0,this.onChangeSelection()}selectNext(){this.currentSelection+1<=this.elements.length-1?this.currentSelection+=1:this.currentSelection=0}selectPrevious(){this.currentSelection-1>=0?this.currentSelection-=1:this.currentSelection=this.elements.length-1}select(){this.j.e.fire("select.autocomplete",this.elements[this.currentSelection].item)}};e([o("currentSelection")],i.prototype,"onChangeSelection",null),i=e([n],i);export{i as Autocomplete};
6
+ var e=this&&this.__decorate||function(e,t,n,o){var r,i=arguments.length,c=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,n,o);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(c=(i<3?r(c):i>3?r(t,n,c):r(t,n))||c);return i>3&&c&&Object.defineProperty(t,n,c),c};import{AutocompleteItem as t}from"./item.js";import{component as n,watch as o}from"jodit/esm/core/decorators/index.js";import{UIGroup as r}from"jodit/esm/core/ui/group/group.js";let i=class Autocomplete extends r{constructor(){super(...arguments),this.elements=[],this.currentSelection=-1}className(){return"Autocomplete"}onChangeSelection(e,t){var n;null!=t&&(null===(n=this.elements[t])||void 0===n||n.setMod("active",!1)),this.elements[this.currentSelection].setMod("active",!0),this.elements[this.currentSelection].container.scrollIntoView(!1)}build(e){this.clear(),e.forEach((e,n)=>{const o=new t(this.jodit,e);this.j.e.on(o.container,"mousedown touchstart",e=>{e.preventDefault()}).on(o.container,"click",()=>{this.currentSelection=n,this.select()}),this.append(o)}),this.currentSelection=0,this.onChangeSelection()}selectNext(){this.currentSelection+1<=this.elements.length-1?this.currentSelection+=1:this.currentSelection=0}selectPrevious(){this.currentSelection-1>=0?this.currentSelection-=1:this.currentSelection=this.elements.length-1}select(){this.j.e.fire("select.autocomplete",this.elements[this.currentSelection].item)}};e([o("currentSelection")],i.prototype,"onChangeSelection",null),i=e([n],i);export{i as Autocomplete};
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- var t=this&&this.__decorate||function(t,e,o,i){var s,a=arguments.length,n=a<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,o,i);else for(var r=t.length-1;r>=0;r--)(s=t[r])&&(n=(a<3?s(n):a>3?s(e,o,n):s(e,o))||n);return a>3&&n&&Object.defineProperty(e,o,n),n};import"./config.js";import{DefaultStorage as e}from"./modules/store.js";import{UIBackupBox as o}from"./ui/box.js";import{autobind as i}from"jodit/esm/core/decorators/index.js";import{Plugin as s}from"jodit/esm/core/plugin/index.js";import{Button as a,UIBlock as n}from"jodit/esm/core/ui/index.js";import{JoditPro as r}from"../../jodit-pro.js";export class backup extends s{constructor(){var t;super(...arguments),this.hasStyle=!r.fatMode,this.buttons=[{name:"backup.restore",group:"history"}],this.__box=new o(this.j),this.__dialog=null,this.__storage=null!==(t=this.jodit.o.backup.remoteStore)&&void 0!==t?t:new e(this.jodit),this.timeout=0}afterInit(t){t.registerCommand("saveBackup",this.onSaveBackup).registerCommand("openBackupDialog",{exec:this.onOpenBackupDialog,hotkeys:t.o.backup.hotkeys});const startInterval=()=>{this.timeout=t.async.setTimeout((()=>{this.onSaveBackup(),startInterval()}),1e3*t.o.backup.interval)};startInterval(),t.e.on(this.__box,"choose",this.onSelectItem).on(t.ow,"beforeunload.backup",(()=>{this.onSaveBackup()}))}prepareDialog(){this.__dialog||(this.__dialog=this.j.dlg({minWidth:this.j.o.backup.dialogWidth,buttons:["fullsize","dialog.close"]}).setContent(this.__box.container)),this.__dialog.setHeader(this.jodit.i18n("Restore")),this.addButtonsToDialog()}onSaveBackup(){this.__storage.add({created:new Date,html:this.j.value})}async onOpenBackupDialog(){this.prepareDialog();const{__dialog:t}=this;if(!t)return;t.open().setModal(!0);const e=await this.__storage.items();this.__box.build([{created:new Date,html:this.j.value},...e]),t.calcAutoSize(),t.setPosition()}onSelectItem(t){var e;null===(e=this.__dialog)||void 0===e||e.close(),this.j.value=t.html,this.j.s.focus()}addButtonsToDialog(){var t;const{jodit:e}=this,o=a(e,{name:"ok",tabIndex:0,variant:"primary",text:"Ok"}),i=a(e,{variant:"secondary",tabIndex:0,text:"Cancel"}),s=a(e,{name:"clear",tabIndex:0,variant:"secondary",text:"Remove all"});o.onAction((()=>{this.__box.chooseSelected()})),i.onAction((()=>{var t;null===(t=this.__dialog)||void 0===t||t.close()})),s.onAction((()=>{e.confirm("Are you sure?",void 0,(t=>{var e;t&&(this.__storage.clear(),null===(e=this.__dialog)||void 0===e||e.close())}))}));const r=new n(e,[s,i,o]);r.container.style.margin="0",r.container.style.justifyContent="flex-end",r.container.style.width="100%",null===(t=this.__dialog)||void 0===t||t.setFooter(r)}beforeDestruct(){var t;const{j:e}=this;e.async.clearTimeout(this.timeout),e.e.off(this.__box,"choose",this.onSelectItem).off(e.ow,"beforeunload.backup"),this.__box.destruct(),null===(t=this.__dialog)||void 0===t||t.destruct()}}backup.requires=["license"],t([i],backup.prototype,"onSaveBackup",null),t([i],backup.prototype,"onOpenBackupDialog",null),t([i],backup.prototype,"onSelectItem",null),r.plugins.add("backup",backup);
6
+ var t=this&&this.__decorate||function(t,e,o,i){var s,a=arguments.length,n=a<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,o,i);else for(var r=t.length-1;r>=0;r--)(s=t[r])&&(n=(a<3?s(n):a>3?s(e,o,n):s(e,o))||n);return a>3&&n&&Object.defineProperty(e,o,n),n};import"./config.js";import{DefaultStorage as e}from"./modules/store.js";import{UIBackupBox as o}from"./ui/box.js";import{autobind as i}from"jodit/esm/core/decorators/index.js";import{Plugin as s}from"jodit/esm/core/plugin/index.js";import{Button as a,UIBlock as n}from"jodit/esm/core/ui/index.js";import{JoditPro as r}from"../../jodit-pro.js";export class backup extends s{constructor(){var t;super(...arguments),this.hasStyle=!r.fatMode,this.buttons=[{name:"backup.restore",group:"history"}],this.__box=new o(this.j),this.__dialog=null,this.__storage=null!==(t=this.jodit.o.backup.remoteStore)&&void 0!==t?t:new e(this.jodit),this.timeout=0}afterInit(t){t.registerCommand("saveBackup",this.onSaveBackup).registerCommand("openBackupDialog",{exec:this.onOpenBackupDialog,hotkeys:t.o.backup.hotkeys});const startInterval=()=>{this.timeout=t.async.setTimeout(()=>{this.onSaveBackup(),startInterval()},1e3*t.o.backup.interval)};startInterval(),t.e.on(this.__box,"choose",this.onSelectItem).on(t.ow,"beforeunload.backup",()=>{this.onSaveBackup()})}prepareDialog(){this.__dialog||(this.__dialog=this.j.dlg({minWidth:this.j.o.backup.dialogWidth,buttons:["fullsize","dialog.close"]}).setContent(this.__box.container)),this.__dialog.setHeader(this.jodit.i18n("Restore")),this.addButtonsToDialog()}onSaveBackup(){this.__storage.add({created:new Date,html:this.j.value})}async onOpenBackupDialog(){this.prepareDialog();const{__dialog:t}=this;if(!t)return;t.open().setModal(!0);const e=await this.__storage.items();this.__box.build([{created:new Date,html:this.j.value},...e]),t.calcAutoSize(),t.setPosition()}onSelectItem(t){var e;null===(e=this.__dialog)||void 0===e||e.close(),this.j.value=t.html,this.j.s.focus()}addButtonsToDialog(){var t;const{jodit:e}=this,o=a(e,{name:"ok",tabIndex:0,variant:"primary",text:"Ok"}),i=a(e,{variant:"secondary",tabIndex:0,text:"Cancel"}),s=a(e,{name:"clear",tabIndex:0,variant:"secondary",text:"Remove all"});o.onAction(()=>{this.__box.chooseSelected()}),i.onAction(()=>{var t;null===(t=this.__dialog)||void 0===t||t.close()}),s.onAction(()=>{e.confirm("Are you sure?",void 0,t=>{var e;t&&(this.__storage.clear(),null===(e=this.__dialog)||void 0===e||e.close())})});const r=new n(e,[s,i,o]);r.container.style.margin="0",r.container.style.justifyContent="flex-end",r.container.style.width="100%",null===(t=this.__dialog)||void 0===t||t.setFooter(r)}beforeDestruct(){var t;const{j:e}=this;e.async.clearTimeout(this.timeout),e.e.off(this.__box,"choose",this.onSelectItem).off(e.ow,"beforeunload.backup"),this.__box.destruct(),null===(t=this.__dialog)||void 0===t||t.destruct()}}backup.requires=["license"],t([i],backup.prototype,"onSaveBackup",null),t([i],backup.prototype,"onOpenBackupDialog",null),t([i],backup.prototype,"onSelectItem",null),r.plugins.add("backup",backup);
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- export class DefaultStorage{constructor(t){this.jodit=t,this.key="backup.default.storage"}async add(t){if(!t.html.trim().length)return!1;const e=this.jodit.storage.get(this.key)||[];return e.find((e=>e.html===t.html))||(e.unshift(t),e.length>this.jodit.o.backup.limit&&(e.length=this.jodit.o.backup.limit),this.jodit.storage.set(this.key,e)),!1}items(){return Promise.resolve(this.jodit.storage.get(this.key)||[])}clear(){return this.jodit.storage.delete(this.key),Promise.resolve(!1)}}
6
+ export class DefaultStorage{constructor(t){this.jodit=t,this.key="backup.default.storage"}async add(t){if(!t.html.trim().length)return!1;const e=this.jodit.storage.get(this.key)||[];return e.find(e=>e.html===t.html)||(e.unshift(t),e.length>this.jodit.o.backup.limit&&(e.length=this.jodit.o.backup.limit),this.jodit.storage.set(this.key,e)),!1}items(){return Promise.resolve(this.jodit.storage.get(this.key)||[])}clear(){return this.jodit.storage.delete(this.key),Promise.resolve(!1)}}
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- var e=this&&this.__decorate||function(e,t,o,n){var i,r=arguments.length,s=r<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,o,n);else for(var c=e.length-1;c>=0;c--)(i=e[c])&&(s=(r<3?i(s):r>3?i(t,o,s):i(t,o))||s);return r>3&&s&&Object.defineProperty(t,o,s),s};import{UIBackupItem as t}from"./item.js";import{KEY_DOWN as o,KEY_ENTER as n,KEY_UP as i}from"jodit/esm/core/constants.js";import{autobind as r,component as s,watch as c}from"jodit/esm/core/decorators/index.js";import{attr as l}from"jodit/esm/core/helpers/index.js";import{UIGroup as h}from"jodit/esm/core/ui/index.js";let a=class UIBackupList extends h{className(){return"UIBackupList"}createContainer(e){const t=super.createContainer(e);return l(t,"tabIndex","-1"),t}constructor(e){super(e),this.elements=[],this.currentSelection=-1,e.e.on(this.container,"keydown",(e=>{switch(e.key){case n:e.preventDefault(),e.stopPropagation(),this.onChoose(this.currentSelection);break;case o:this.selectNext();break;case i:this.selectPrevious()}}))}build(e){this.clear(),e.forEach(((e,o)=>{const n=new t(this.jodit,e);this.append(n),this.j.e.on(n.container,"focus",(()=>this.onSelect(o))).on(n.container,"click",(()=>this.onSelect(o))).on(n.container,"dblclick",(()=>this.onChoose(o)))})),this.currentSelection=0,this.onChangeCurrentSelection(void 0,-1,0)}onChangeCurrentSelection(e,t,o){var n,i,r;null===(n=this.elements[t])||void 0===n||n.setMod("active",!1),null===(i=this.elements[o])||void 0===i||i.setMod("active",!0),null===(r=this.elements[o])||void 0===r||r.focus(),this.j.e.fire(this,"select",this.elements[o].data)}onSelect(e){this.currentSelection=e}onChoose(e){this.j.e.fire(this,"choose",this.elements[null!=e?e:this.currentSelection].data)}selectNext(){this.currentSelection+1<=this.elements.length-1?this.currentSelection+=1:this.currentSelection=0}selectPrevious(){this.currentSelection-1>=0?this.currentSelection-=1:this.currentSelection=this.elements.length-1}};e([c("currentSelection")],a.prototype,"onChangeCurrentSelection",null),e([r],a.prototype,"onSelect",null),e([r],a.prototype,"onChoose",null),a=e([s],a);export{a as UIBackupList};
6
+ var e=this&&this.__decorate||function(e,t,o,n){var i,r=arguments.length,s=r<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,o,n);else for(var c=e.length-1;c>=0;c--)(i=e[c])&&(s=(r<3?i(s):r>3?i(t,o,s):i(t,o))||s);return r>3&&s&&Object.defineProperty(t,o,s),s};import{UIBackupItem as t}from"./item.js";import{KEY_DOWN as o,KEY_ENTER as n,KEY_UP as i}from"jodit/esm/core/constants.js";import{autobind as r,component as s,watch as c}from"jodit/esm/core/decorators/index.js";import{attr as l}from"jodit/esm/core/helpers/index.js";import{UIGroup as h}from"jodit/esm/core/ui/index.js";let a=class UIBackupList extends h{className(){return"UIBackupList"}createContainer(e){const t=super.createContainer(e);return l(t,"tabIndex","-1"),t}constructor(e){super(e),this.elements=[],this.currentSelection=-1,e.e.on(this.container,"keydown",e=>{switch(e.key){case n:e.preventDefault(),e.stopPropagation(),this.onChoose(this.currentSelection);break;case o:this.selectNext();break;case i:this.selectPrevious()}})}build(e){this.clear(),e.forEach((e,o)=>{const n=new t(this.jodit,e);this.append(n),this.j.e.on(n.container,"focus",()=>this.onSelect(o)).on(n.container,"click",()=>this.onSelect(o)).on(n.container,"dblclick",()=>this.onChoose(o))}),this.currentSelection=0,this.onChangeCurrentSelection(void 0,-1,0)}onChangeCurrentSelection(e,t,o){var n,i,r;null===(n=this.elements[t])||void 0===n||n.setMod("active",!1),null===(i=this.elements[o])||void 0===i||i.setMod("active",!0),null===(r=this.elements[o])||void 0===r||r.focus(),this.j.e.fire(this,"select",this.elements[o].data)}onSelect(e){this.currentSelection=e}onChoose(e){this.j.e.fire(this,"choose",this.elements[null!=e?e:this.currentSelection].data)}selectNext(){this.currentSelection+1<=this.elements.length-1?this.currentSelection+=1:this.currentSelection=0}selectPrevious(){this.currentSelection-1>=0?this.currentSelection-=1:this.currentSelection=this.elements.length-1}};e([c("currentSelection")],a.prototype,"onChangeCurrentSelection",null),e([r],a.prototype,"onSelect",null),e([r],a.prototype,"onChoose",null),a=e([s],a);export{a as UIBackupList};
@@ -1 +1 @@
1
- var t=this&&this.__decorate||function(t,e,o,r){var n,i=arguments.length,s=i<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,o,r);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(s=(i<3?n(s):i>3?n(e,o,s):n(e,o))||s);return i>3&&s&&Object.defineProperty(e,o,s),s};import"./config.js";import{UIGButton as e}from"./ui/button/button.js";import{UIButtonGenerator as o}from"./ui/generator/button-generator.js";import{autobind as r,watch as n}from"jodit/esm/core/decorators/index.js";import{Dom as i}from"jodit/esm/core/dom/dom.js";import{Plugin as s}from"jodit/esm/core/plugin/index.js";import{Button as a}from"jodit/esm/core/ui/button/index.js";import{Dialog as l}from"jodit/esm/modules/dialog/dialog.js";import{JoditPro as u}from"../../jodit-pro.js";export class buttonGenerator extends s{constructor(){super(...arguments),this.hasStyle=!u.fatMode,this.buttons=[{group:"form",name:"buttonGenerator"}]}afterInit(t){t.e.on("toggleButtonGenerator",this.toggleButtonGenerator).on("isButtonGeneratorOpened",(()=>{var t;return null===(t=this.__dialog)||void 0===t?void 0:t.isOpened}))}toggleButtonGenerator(t){this.__dialog||(this.__dialog=new l({language:this.j.o.language,theme:this.j.o.theme}),this.__ui=new o(this.__dialog),this.__dialog.setHeader("Button Generator").setContent(this.__ui).setSize(730,700)),t&&!i.isTag(t,new Set(["button","a"]))&&(t=void 0);const r=this.__ui,n=this.__dialog;n.isOpened?n.close():(t&&e.extractStyle(r.state,t),r.target=t,r.update(),n.setFooter([a(n,"cancel","Cancel","default").onAction((()=>n.close())),a(n,"ok",t?"Update":"Insert","primary").onAction((()=>{t||(t=this.j.createInside.element(r.state.href?"a":"button"),this.j.s.insertNode(t,!0,!1)),e.applyStyle(r.state,t),t.className=r.state.className||"",this.jodit.e.fire("synchro"),n.close()}))]).open())}onDblClick(t){i.isTag(t.target,"button")&&this.toggleButtonGenerator(t.target)}beforeDestruct(t){var e;null===(e=this.__dialog)||void 0===e||e.destruct()}}buttonGenerator.requires=["license","color-picker"],t([r],buttonGenerator.prototype,"toggleButtonGenerator",null),t([n(":dblclick")],buttonGenerator.prototype,"onDblClick",null),u.plugins.add("button-generator",buttonGenerator);
1
+ var t=this&&this.__decorate||function(t,e,o,r){var n,i=arguments.length,s=i<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,o,r);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(s=(i<3?n(s):i>3?n(e,o,s):n(e,o))||s);return i>3&&s&&Object.defineProperty(e,o,s),s};import"./config.js";import{UIGButton as e}from"./ui/button/button.js";import{UIButtonGenerator as o}from"./ui/generator/button-generator.js";import{autobind as r,watch as n}from"jodit/esm/core/decorators/index.js";import{Dom as i}from"jodit/esm/core/dom/dom.js";import{Plugin as s}from"jodit/esm/core/plugin/index.js";import{Button as a}from"jodit/esm/core/ui/button/index.js";import{Dialog as l}from"jodit/esm/modules/dialog/dialog.js";import{JoditPro as u}from"../../jodit-pro.js";export class buttonGenerator extends s{constructor(){super(...arguments),this.hasStyle=!u.fatMode,this.buttons=[{group:"form",name:"buttonGenerator"}]}afterInit(t){t.e.on("toggleButtonGenerator",this.toggleButtonGenerator).on("isButtonGeneratorOpened",()=>{var t;return null===(t=this.__dialog)||void 0===t?void 0:t.isOpened})}toggleButtonGenerator(t){this.__dialog||(this.__dialog=new l({language:this.j.o.language,theme:this.j.o.theme}),this.__ui=new o(this.__dialog),this.__dialog.setHeader("Button Generator").setContent(this.__ui).setSize(730,700)),t&&!i.isTag(t,new Set(["button","a"]))&&(t=void 0);const r=this.__ui,n=this.__dialog;n.isOpened?n.close():(t&&e.extractStyle(r.state,t),r.target=t,r.update(),n.setFooter([a(n,"cancel","Cancel","default").onAction(()=>n.close()),a(n,"ok",t?"Update":"Insert","primary").onAction(()=>{t||(t=this.j.createInside.element(r.state.href?"a":"button"),this.j.s.insertNode(t,!0,!1)),e.applyStyle(r.state,t),t.className=r.state.className||"",this.jodit.e.fire("synchro"),n.close()})]).open())}onDblClick(t){i.isTag(t.target,"button")&&this.toggleButtonGenerator(t.target)}beforeDestruct(t){var e;null===(e=this.__dialog)||void 0===e||e.destruct()}}buttonGenerator.requires=["license","color-picker"],t([r],buttonGenerator.prototype,"toggleButtonGenerator",null),t([n(":dblclick")],buttonGenerator.prototype,"onDblClick",null),u.plugins.add("button-generator",buttonGenerator);
@@ -1 +1 @@
1
- var t,o=this&&this.__decorate||function(t,o,e,r){var d,a=arguments.length,n=a<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,o,e,r);else for(var i=t.length-1;i>=0;i--)(d=t[i])&&(n=(a<3?d(n):a>3?d(o,e,n):d(o,e))||n);return a>3&&n&&Object.defineProperty(o,e,n),n};import{component as e,watch as r}from"jodit/esm/core/decorators/index.js";import{css as d}from"jodit/esm/core/helpers/index.js";import{isString as a}from"jodit/esm/core/helpers/checker/index.js";import{assert as n}from"jodit/esm/core/helpers/utils/assert.js";import{UIElement as i}from"jodit/esm/core/ui/index.js";let l=t=class UIGButton extends i{className(){return"UIGButton"}constructor(t,o){super(t),this.style=o,this.__updateStyles()}__updateStyles(){const{style:o}=this,e=this.getElm("button");n(null!=e,"button element does not exist");const r=this.getElm("wrapper");n(null!=r,"wrapper element does not exist"),r.style.backgroundColor=o.previewBgColor,t.applyStyle(o,e)}static applyStyle(t,o){const _=t=>a(t)?t:t+"px";o.innerText=t.text||"css",o.setAttribute("href",t.href),d(o,{background:t.solid?null:`linear-gradient(to bottom, ${t.bgStart} 5%, ${t.bgEnd} 100%)`,backgroundColor:t.bgStart,borderRadius:_(t.borderRadius),border:`${_(t.borderSize)} solid ${t.borderColor}`,display:"inline-block",cursor:"pointer",color:t.fontColor,fontFamily:t.fontFamily,fontSize:_(t.fontSize),fontWeight:t.fontWeight?"bold":null,fontStyle:t.fontItalic?"italic":null,padding:`${_(t.paddingY)} ${_(t.paddingX)}`,textDecoration:"none"}),d(o,{textShadow:t.textShadow?[t.textShadowOffsetX,t.textShadowOffsetY,t.textShadowBlurRadius,t.textShadowColor].map(_).join(" "):null}),d(o,{boxShadow:t.boxShadow?[t.boxShadowInset?"inset":"",t.boxShadowOffsetX,t.boxShadowOffsetY,t.boxShadowBlurRadius,t.boxShadowSpreadRadius,t.boxShadowColor].map(_).join(" "):null})}update(){this.__updateStyles()}render(){return"<div>\n\t\t\t<div class='&__wrapper'>\n\t\t\t\t<button class='&__button'>css</button>\n\t\t\t</div>\n\t\t</div>"}static extractStyle(t,o){var e,r,d,a;const n=(null===(e=o.ownerDocument.defaultView)||void 0===e?void 0:e.getComputedStyle(o))||{},extractShadow=(t,o,e,r)=>{const d=n[e];return!d||["none","inherit","initial","unset"].includes(d)?{[e]:!1}:(d.replace(/,\s/g,",").split(/\s+/).forEach((e=>{if(/[0-9.]+(px|pt|em|%)/.test(e)){const r=t.shift();r&&(o[r]=e)}else"inset"===e?o.boxShadowInset=!0:o[r]=e})),o[e]=!0,o)};Object.assign(t,{text:o.innerText,className:o.className,href:o.getAttribute("href")||"",...(()=>{var t,o;const e={solid:!0,bgStart:null!==(t=n.backgroundColor)&&void 0!==t?t:"#44c767",bgEnd:null!==(o=n.backgroundColor)&&void 0!==o?o:"#44c767"},r=n.backgroundImage;if(r&&/linear-gradient/.test(r)){const t=/linear-gradient\((.+)\s+[0-9]+%,\s+(.+)\s+[0-9]+%\)/.exec(r);t&&(e.solid=!1,e.bgStart=t[1]||e.bgStart,e.bgEnd=t[2]||"#5cbf2a")}return e})(),borderColor:null!==(r=null==n?void 0:n.borderColor)&&void 0!==r?r:"#18ab29",borderRadius:null!==(d=null==n?void 0:n.borderRadius)&&void 0!==d?d:0,borderSize:null!==(a=null==n?void 0:n.borderWidth)&&void 0!==a?a:1,...extractShadow(["boxShadowOffsetX","boxShadowOffsetY","boxShadowBlurRadius","boxShadowSpreadRadius"],{boxShadowBlurRadius:0,boxShadowColor:"#3dc21b",boxShadowInset:!1,boxShadowOffsetX:0,boxShadowOffsetY:0,boxShadowSpreadRadius:0},"boxShadow","boxShadowColor"),fontColor:n.color,fontFamily:n.fontFamily,fontSize:n.fontSize,fontWeight:"bold"===n.fontWeight,fontItalic:"italic"===n.fontStyle,paddingX:n.paddingLeft,paddingY:n.paddingTop,...extractShadow(["textShadowOffsetX","textShadowOffsetY","textShadowBlurRadius"],{textShadowBlurRadius:0,textShadowColor:"#2f6627",textShadowOffsetX:0,textShadowOffsetY:1},"textShadow","textShadowColor")})}};o([r("style")],l.prototype,"__updateStyles",null),l=t=o([e],l);export{l as UIGButton};
1
+ var t,o=this&&this.__decorate||function(t,o,e,r){var d,a=arguments.length,n=a<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,o,e,r);else for(var i=t.length-1;i>=0;i--)(d=t[i])&&(n=(a<3?d(n):a>3?d(o,e,n):d(o,e))||n);return a>3&&n&&Object.defineProperty(o,e,n),n};import{component as e,watch as r}from"jodit/esm/core/decorators/index.js";import{css as d}from"jodit/esm/core/helpers/index.js";import{isString as a}from"jodit/esm/core/helpers/checker/index.js";import{assert as n}from"jodit/esm/core/helpers/utils/assert.js";import{UIElement as i}from"jodit/esm/core/ui/index.js";let l=t=class UIGButton extends i{className(){return"UIGButton"}constructor(t,o){super(t),this.style=o,this.__updateStyles()}__updateStyles(){const{style:o}=this,e=this.getElm("button");n(null!=e,"button element does not exist");const r=this.getElm("wrapper");n(null!=r,"wrapper element does not exist"),r.style.backgroundColor=o.previewBgColor,t.applyStyle(o,e)}static applyStyle(t,o){const _=t=>a(t)?t:t+"px";o.innerText=t.text||"css",o.setAttribute("href",t.href),d(o,{background:t.solid?null:`linear-gradient(to bottom, ${t.bgStart} 5%, ${t.bgEnd} 100%)`,backgroundColor:t.bgStart,borderRadius:_(t.borderRadius),border:`${_(t.borderSize)} solid ${t.borderColor}`,display:"inline-block",cursor:"pointer",color:t.fontColor,fontFamily:t.fontFamily,fontSize:_(t.fontSize),fontWeight:t.fontWeight?"bold":null,fontStyle:t.fontItalic?"italic":null,padding:`${_(t.paddingY)} ${_(t.paddingX)}`,textDecoration:"none"}),d(o,{textShadow:t.textShadow?[t.textShadowOffsetX,t.textShadowOffsetY,t.textShadowBlurRadius,t.textShadowColor].map(_).join(" "):null}),d(o,{boxShadow:t.boxShadow?[t.boxShadowInset?"inset":"",t.boxShadowOffsetX,t.boxShadowOffsetY,t.boxShadowBlurRadius,t.boxShadowSpreadRadius,t.boxShadowColor].map(_).join(" "):null})}update(){this.__updateStyles()}render(){return"<div>\n\t\t\t<div class='&__wrapper'>\n\t\t\t\t<button class='&__button'>css</button>\n\t\t\t</div>\n\t\t</div>"}static extractStyle(t,o){var e,r,d,a;const n=(null===(e=o.ownerDocument.defaultView)||void 0===e?void 0:e.getComputedStyle(o))||{},extractShadow=(t,o,e,r)=>{const d=n[e];return!d||["none","inherit","initial","unset"].includes(d)?{[e]:!1}:(d.replace(/,\s/g,",").split(/\s+/).forEach(e=>{if(/[0-9.]+(px|pt|em|%)/.test(e)){const r=t.shift();r&&(o[r]=e)}else"inset"===e?o.boxShadowInset=!0:o[r]=e}),o[e]=!0,o)};Object.assign(t,{text:o.innerText,className:o.className,href:o.getAttribute("href")||"",...(()=>{var t,o;const e={solid:!0,bgStart:null!==(t=n.backgroundColor)&&void 0!==t?t:"#44c767",bgEnd:null!==(o=n.backgroundColor)&&void 0!==o?o:"#44c767"},r=n.backgroundImage;if(r&&/linear-gradient/.test(r)){const t=/linear-gradient\((.+)\s+[0-9]+%,\s+(.+)\s+[0-9]+%\)/.exec(r);t&&(e.solid=!1,e.bgStart=t[1]||e.bgStart,e.bgEnd=t[2]||"#5cbf2a")}return e})(),borderColor:null!==(r=null==n?void 0:n.borderColor)&&void 0!==r?r:"#18ab29",borderRadius:null!==(d=null==n?void 0:n.borderRadius)&&void 0!==d?d:0,borderSize:null!==(a=null==n?void 0:n.borderWidth)&&void 0!==a?a:1,...extractShadow(["boxShadowOffsetX","boxShadowOffsetY","boxShadowBlurRadius","boxShadowSpreadRadius"],{boxShadowBlurRadius:0,boxShadowColor:"#3dc21b",boxShadowInset:!1,boxShadowOffsetX:0,boxShadowOffsetY:0,boxShadowSpreadRadius:0},"boxShadow","boxShadowColor"),fontColor:n.color,fontFamily:n.fontFamily,fontSize:n.fontSize,fontWeight:"bold"===n.fontWeight,fontItalic:"italic"===n.fontStyle,paddingX:n.paddingLeft,paddingY:n.paddingTop,...extractShadow(["textShadowOffsetX","textShadowOffsetY","textShadowBlurRadius"],{textShadowBlurRadius:0,textShadowColor:"#2f6627",textShadowOffsetX:0,textShadowOffsetY:1},"textShadow","textShadowColor")})}};o([r("style")],l.prototype,"__updateStyles",null),l=t=o([e],l);export{l as UIGButton};
@@ -1 +1 @@
1
- import{Dom as t}from"jodit/esm/core/dom/dom.js";import{toArray as e}from"jodit/esm/core/helpers/array/to-array.js";import{assert as n}from"jodit/esm/core/helpers/utils/assert.js";import{UIElement as a,UIInput as i,UISelect as o}from"jodit/esm/core/ui/index.js";import{UIRange as s}from"../../../../core/ui/form/range/range.js";export class UIFormButtonGenerator extends a{className(){return"UIFormButtonGenerator"}constructor(n,a,r){super(n),this.state=a,this.updateState=r,this.onUpdates=[];const getOnUpdate=(t,e)=>()=>{let n=this.state[e.name];/px/.test(n.toString())&&(n=n.toString().replace(/px/,"")),n.toString()!==t.value&&(t.value=n)};e(this.container.querySelectorAll("input,select")).forEach((n=>{if(t.isTag(n,"select")){const a=new o(this.j,{options:e(n.options).map((t=>({text:t.innerText,value:t.value}))),onChange:t=>{this.updateState(n.name,t)}});return t.replace(n,a.container,this.j.create,!1,!0),void this.onUpdates.push(getOnUpdate(a,n))}if(t.isTag(n,"input"))switch(n.type){case"range":{const e=new s(this.j,{label:n.placeholder,name:n.name,min:parseInt(n.min,0)||0,max:parseInt(n.max,0)||100,onChange:t=>{this.updateState(n.name,parseInt(t,10))}});return t.replace(n,e.container,this.j.create),void this.onUpdates.push(getOnUpdate(e,n))}case"text":{const e=new i(this.j,{placeholder:n.placeholder,name:n.name,onChange:t=>{this.updateState(n.name,t)}});return t.replace(n,e.container,this.j.create),void this.onUpdates.push(getOnUpdate(e,n))}case"checkbox":return n.onchange=()=>this.updateState(n.name,n.checked),void this.onUpdates.push((()=>{n.checked=this.state[n.name]}))}})),this.update()}update(){this.onUpdates.forEach((t=>t()));const t=this.getElm("box-shadow");n(null!=t,"box-shadow does not exists");const e=this.getElm("text-shadow");n(null!=e,"text-shadow does not exists"),t.style.display=this.state.boxShadow?"":"none",e.style.display=this.state.textShadow?"":"none"}render(){return"<div>\n\t\t\t<div class='&__group &__text'>\n\t\t\t\t<div class='&__title'>Text</div>\n\t\t\t\t<div class='&__row'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='text' name='text'/>\n\t\t\t\t\t\t<input type='text' name='className' placeholder='~Class name~'/>\n\t\t\t\t\t\t<input type='text' name='href' placeholder='~URL~'/>\n\t\t\t\t\t\t<select name='fontFamily'>\n \t\t\t\t\t\t\t<option value='Arial'>Arial</option>\n \t\t\t\t\t\t\t<option value='Courier New'>Courier New</option>\n \t\t\t\t\t\t\t<option value='Georgia'>Georgia</option>\n \t\t\t\t\t\t\t<option value='Impact'>Impact</option>\n \t\t\t\t\t\t\t<option value='Times New Roman'>Times New Roman</option>\n \t\t\t\t\t\t\t<option value='Trebuchet MS'>Trebuchet MS</option>\n \t\t\t\t\t\t\t<option value='Verdana'>Verdana</option>\n\t\t\t\t\t\t</select>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' min='8' max='28' name='fontSize' placeholder='~Font Size~'/>\n\t\t\t\t\t\t<div class='&__checkboxes'>\n\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t<input type='checkbox' name='fontWeight'/> bold\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t<input type='checkbox' name='fontItalic'/> italic\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class='&__group &__sizes'>\n\t\t\t\t<div class='&__title'>~Size~</div>\n\t\t\t\t<div class='&__row'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='paddingX' min='0' max='32' placeholder='~Vertical size~'/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='paddingY' min='0' max='76' placeholder='~Horizontal size~'/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class='&__group &__borders'>\n\t\t\t\t<div class='&__title'>~Border~</div>\n\t\t\t\t<div class='&__row'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='borderRadius' min='0' max='42' placeholder='~Border Radius~'/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='borderSize' min='0' max='12' placeholder='~Border Size~'/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class='&__group'>\n\t\t\t\t<div class='&__title'>~Box Shadow~ <input type='checkbox' name='boxShadow'/></div>\n\t\t\t\t<div class='&__row &__box-shadow'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='boxShadowOffsetX' min='-50' max='50' placeholder='~Vertical Position~'/>\n\t\t\t\t\t\t<input type='range' name='boxShadowBlurRadius' min='0' max='50' placeholder='~Blur Radius~'/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='boxShadowOffsetY' min='-50' max='50' placeholder='~Horizontal Position~'/>\n\t\t\t\t\t\t<input type='range' name='boxShadowSpreadRadius' min='-50' max='50' placeholder='~Spread Radius~'/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class='&__group'>\n\t\t\t\t<div class='&__title'>~Text Shadow~ <input type='checkbox' name='textShadow'/></div>\n\t\t\t\t<div class='&__row &__text-shadow'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='textShadowOffsetX' min='-50' max='50' placeholder='~Vertical Position~'/>\n\t\t\t\t\t\t<input type='range' name='textShadowBlurRadius' min='0' max='50' placeholder='~Blur Radius~'/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='textShadowOffsetY' min='-50' max='50' placeholder='~Horizontal Position~'/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>"}}
1
+ import{Dom as t}from"jodit/esm/core/dom/dom.js";import{toArray as e}from"jodit/esm/core/helpers/array/to-array.js";import{assert as n}from"jodit/esm/core/helpers/utils/assert.js";import{UIElement as a,UIInput as i,UISelect as o}from"jodit/esm/core/ui/index.js";import{UIRange as s}from"../../../../core/ui/form/range/range.js";export class UIFormButtonGenerator extends a{className(){return"UIFormButtonGenerator"}constructor(n,a,r){super(n),this.state=a,this.updateState=r,this.onUpdates=[];const getOnUpdate=(t,e)=>()=>{let n=this.state[e.name];/px/.test(n.toString())&&(n=n.toString().replace(/px/,"")),n.toString()!==t.value&&(t.value=n)};e(this.container.querySelectorAll("input,select")).forEach(n=>{if(t.isTag(n,"select")){const a=new o(this.j,{options:e(n.options).map(t=>({text:t.innerText,value:t.value})),onChange:t=>{this.updateState(n.name,t)}});return t.replace(n,a.container,this.j.create,!1,!0),void this.onUpdates.push(getOnUpdate(a,n))}if(t.isTag(n,"input"))switch(n.type){case"range":{const e=new s(this.j,{label:n.placeholder,name:n.name,min:parseInt(n.min,0)||0,max:parseInt(n.max,0)||100,onChange:t=>{this.updateState(n.name,parseInt(t,10))}});return t.replace(n,e.container,this.j.create),void this.onUpdates.push(getOnUpdate(e,n))}case"text":{const e=new i(this.j,{placeholder:n.placeholder,name:n.name,onChange:t=>{this.updateState(n.name,t)}});return t.replace(n,e.container,this.j.create),void this.onUpdates.push(getOnUpdate(e,n))}case"checkbox":return n.onchange=()=>this.updateState(n.name,n.checked),void this.onUpdates.push(()=>{n.checked=this.state[n.name]})}}),this.update()}update(){this.onUpdates.forEach(t=>t());const t=this.getElm("box-shadow");n(null!=t,"box-shadow does not exists");const e=this.getElm("text-shadow");n(null!=e,"text-shadow does not exists"),t.style.display=this.state.boxShadow?"":"none",e.style.display=this.state.textShadow?"":"none"}render(){return"<div>\n\t\t\t<div class='&__group &__text'>\n\t\t\t\t<div class='&__title'>Text</div>\n\t\t\t\t<div class='&__row'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='text' name='text'/>\n\t\t\t\t\t\t<input type='text' name='className' placeholder='~Class name~'/>\n\t\t\t\t\t\t<input type='text' name='href' placeholder='~URL~'/>\n\t\t\t\t\t\t<select name='fontFamily'>\n \t\t\t\t\t\t\t<option value='Arial'>Arial</option>\n \t\t\t\t\t\t\t<option value='Courier New'>Courier New</option>\n \t\t\t\t\t\t\t<option value='Georgia'>Georgia</option>\n \t\t\t\t\t\t\t<option value='Impact'>Impact</option>\n \t\t\t\t\t\t\t<option value='Times New Roman'>Times New Roman</option>\n \t\t\t\t\t\t\t<option value='Trebuchet MS'>Trebuchet MS</option>\n \t\t\t\t\t\t\t<option value='Verdana'>Verdana</option>\n\t\t\t\t\t\t</select>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' min='8' max='28' name='fontSize' placeholder='~Font Size~'/>\n\t\t\t\t\t\t<div class='&__checkboxes'>\n\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t<input type='checkbox' name='fontWeight'/> bold\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t<input type='checkbox' name='fontItalic'/> italic\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class='&__group &__sizes'>\n\t\t\t\t<div class='&__title'>~Size~</div>\n\t\t\t\t<div class='&__row'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='paddingX' min='0' max='32' placeholder='~Vertical size~'/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='paddingY' min='0' max='76' placeholder='~Horizontal size~'/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class='&__group &__borders'>\n\t\t\t\t<div class='&__title'>~Border~</div>\n\t\t\t\t<div class='&__row'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='borderRadius' min='0' max='42' placeholder='~Border Radius~'/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='borderSize' min='0' max='12' placeholder='~Border Size~'/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class='&__group'>\n\t\t\t\t<div class='&__title'>~Box Shadow~ <input type='checkbox' name='boxShadow'/></div>\n\t\t\t\t<div class='&__row &__box-shadow'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='boxShadowOffsetX' min='-50' max='50' placeholder='~Vertical Position~'/>\n\t\t\t\t\t\t<input type='range' name='boxShadowBlurRadius' min='0' max='50' placeholder='~Blur Radius~'/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='boxShadowOffsetY' min='-50' max='50' placeholder='~Horizontal Position~'/>\n\t\t\t\t\t\t<input type='range' name='boxShadowSpreadRadius' min='-50' max='50' placeholder='~Spread Radius~'/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class='&__group'>\n\t\t\t\t<div class='&__title'>~Text Shadow~ <input type='checkbox' name='textShadow'/></div>\n\t\t\t\t<div class='&__row &__text-shadow'>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='textShadowOffsetX' min='-50' max='50' placeholder='~Vertical Position~'/>\n\t\t\t\t\t\t<input type='range' name='textShadowBlurRadius' min='0' max='50' placeholder='~Blur Radius~'/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class='&__col'>\n\t\t\t\t\t\t<input type='range' name='textShadowOffsetY' min='-50' max='50' placeholder='~Horizontal Position~'/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>"}}
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- var t,e=this&&this.__decorate||function(t,e,o,s){var r,i=arguments.length,a=i<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,o,s);else for(var d=t.length-1;d>=0;d--)(r=t[d])&&(a=(i<3?r(a):i>3?r(e,o,a):r(e,o))||a);return i>3&&a&&Object.defineProperty(e,o,a),a};import{autobind as o,component as s}from"jodit/esm/core/decorators/index.js";import{assert as r}from"jodit/esm/core/helpers/utils/assert.js";import{UIElement as i,UIGroup as a}from"jodit/esm/core/ui/index.js";import d from"../../assets/styles.json.js";import{UIGButton as n}from"../button/button.js";import{UIFormButtonGenerator as f}from"../form/form.js";import{UIPreviewButtonGenerator as h}from"../preview/preview.js";let l=t=class UIButtonGenerator extends i{className(){return"UIButtonGenerator"}render(){return"<div>\n\t\t\t<div class='&__generator'>\n\t\t\t\t<div class='&__preview'></div>\n\t\t\t\t<div class='&__form'></div>\n\t\t\t</div>\n\t\t\t<div class='&__library'></div>\n\t\t</div>"}constructor(t){super(t),this.state={text:"",className:"",href:"",bgEnd:"#5cbf2a",bgStart:"#44c767",borderColor:"#18ab29",borderRadius:28,borderSize:1,boxShadow:!1,boxShadowBlurRadius:0,boxShadowColor:"#3dc21b",boxShadowInset:!1,boxShadowOffsetX:0,boxShadowOffsetY:0,boxShadowSpreadRadius:0,fontColor:"#fff",fontFamily:"Arial",fontSize:17,fontStyle:!1,fontWeight:!1,fontItalic:!1,paddingX:31,paddingY:16,previewBgColor:"#f5f5f5",solid:!0,textShadow:!0,textShadowBlurRadius:0,textShadowColor:"#2f6627",textShadowOffsetX:0,textShadowOffsetY:1},this.preview=new h(this.j,this.state,this.updateState),this.form=new f(this.j,this.state,this.updateState),this.generateLibrary();const e=this.getElm("preview");r(null!=e,"preview element does not exists"),e.appendChild(this.preview.container);const o=this.getElm("form");r(null!=o,"form element does not exists"),o.appendChild(this.form.container)}generateLibrary(){const e=new a(this.j);d.map(t.mapKey).forEach((t=>{const o=new n(this.j,t);o.setMod("mode","library"),e.append(o),this.j.e.on(o.container,"click",(()=>{const{text:e}=this.state;Object.assign(this.state,t),Object.assign(this.state,{className:"",text:e}),this.update()}))}));const o=this.getElm("library");r(null!=o,"library element does not exists"),o.appendChild(e.container)}static mapKey(t){return{bgEnd:t.be,bgStart:t.bs,borderColor:t.bc,borderRadius:t.br,borderSize:t.bse,boxShadow:t.bsh,boxShadowBlurRadius:t.bsbr,boxShadowColor:t.bsc,boxShadowInset:t.bsi,boxShadowOffsetX:t.bsox,boxShadowOffsetY:t.bsoy,boxShadowSpreadRadius:t.bssr,fontColor:t.fc,fontFamily:t.ff,fontSize:t.fs,fontStyle:t.fse,fontWeight:t.fw,paddingX:t.px,paddingY:t.py,previewBgColor:t.pbc,solid:t.s,text:t.t,textShadow:t.ts,textShadowBlurRadius:t.tsbr,textShadowColor:t.tsc,textShadowOffsetX:t.tsox,textShadowOffsetY:t.tsoy}}updateState(t,e){this.state[t]=e,this.update()}update(){this.isReady&&(this.form.update(),this.preview.update())}};e([o],l.prototype,"updateState",null),l=t=e([s],l);export{l as UIButtonGenerator};
6
+ var t,e=this&&this.__decorate||function(t,e,o,s){var r,i=arguments.length,a=i<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,o,s);else for(var d=t.length-1;d>=0;d--)(r=t[d])&&(a=(i<3?r(a):i>3?r(e,o,a):r(e,o))||a);return i>3&&a&&Object.defineProperty(e,o,a),a};import{autobind as o,component as s}from"jodit/esm/core/decorators/index.js";import{assert as r}from"jodit/esm/core/helpers/utils/assert.js";import{UIElement as i,UIGroup as a}from"jodit/esm/core/ui/index.js";import d from"../../assets/styles.json.js";import{UIGButton as n}from"../button/button.js";import{UIFormButtonGenerator as f}from"../form/form.js";import{UIPreviewButtonGenerator as h}from"../preview/preview.js";let l=t=class UIButtonGenerator extends i{className(){return"UIButtonGenerator"}render(){return"<div>\n\t\t\t<div class='&__generator'>\n\t\t\t\t<div class='&__preview'></div>\n\t\t\t\t<div class='&__form'></div>\n\t\t\t</div>\n\t\t\t<div class='&__library'></div>\n\t\t</div>"}constructor(t){super(t),this.state={text:"",className:"",href:"",bgEnd:"#5cbf2a",bgStart:"#44c767",borderColor:"#18ab29",borderRadius:28,borderSize:1,boxShadow:!1,boxShadowBlurRadius:0,boxShadowColor:"#3dc21b",boxShadowInset:!1,boxShadowOffsetX:0,boxShadowOffsetY:0,boxShadowSpreadRadius:0,fontColor:"#fff",fontFamily:"Arial",fontSize:17,fontStyle:!1,fontWeight:!1,fontItalic:!1,paddingX:31,paddingY:16,previewBgColor:"#f5f5f5",solid:!0,textShadow:!0,textShadowBlurRadius:0,textShadowColor:"#2f6627",textShadowOffsetX:0,textShadowOffsetY:1},this.preview=new h(this.j,this.state,this.updateState),this.form=new f(this.j,this.state,this.updateState),this.generateLibrary();const e=this.getElm("preview");r(null!=e,"preview element does not exists"),e.appendChild(this.preview.container);const o=this.getElm("form");r(null!=o,"form element does not exists"),o.appendChild(this.form.container)}generateLibrary(){const e=new a(this.j);d.map(t.mapKey).forEach(t=>{const o=new n(this.j,t);o.setMod("mode","library"),e.append(o),this.j.e.on(o.container,"click",()=>{const{text:e}=this.state;Object.assign(this.state,t),Object.assign(this.state,{className:"",text:e}),this.update()})});const o=this.getElm("library");r(null!=o,"library element does not exists"),o.appendChild(e.container)}static mapKey(t){return{bgEnd:t.be,bgStart:t.bs,borderColor:t.bc,borderRadius:t.br,borderSize:t.bse,boxShadow:t.bsh,boxShadowBlurRadius:t.bsbr,boxShadowColor:t.bsc,boxShadowInset:t.bsi,boxShadowOffsetX:t.bsox,boxShadowOffsetY:t.bsoy,boxShadowSpreadRadius:t.bssr,fontColor:t.fc,fontFamily:t.ff,fontSize:t.fs,fontStyle:t.fse,fontWeight:t.fw,paddingX:t.px,paddingY:t.py,previewBgColor:t.pbc,solid:t.s,text:t.t,textShadow:t.ts,textShadowBlurRadius:t.tsbr,textShadowColor:t.tsc,textShadowOffsetX:t.tsox,textShadowOffsetY:t.tsoy}}updateState(t,e){this.state[t]=e,this.update()}update(){this.isReady&&(this.form.update(),this.preview.update())}};e([o],l.prototype,"updateState",null),l=t=e([s],l);export{l as UIButtonGenerator};
@@ -1 +1 @@
1
- var t=this&&this.__decorate||function(t,e,o,s){var r,i=arguments.length,n=i<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,o,s);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(n=(i<3?r(n):i>3?r(e,o,n):r(e,o))||n);return i>3&&n&&Object.defineProperty(e,o,n),n};import{component as e}from"jodit/esm/core/decorators/index.js";import{assert as o}from"jodit/esm/core/helpers/utils/assert.js";import{UIElement as s}from"jodit/esm/core/ui/index.js";import{UIGButton as r}from"../button/button.js";import{ColorInput as i}from"../../../color-picker/ui/input/color-input.js";let n=class UIPreviewButtonGenerator extends s{className(){return"UIPreviewButtonGenerator"}render(){return"<div>\n\t\t\t<div class='&__button'></div>\n\t\t\t<div class='&__colors'></div>\n\t\t</div>"}update(){this.button.update(),this.lockUpdate=!0,this.colors.forEach((t=>{t.value!==this.state[t.state.name]&&(t.value=this.state[t.state.name])})),this.lockUpdate=!1}constructor(t,e,s){super(t),this.state=e,this.updateState=s,this.button=new r(this.j,this.state),this.lockUpdate=!1,this.colors=["bgStart","bgEnd","fontColor","borderColor","boxShadowColor","textShadowColor","previewBgColor"].map((t=>new i(this.j,{name:t,onChange:e=>{this.lockUpdate||("bgEnd"===t&&e!==this.state.bgStart&&this.updateState("solid",!1),this.updateState(t,e))}}).setMod("slim",!0))),this.setMod("mode","default");const n=this.getElm("button");o(null!=n,"button element does not exists"),n.appendChild(this.button.container);const a=this.getElm("colors");o(null!=a,"colors element does not exists"),this.colors.forEach((t=>{a.appendChild(t.container)})),this.update()}};n=t([e],n);export{n as UIPreviewButtonGenerator};
1
+ var t=this&&this.__decorate||function(t,e,o,s){var r,i=arguments.length,n=i<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,o,s);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(n=(i<3?r(n):i>3?r(e,o,n):r(e,o))||n);return i>3&&n&&Object.defineProperty(e,o,n),n};import{component as e}from"jodit/esm/core/decorators/index.js";import{assert as o}from"jodit/esm/core/helpers/utils/assert.js";import{UIElement as s}from"jodit/esm/core/ui/index.js";import{UIGButton as r}from"../button/button.js";import{ColorInput as i}from"../../../color-picker/ui/input/color-input.js";let n=class UIPreviewButtonGenerator extends s{className(){return"UIPreviewButtonGenerator"}render(){return"<div>\n\t\t\t<div class='&__button'></div>\n\t\t\t<div class='&__colors'></div>\n\t\t</div>"}update(){this.button.update(),this.lockUpdate=!0,this.colors.forEach(t=>{t.value!==this.state[t.state.name]&&(t.value=this.state[t.state.name])}),this.lockUpdate=!1}constructor(t,e,s){super(t),this.state=e,this.updateState=s,this.button=new r(this.j,this.state),this.lockUpdate=!1,this.colors=["bgStart","bgEnd","fontColor","borderColor","boxShadowColor","textShadowColor","previewBgColor"].map(t=>new i(this.j,{name:t,onChange:e=>{this.lockUpdate||("bgEnd"===t&&e!==this.state.bgStart&&this.updateState("solid",!1),this.updateState(t,e))}}).setMod("slim",!0)),this.setMod("mode","default");const n=this.getElm("button");o(null!=n,"button element does not exists"),n.appendChild(this.button.container);const a=this.getElm("colors");o(null!=a,"colors element does not exists"),this.colors.forEach(t=>{a.appendChild(t.container)}),this.update()}};n=t([e],n);export{n as UIPreviewButtonGenerator};
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import"./config.js";import{Dom as e}from"jodit/esm/core/dom/dom.js";import{ucfirst as s}from"jodit/esm/core/helpers/string/ucfirst.js";import{Plugin as t}from"jodit/esm/core/plugin/index.js";import{JoditPro as a}from"../../jodit-pro.js";export class changeCase extends t{constructor(){super(...arguments),this.buttons=[{name:"changeCase",group:"font-style"}]}afterInit(s){s.registerCommand("changeCase",{exec:(t,a,r)=>{r=r.toLowerCase();const o=s.s.range,{startContainer:n,startOffset:c}=o;if(s.s.isCollapsed()){const e=s.s.current(!0);e&&e.parentElement&&this.applyCase(r,e.parentElement),o.setStart(n,c),s.s.selectRange(o)}else{const t=o.cloneRange(),a=o.cloneRange(),n=s.createInside.fake(),c=s.createInside.fake();t.collapse(!0),a.collapse(!1),t.insertNode(n),a.insertNode(c),e.between(n,c,(e=>{this.applyCase(r,e)})),o.setStartAfter(n),o.setEndBefore(c),s.s.selectRange(o),e.safeRemove(n),e.safeRemove(c)}}})}applyCase(t,a){if(e.isText(a)){const e=a.nodeValue;e&&(a.nodeValue=(e=>{switch(t){case"lowercase":return e.toLowerCase();case"uppercase":return e.toUpperCase();default:return e.split(" ").map(s).join(" ")}})(e))}else e.each(a,(e=>{this.applyCase(t,e)}))}beforeDestruct(e){}}changeCase.requires=["license"],a.plugins.add("change-case",changeCase);
6
+ import"./config.js";import{Dom as e}from"jodit/esm/core/dom/dom.js";import{ucfirst as s}from"jodit/esm/core/helpers/string/ucfirst.js";import{Plugin as t}from"jodit/esm/core/plugin/index.js";import{JoditPro as a}from"../../jodit-pro.js";export class changeCase extends t{constructor(){super(...arguments),this.buttons=[{name:"changeCase",group:"font-style"}]}afterInit(s){s.registerCommand("changeCase",{exec:(t,a,r)=>{r=r.toLowerCase();const o=s.s.range,{startContainer:n,startOffset:c}=o;if(s.s.isCollapsed()){const e=s.s.current(!0);e&&e.parentElement&&this.applyCase(r,e.parentElement),o.setStart(n,c),s.s.selectRange(o)}else{const t=o.cloneRange(),a=o.cloneRange(),n=s.createInside.fake(),c=s.createInside.fake();t.collapse(!0),a.collapse(!1),t.insertNode(n),a.insertNode(c),e.between(n,c,e=>{this.applyCase(r,e)}),o.setStartAfter(n),o.setEndBefore(c),s.s.selectRange(o),e.safeRemove(n),e.safeRemove(c)}}})}applyCase(t,a){if(e.isText(a)){const e=a.nodeValue;e&&(a.nodeValue=(e=>{switch(t){case"lowercase":return e.toLowerCase();case"uppercase":return e.toUpperCase();default:return e.split(" ").map(s).join(" ")}})(e))}else e.each(a,e=>{this.applyCase(t,e)})}beforeDestruct(e){}}changeCase.requires=["license"],a.plugins.add("change-case",changeCase);
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- var e=this&&this.__decorate||function(e,t,o,s){var i,r=arguments.length,n=r<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,o,s);else for(var l=e.length-1;l>=0;l--)(i=e[l])&&(n=(r<3?i(n):r>3?i(t,o,n):i(t,o))||n);return r>3&&n&&Object.defineProperty(t,o,n),n};import*as t from"a-color-picker";import{KEY_ESC as o}from"jodit/esm/core/constants.js";import{component as s,watch as i}from"jodit/esm/core/decorators/index.js";import{position as r}from"jodit/esm/core/helpers/index.js";import{assert as n}from"jodit/esm/core/helpers/utils/assert.js";import{Button as l,Popup as a,UIInput as c}from"jodit/esm/core/ui/index.js";import{Dialog as h}from"jodit/esm/modules/index.js";let p=class ColorInput extends c{className(){return"ColorInput"}constructor(e,o){super(e,o);const s=new a(e);this.popup=s,this.trigger=l(this.j,"ok");const i=this.getElm("wrapper");n(null!=i,"wrapper element does not exist"),i.appendChild(this.trigger.container),this.trigger.container.classList.add(this.getFullElName("trigger")),this.trigger.onAction((()=>{var e,t;null===(t=(e=this.state).onChange)||void 0===t||t.call(e,this.value),s.close()})),s.setMod("padding",!1).setMod("max-height",!1);const c=this.j.create.div(this.getFullElName("picker")),p=t.createPicker(c,{paletteEditable:!0,showAlpha:!0,palette:"PALETTE_MATERIAL_CHROME"}).on("change",((e,o)=>{this.isFocused||(this.value=t.parseColor(o||"","hex"))}));this.j.e.on(this,"change",(()=>{var e;e=this.value,t.parseColor(e,"hex")!==p.color&&(p.color=this.value)})),s.setContent(c),this.j.e.on(this.nativeInput,"click",(()=>{s.parentElement=this,this.jodit instanceof h&&s.setZIndex(this.jodit.getZIndex()+1),s.open((()=>r(this.container)))})),this.onChangeValue(),this.onChangeSelfValue()}afterSetMode(e,t){"slim"===e&&t&&this.nativeInput.setAttribute("readonly","true")}onChangeSelfValue(){this.nativeInput.style.backgroundColor=this.value}onEscKeyDown(e){var t;e.key===o&&(null===(t=this.popup)||void 0===t||t.close())}};e([i(":change")],p.prototype,"onChangeSelfValue",null),e([i("nativeInput:keydown")],p.prototype,"onEscKeyDown",null),p=e([s],p);export{p as ColorInput};
6
+ var e=this&&this.__decorate||function(e,t,o,s){var i,r=arguments.length,n=r<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,o,s);else for(var l=e.length-1;l>=0;l--)(i=e[l])&&(n=(r<3?i(n):r>3?i(t,o,n):i(t,o))||n);return r>3&&n&&Object.defineProperty(t,o,n),n};import*as t from"a-color-picker";import{KEY_ESC as o}from"jodit/esm/core/constants.js";import{component as s,watch as i}from"jodit/esm/core/decorators/index.js";import{position as r}from"jodit/esm/core/helpers/index.js";import{assert as n}from"jodit/esm/core/helpers/utils/assert.js";import{Button as l,Popup as a,UIInput as c}from"jodit/esm/core/ui/index.js";import{Dialog as h}from"jodit/esm/modules/index.js";let p=class ColorInput extends c{className(){return"ColorInput"}constructor(e,o){super(e,o);const s=new a(e);this.popup=s,this.trigger=l(this.j,"ok");const i=this.getElm("wrapper");n(null!=i,"wrapper element does not exist"),i.appendChild(this.trigger.container),this.trigger.container.classList.add(this.getFullElName("trigger")),this.trigger.onAction(()=>{var e,t;null===(t=(e=this.state).onChange)||void 0===t||t.call(e,this.value),s.close()}),s.setMod("padding",!1).setMod("max-height",!1);const c=this.j.create.div(this.getFullElName("picker")),p=t.createPicker(c,{paletteEditable:!0,showAlpha:!0,palette:"PALETTE_MATERIAL_CHROME"}).on("change",(e,o)=>{this.isFocused||(this.value=t.parseColor(o||"","hex"))});this.j.e.on(this,"change",()=>{var e;e=this.value,t.parseColor(e,"hex")!==p.color&&(p.color=this.value)}),s.setContent(c),this.j.e.on(this.nativeInput,"click",()=>{s.parentElement=this,this.jodit instanceof h&&s.setZIndex(this.jodit.getZIndex()+1),s.open(()=>r(this.container))}),this.onChangeValue(),this.onChangeSelfValue()}afterSetMode(e,t){"slim"===e&&t&&this.nativeInput.setAttribute("readonly","true")}onChangeSelfValue(){this.nativeInput.style.backgroundColor=this.value}onEscKeyDown(e){var t;e.key===o&&(null===(t=this.popup)||void 0===t||t.close())}};e([i(":change")],p.prototype,"onChangeSelfValue",null),e([i("nativeInput:keydown")],p.prototype,"onEscKeyDown",null),p=e([s],p);export{p as ColorInput};
@@ -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"jodit/esm/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{Emoji as o}from"./ui/emoji.js";import e from"./emoji.json.js";import t from"./emoji.svg.js";import{Config as r}from"jodit/esm/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}};