jodit-pro 4.13.5 → 4.13.8

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 (365) hide show
  1. package/es2015/jodit.css +2 -2
  2. package/es2015/jodit.fat.min.css +1 -1
  3. package/es2015/jodit.fat.min.js +22 -22
  4. package/es2015/jodit.js +9 -6
  5. package/es2015/jodit.min.css +1 -1
  6. package/es2015/jodit.min.js +3 -3
  7. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  8. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  9. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  10. package/es2015/plugins/autocomplete/autocomplete.css +1 -1
  11. package/es2015/plugins/autocomplete/autocomplete.js +1 -1
  12. package/es2015/plugins/autocomplete/autocomplete.min.js +1 -1
  13. package/es2015/plugins/backup/backup.css +1 -1
  14. package/es2015/plugins/backup/backup.js +1 -1
  15. package/es2015/plugins/backup/backup.min.js +1 -1
  16. package/es2015/plugins/button-generator/button-generator.css +1 -1
  17. package/es2015/plugins/button-generator/button-generator.js +1 -1
  18. package/es2015/plugins/button-generator/button-generator.min.js +1 -1
  19. package/es2015/plugins/change-case/change-case.js +1 -1
  20. package/es2015/plugins/change-case/change-case.min.js +1 -1
  21. package/es2015/plugins/color-picker/color-picker.css +1 -1
  22. package/es2015/plugins/color-picker/color-picker.js +1 -1
  23. package/es2015/plugins/color-picker/color-picker.min.js +1 -1
  24. package/es2015/plugins/emoji/emoji.css +1 -1
  25. package/es2015/plugins/emoji/emoji.js +1 -1
  26. package/es2015/plugins/emoji/emoji.min.js +1 -1
  27. package/es2015/plugins/export-docs/export-docs.js +1 -1
  28. package/es2015/plugins/export-docs/export-docs.min.js +1 -1
  29. package/es2015/plugins/finder/finder.css +4 -1
  30. package/es2015/plugins/finder/finder.js +513 -112
  31. package/es2015/plugins/finder/finder.min.css +1 -1
  32. package/es2015/plugins/finder/finder.min.js +7 -7
  33. package/es2015/plugins/google-maps/google-maps.css +1 -1
  34. package/es2015/plugins/google-maps/google-maps.js +1 -1
  35. package/es2015/plugins/google-maps/google-maps.min.js +1 -1
  36. package/es2015/plugins/google-search/google-search.js +1 -1
  37. package/es2015/plugins/google-search/google-search.min.js +1 -1
  38. package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
  39. package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
  40. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  41. package/es2015/plugins/iframe-editor/iframe-editor.js +1 -1
  42. package/es2015/plugins/iframe-editor/iframe-editor.min.js +1 -1
  43. package/es2015/plugins/image-editor-pro/image-editor-pro.css +1 -1
  44. package/es2015/plugins/image-editor-pro/image-editor-pro.js +29 -11
  45. package/es2015/plugins/image-editor-pro/image-editor-pro.min.js +2 -2
  46. package/es2015/plugins/keyboard/keyboard.css +1 -1
  47. package/es2015/plugins/keyboard/keyboard.js +1 -1
  48. package/es2015/plugins/keyboard/keyboard.min.js +1 -1
  49. package/es2015/plugins/mobile-view/mobile-view.js +1 -1
  50. package/es2015/plugins/mobile-view/mobile-view.min.js +1 -1
  51. package/es2015/plugins/page-break/page-break.js +1 -1
  52. package/es2015/plugins/page-break/page-break.min.js +1 -1
  53. package/es2015/plugins/paste-code/paste-code.css +1 -1
  54. package/es2015/plugins/paste-code/paste-code.js +1 -1
  55. package/es2015/plugins/paste-code/paste-code.min.js +1 -1
  56. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  57. package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
  58. package/es2015/plugins/show-blocks/show-blocks.js +1 -1
  59. package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
  60. package/es2015/plugins/style/style.css +1 -1
  61. package/es2015/plugins/style/style.js +1 -1
  62. package/es2015/plugins/style/style.min.js +1 -1
  63. package/es2015/plugins/templates/templates.css +1 -1
  64. package/es2015/plugins/templates/templates.js +1 -1
  65. package/es2015/plugins/templates/templates.min.js +1 -1
  66. package/es2015/plugins/todo-list/todo-list.css +1 -1
  67. package/es2015/plugins/todo-list/todo-list.js +1 -1
  68. package/es2015/plugins/todo-list/todo-list.min.js +1 -1
  69. package/es2015/plugins/translate/translate.css +1 -1
  70. package/es2015/plugins/translate/translate.js +1 -1
  71. package/es2015/plugins/translate/translate.min.js +1 -1
  72. package/es2015/plugins/tune-block/tune-block.css +1 -1
  73. package/es2015/plugins/tune-block/tune-block.js +1 -1
  74. package/es2015/plugins/tune-block/tune-block.min.js +1 -1
  75. package/es2018/jodit.fat.min.css +1 -1
  76. package/es2018/jodit.fat.min.js +16 -16
  77. package/es2018/jodit.min.css +1 -1
  78. package/es2018/jodit.min.js +3 -3
  79. package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  80. package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
  81. package/es2018/plugins/backup/backup.min.js +1 -1
  82. package/es2018/plugins/button-generator/button-generator.min.js +1 -1
  83. package/es2018/plugins/change-case/change-case.min.js +1 -1
  84. package/es2018/plugins/color-picker/color-picker.min.js +1 -1
  85. package/es2018/plugins/emoji/emoji.min.js +1 -1
  86. package/es2018/plugins/export-docs/export-docs.min.js +1 -1
  87. package/es2018/plugins/finder/finder.min.css +1 -1
  88. package/es2018/plugins/finder/finder.min.js +13 -13
  89. package/es2018/plugins/google-maps/google-maps.min.js +1 -1
  90. package/es2018/plugins/google-search/google-search.min.js +1 -1
  91. package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
  92. package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
  93. package/es2018/plugins/image-editor-pro/image-editor-pro.min.js +2 -2
  94. package/es2018/plugins/keyboard/keyboard.min.js +1 -1
  95. package/es2018/plugins/mobile-view/mobile-view.min.js +1 -1
  96. package/es2018/plugins/page-break/page-break.min.js +1 -1
  97. package/es2018/plugins/paste-code/paste-code.min.js +1 -1
  98. package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
  99. package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
  100. package/es2018/plugins/style/style.min.js +1 -1
  101. package/es2018/plugins/templates/templates.min.js +1 -1
  102. package/es2018/plugins/todo-list/todo-list.min.js +1 -1
  103. package/es2018/plugins/translate/translate.min.js +1 -1
  104. package/es2018/plugins/tune-block/tune-block.min.js +1 -1
  105. package/es2021/jodit.css +2 -2
  106. package/es2021/jodit.fat.min.css +1 -1
  107. package/es2021/jodit.fat.min.js +19 -19
  108. package/es2021/jodit.js +9 -6
  109. package/es2021/jodit.min.css +1 -1
  110. package/es2021/jodit.min.js +3 -3
  111. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  112. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  113. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  114. package/es2021/plugins/autocomplete/autocomplete.css +1 -1
  115. package/es2021/plugins/autocomplete/autocomplete.js +1 -1
  116. package/es2021/plugins/autocomplete/autocomplete.min.js +1 -1
  117. package/es2021/plugins/backup/backup.css +1 -1
  118. package/es2021/plugins/backup/backup.js +1 -1
  119. package/es2021/plugins/backup/backup.min.js +1 -1
  120. package/es2021/plugins/button-generator/button-generator.css +1 -1
  121. package/es2021/plugins/button-generator/button-generator.js +1 -1
  122. package/es2021/plugins/button-generator/button-generator.min.js +1 -1
  123. package/es2021/plugins/change-case/change-case.js +1 -1
  124. package/es2021/plugins/change-case/change-case.min.js +1 -1
  125. package/es2021/plugins/color-picker/color-picker.css +1 -1
  126. package/es2021/plugins/color-picker/color-picker.js +1 -1
  127. package/es2021/plugins/color-picker/color-picker.min.js +1 -1
  128. package/es2021/plugins/emoji/emoji.css +1 -1
  129. package/es2021/plugins/emoji/emoji.js +1 -1
  130. package/es2021/plugins/emoji/emoji.min.js +1 -1
  131. package/es2021/plugins/export-docs/export-docs.js +1 -1
  132. package/es2021/plugins/export-docs/export-docs.min.js +1 -1
  133. package/es2021/plugins/finder/finder.css +4 -1
  134. package/es2021/plugins/finder/finder.js +511 -112
  135. package/es2021/plugins/finder/finder.min.css +1 -1
  136. package/es2021/plugins/finder/finder.min.js +13 -13
  137. package/es2021/plugins/google-maps/google-maps.css +1 -1
  138. package/es2021/plugins/google-maps/google-maps.js +1 -1
  139. package/es2021/plugins/google-maps/google-maps.min.js +1 -1
  140. package/es2021/plugins/google-search/google-search.js +1 -1
  141. package/es2021/plugins/google-search/google-search.min.js +1 -1
  142. package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
  143. package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
  144. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  145. package/es2021/plugins/iframe-editor/iframe-editor.js +1 -1
  146. package/es2021/plugins/iframe-editor/iframe-editor.min.js +1 -1
  147. package/es2021/plugins/image-editor-pro/image-editor-pro.css +1 -1
  148. package/es2021/plugins/image-editor-pro/image-editor-pro.js +29 -11
  149. package/es2021/plugins/image-editor-pro/image-editor-pro.min.js +4 -4
  150. package/es2021/plugins/keyboard/keyboard.css +1 -1
  151. package/es2021/plugins/keyboard/keyboard.js +1 -1
  152. package/es2021/plugins/keyboard/keyboard.min.js +1 -1
  153. package/es2021/plugins/mobile-view/mobile-view.js +1 -1
  154. package/es2021/plugins/mobile-view/mobile-view.min.js +1 -1
  155. package/es2021/plugins/page-break/page-break.js +1 -1
  156. package/es2021/plugins/page-break/page-break.min.js +1 -1
  157. package/es2021/plugins/paste-code/paste-code.css +1 -1
  158. package/es2021/plugins/paste-code/paste-code.js +1 -1
  159. package/es2021/plugins/paste-code/paste-code.min.js +1 -1
  160. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  161. package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
  162. package/es2021/plugins/show-blocks/show-blocks.js +1 -1
  163. package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
  164. package/es2021/plugins/style/style.css +1 -1
  165. package/es2021/plugins/style/style.js +1 -1
  166. package/es2021/plugins/style/style.min.js +1 -1
  167. package/es2021/plugins/templates/templates.css +1 -1
  168. package/es2021/plugins/templates/templates.js +1 -1
  169. package/es2021/plugins/templates/templates.min.js +1 -1
  170. package/es2021/plugins/todo-list/todo-list.css +1 -1
  171. package/es2021/plugins/todo-list/todo-list.js +1 -1
  172. package/es2021/plugins/todo-list/todo-list.min.js +1 -1
  173. package/es2021/plugins/translate/translate.css +1 -1
  174. package/es2021/plugins/translate/translate.js +1 -1
  175. package/es2021/plugins/translate/translate.min.js +1 -1
  176. package/es2021/plugins/tune-block/tune-block.css +1 -1
  177. package/es2021/plugins/tune-block/tune-block.js +1 -1
  178. package/es2021/plugins/tune-block/tune-block.min.js +1 -1
  179. package/es2021.en/jodit.css +2 -2
  180. package/es2021.en/jodit.fat.min.css +1 -1
  181. package/es2021.en/jodit.fat.min.js +10 -10
  182. package/es2021.en/jodit.js +9 -6
  183. package/es2021.en/jodit.min.css +1 -1
  184. package/es2021.en/jodit.min.js +3 -3
  185. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  186. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  187. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  188. package/es2021.en/plugins/autocomplete/autocomplete.css +1 -1
  189. package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
  190. package/es2021.en/plugins/autocomplete/autocomplete.min.js +1 -1
  191. package/es2021.en/plugins/backup/backup.css +1 -1
  192. package/es2021.en/plugins/backup/backup.js +1 -1
  193. package/es2021.en/plugins/backup/backup.min.js +1 -1
  194. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  195. package/es2021.en/plugins/button-generator/button-generator.js +1 -1
  196. package/es2021.en/plugins/button-generator/button-generator.min.js +1 -1
  197. package/es2021.en/plugins/change-case/change-case.js +1 -1
  198. package/es2021.en/plugins/change-case/change-case.min.js +1 -1
  199. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  200. package/es2021.en/plugins/color-picker/color-picker.js +1 -1
  201. package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
  202. package/es2021.en/plugins/emoji/emoji.css +1 -1
  203. package/es2021.en/plugins/emoji/emoji.js +1 -1
  204. package/es2021.en/plugins/emoji/emoji.min.js +1 -1
  205. package/es2021.en/plugins/export-docs/export-docs.js +1 -1
  206. package/es2021.en/plugins/export-docs/export-docs.min.js +1 -1
  207. package/es2021.en/plugins/finder/finder.css +4 -1
  208. package/es2021.en/plugins/finder/finder.js +491 -110
  209. package/es2021.en/plugins/finder/finder.min.css +1 -1
  210. package/es2021.en/plugins/finder/finder.min.js +13 -13
  211. package/es2021.en/plugins/google-maps/google-maps.css +1 -1
  212. package/es2021.en/plugins/google-maps/google-maps.js +1 -1
  213. package/es2021.en/plugins/google-maps/google-maps.min.js +1 -1
  214. package/es2021.en/plugins/google-search/google-search.js +1 -1
  215. package/es2021.en/plugins/google-search/google-search.min.js +1 -1
  216. package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
  217. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
  218. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  219. package/es2021.en/plugins/iframe-editor/iframe-editor.js +1 -1
  220. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +1 -1
  221. package/es2021.en/plugins/image-editor-pro/image-editor-pro.css +1 -1
  222. package/es2021.en/plugins/image-editor-pro/image-editor-pro.js +29 -11
  223. package/es2021.en/plugins/image-editor-pro/image-editor-pro.min.js +4 -4
  224. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  225. package/es2021.en/plugins/keyboard/keyboard.js +1 -1
  226. package/es2021.en/plugins/keyboard/keyboard.min.js +1 -1
  227. package/es2021.en/plugins/mobile-view/mobile-view.js +1 -1
  228. package/es2021.en/plugins/mobile-view/mobile-view.min.js +1 -1
  229. package/es2021.en/plugins/page-break/page-break.js +1 -1
  230. package/es2021.en/plugins/page-break/page-break.min.js +1 -1
  231. package/es2021.en/plugins/paste-code/paste-code.css +1 -1
  232. package/es2021.en/plugins/paste-code/paste-code.js +1 -1
  233. package/es2021.en/plugins/paste-code/paste-code.min.js +1 -1
  234. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  235. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
  236. package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
  237. package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
  238. package/es2021.en/plugins/style/style.css +1 -1
  239. package/es2021.en/plugins/style/style.js +1 -1
  240. package/es2021.en/plugins/style/style.min.js +1 -1
  241. package/es2021.en/plugins/templates/templates.css +1 -1
  242. package/es2021.en/plugins/templates/templates.js +1 -1
  243. package/es2021.en/plugins/templates/templates.min.js +1 -1
  244. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  245. package/es2021.en/plugins/todo-list/todo-list.js +1 -1
  246. package/es2021.en/plugins/todo-list/todo-list.min.js +1 -1
  247. package/es2021.en/plugins/translate/translate.css +1 -1
  248. package/es2021.en/plugins/translate/translate.js +1 -1
  249. package/es2021.en/plugins/translate/translate.min.js +1 -1
  250. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  251. package/es2021.en/plugins/tune-block/tune-block.js +1 -1
  252. package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
  253. package/es5/jodit.css +3 -3
  254. package/es5/jodit.fat.min.css +1 -1
  255. package/es5/jodit.fat.min.js +2 -2
  256. package/es5/jodit.js +9 -7
  257. package/es5/jodit.min.css +3 -3
  258. package/es5/jodit.min.js +2 -2
  259. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  260. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  261. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  262. package/es5/plugins/autocomplete/autocomplete.css +1 -1
  263. package/es5/plugins/autocomplete/autocomplete.js +1 -1
  264. package/es5/plugins/autocomplete/autocomplete.min.js +1 -1
  265. package/es5/plugins/backup/backup.css +1 -1
  266. package/es5/plugins/backup/backup.js +1 -1
  267. package/es5/plugins/backup/backup.min.js +1 -1
  268. package/es5/plugins/button-generator/button-generator.css +1 -1
  269. package/es5/plugins/button-generator/button-generator.js +1 -1
  270. package/es5/plugins/button-generator/button-generator.min.js +1 -1
  271. package/es5/plugins/change-case/change-case.js +1 -1
  272. package/es5/plugins/change-case/change-case.min.js +1 -1
  273. package/es5/plugins/color-picker/color-picker.css +1 -1
  274. package/es5/plugins/color-picker/color-picker.js +1 -1
  275. package/es5/plugins/color-picker/color-picker.min.js +1 -1
  276. package/es5/plugins/emoji/emoji.css +1 -1
  277. package/es5/plugins/emoji/emoji.js +1 -1
  278. package/es5/plugins/emoji/emoji.min.js +1 -1
  279. package/es5/plugins/export-docs/export-docs.js +1 -1
  280. package/es5/plugins/export-docs/export-docs.min.js +1 -1
  281. package/es5/plugins/finder/finder.css +4 -1
  282. package/es5/plugins/finder/finder.js +701 -116
  283. package/es5/plugins/finder/finder.min.css +1 -1
  284. package/es5/plugins/finder/finder.min.js +2 -2
  285. package/es5/plugins/google-maps/google-maps.css +1 -1
  286. package/es5/plugins/google-maps/google-maps.js +1 -1
  287. package/es5/plugins/google-maps/google-maps.min.js +1 -1
  288. package/es5/plugins/google-search/google-search.js +1 -1
  289. package/es5/plugins/google-search/google-search.min.js +1 -1
  290. package/es5/plugins/highlight-signature/highlight-signature.js +1 -1
  291. package/es5/plugins/highlight-signature/highlight-signature.min.js +1 -1
  292. package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
  293. package/es5/plugins/iframe-editor/iframe-editor.js +1 -1
  294. package/es5/plugins/iframe-editor/iframe-editor.min.js +1 -1
  295. package/es5/plugins/image-editor-pro/image-editor-pro.css +1 -1
  296. package/es5/plugins/image-editor-pro/image-editor-pro.js +30 -12
  297. package/es5/plugins/image-editor-pro/image-editor-pro.min.js +2 -2
  298. package/es5/plugins/keyboard/keyboard.css +1 -1
  299. package/es5/plugins/keyboard/keyboard.js +1 -1
  300. package/es5/plugins/keyboard/keyboard.min.js +1 -1
  301. package/es5/plugins/mobile-view/mobile-view.js +1 -1
  302. package/es5/plugins/mobile-view/mobile-view.min.js +1 -1
  303. package/es5/plugins/page-break/page-break.js +1 -1
  304. package/es5/plugins/page-break/page-break.min.js +1 -1
  305. package/es5/plugins/paste-code/paste-code.css +1 -1
  306. package/es5/plugins/paste-code/paste-code.js +1 -1
  307. package/es5/plugins/paste-code/paste-code.min.js +1 -1
  308. package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
  309. package/es5/plugins/paste-from-word/paste-from-word.min.js +1 -1
  310. package/es5/plugins/show-blocks/show-blocks.js +1 -1
  311. package/es5/plugins/show-blocks/show-blocks.min.js +1 -1
  312. package/es5/plugins/style/style.css +1 -1
  313. package/es5/plugins/style/style.js +1 -1
  314. package/es5/plugins/style/style.min.js +1 -1
  315. package/es5/plugins/templates/templates.css +1 -1
  316. package/es5/plugins/templates/templates.js +1 -1
  317. package/es5/plugins/templates/templates.min.js +1 -1
  318. package/es5/plugins/todo-list/todo-list.css +1 -1
  319. package/es5/plugins/todo-list/todo-list.js +1 -1
  320. package/es5/plugins/todo-list/todo-list.min.js +1 -1
  321. package/es5/plugins/translate/translate.css +1 -1
  322. package/es5/plugins/translate/translate.js +1 -1
  323. package/es5/plugins/translate/translate.min.js +1 -1
  324. package/es5/plugins/tune-block/tune-block.css +1 -1
  325. package/es5/plugins/tune-block/tune-block.js +1 -1
  326. package/es5/plugins/tune-block/tune-block.min.js +1 -1
  327. package/es5/polyfills.fat.min.js +1 -1
  328. package/es5/polyfills.js +1 -1
  329. package/es5/polyfills.min.js +1 -1
  330. package/esm/plugins/finder/browser.d.ts +21 -3
  331. package/esm/plugins/finder/browser.js +1 -1
  332. package/esm/plugins/finder/config.js +1 -1
  333. package/esm/plugins/finder/helpers/context-menu.d.ts +6 -0
  334. package/esm/plugins/finder/helpers/context-menu.js +1 -1
  335. package/esm/plugins/finder/helpers/data-provider.d.ts +26 -0
  336. package/esm/plugins/finder/helpers/data-provider.js +1 -0
  337. package/esm/plugins/finder/helpers/helpers.d.ts +27 -0
  338. package/esm/plugins/finder/helpers/helpers.js +1 -1
  339. package/esm/plugins/finder/helpers/persistent-store.d.ts +13 -8
  340. package/esm/plugins/finder/helpers/persistent-store.js +1 -1
  341. package/esm/plugins/finder/interface.d.ts +24 -1
  342. package/esm/plugins/finder/langs/de.d.ts +9 -0
  343. package/esm/plugins/finder/langs/de.js +1 -1
  344. package/esm/plugins/finder/langs/ru.d.ts +9 -0
  345. package/esm/plugins/finder/langs/ru.js +1 -1
  346. package/esm/plugins/finder/ui/header/header.d.ts +7 -1
  347. package/esm/plugins/finder/ui/header/header.js +1 -1
  348. package/esm/plugins/finder/ui/panel/panel.d.ts +5 -0
  349. package/esm/plugins/finder/ui/panel/panel.js +2 -2
  350. package/esm/plugins/finder/ui/virtual-scroll/virtual-scroll.d.ts +5 -0
  351. package/esm/plugins/finder/ui/virtual-scroll/virtual-scroll.js +2 -2
  352. package/esm/plugins/image-editor-pro/adapter.js +1 -1
  353. package/esm/plugins/image-editor-pro/image-editor-pro.js +1 -1
  354. package/package.json +1 -1
  355. package/types/plugins/finder/browser.d.ts +21 -3
  356. package/types/plugins/finder/helpers/context-menu.d.ts +6 -0
  357. package/types/plugins/finder/helpers/data-provider.d.ts +26 -0
  358. package/types/plugins/finder/helpers/helpers.d.ts +27 -0
  359. package/types/plugins/finder/helpers/persistent-store.d.ts +13 -8
  360. package/types/plugins/finder/interface.d.ts +24 -1
  361. package/types/plugins/finder/langs/de.d.ts +9 -0
  362. package/types/plugins/finder/langs/ru.d.ts +9 -0
  363. package/types/plugins/finder/ui/header/header.d.ts +7 -1
  364. package/types/plugins/finder/ui/panel/panel.d.ts +5 -0
  365. package/types/plugins/finder/ui/virtual-scroll/virtual-scroll.d.ts +5 -0
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
package/es5/polyfills.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.5
4
+ * Version: v4.13.8
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -3,7 +3,7 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import type { CanUndef, IFileBrowserAnswer, IFileBrowserCallBackData, IFileBrowserDataProvider, IFileBrowserItemWrapper, IProgressBar, IUIGroup } from "jodit/esm/types/index";
6
+ import type { CanUndef, IFileBrowserAnswer, IFileBrowserCallBackData, IFileBrowserItemWrapper, IMessages, IProgressBar, IUIGroup } from "jodit/esm/types/index";
7
7
  import "./ui/assets/icons/index";
8
8
  import { ContextMenuManager } from "./helpers/context-menu";
9
9
  import { LoadingManager } from "./helpers/loading-manager";
@@ -12,11 +12,11 @@ import { StateManager } from "./helpers/state-manager";
12
12
  import { UIBrowserPanel } from "./ui/panel/panel";
13
13
  import { Dlgs } from "jodit/esm/core/traits/dlgs";
14
14
  import { Dialog } from "jodit/esm/modules/dialog/index";
15
- import type { IFileBrowserOptionsPro, IFileBrowserPro, IFileBrowserStatePro, IFileBrowserTreeItemPro, IHistoryManager } from "./interface";
15
+ import type { IFileBrowserDataProviderPro, IFileBrowserOptionsPro, IFileBrowserPro, IFileBrowserStatePro, IFileBrowserTreeItemPro, IFinderPasteTarget, IHistoryManager } from "./interface";
16
16
  export interface FileBrowserPro extends Dlgs {
17
17
  }
18
18
  export declare class FileBrowserPro extends Dialog implements IFileBrowserPro {
19
- readonly dataProvider: IFileBrowserDataProvider;
19
+ readonly dataProvider: IFileBrowserDataProviderPro;
20
20
  readonly state: IFileBrowserStatePro & import("jodit/esm/types/index").IObservable;
21
21
  readonly persistent: PersistentStore;
22
22
  loadingManager: LoadingManager;
@@ -47,6 +47,14 @@ export declare class FileBrowserPro extends Dialog implements IFileBrowserPro {
47
47
  constructor(options?: IFileBrowserOptionsPro);
48
48
  /** @override */
49
49
  protected addDisclaimer(elm: HTMLElement): void;
50
+ /**
51
+ * Show status toasts in the lower right corner of the finder window.
52
+ * The default view container of a dialog is a zero-size anchor
53
+ * (`.jodit-dialog`), so messages attached to it appear in a random
54
+ * place of the page instead of inside the finder.
55
+ * @override
56
+ */
57
+ protected getMessageModule(): IMessages;
50
58
  open(callback?: CanUndef<(_: IFileBrowserCallBackData) => void>, onlyImages?: boolean): Promise<void>;
51
59
  /**
52
60
  * Resize handler
@@ -59,6 +67,16 @@ export declare class FileBrowserPro extends Dialog implements IFileBrowserPro {
59
67
  private registerGlobalListeners;
60
68
  private onKeyPress;
61
69
  private removeGlobalListeners;
70
+ protected onCut(folder?: IFileBrowserTreeItemPro): void;
71
+ protected onCopy(folder?: IFileBrowserTreeItemPro): void;
72
+ private __fillClipboard;
73
+ /**
74
+ * The current folder as a paste target (used by the toolbar button and
75
+ * the empty-area context menu)
76
+ */
77
+ getPasteTarget(): IFinderPasteTarget;
78
+ canPaste(target: IFinderPasteTarget): boolean;
79
+ protected onPaste(target: IFinderPasteTarget): void;
62
80
  protected onFileRemove(): void;
63
81
  private __itemsRemove;
64
82
  private __removeFile;
@@ -1 +1 @@
1
- var M=Object.defineProperty;var p=(m,e)=>M(m,"name",{value:e,configurable:!0});var u,i=function(m,e,t,s){var o=arguments.length,n=o<3?e:s===null?s=Object.getOwnPropertyDescriptor(e,t):s,h;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(m,e,t,s);else for(var l=m.length-1;l>=0;l--)(h=m[l])&&(n=(o<3?h(n):o>3?h(e,t,n):h(e,t))||n);return o>3&&n&&Object.defineProperty(e,t,n),n};import"./ui/assets/icons/index.js";import{ContextMenuManager as S}from"./helpers/context-menu.js";import{parentPath as c}from"./helpers/helpers.js";import{HistoryManager as F}from"./helpers/history-manager.js";import{LoadingManager as _}from"./helpers/loading-manager.js";import{PersistentStore as C}from"./helpers/persistent-store.js";import{StateManager as I}from"./helpers/state-manager.js";import{UIBrowserHeader as B}from"./ui/header/header.js";import{UILightBox as O}from"./ui/lightboox/lightbox.js";import{UIBrowserPanel as L}from"./ui/panel/panel.js";import{UIProgress as x}from"./ui/progress/progress.js";import{Config as f}from"jodit/esm/config.js";import{IS_PROD as D,KEY_DELETE as k,KEY_DOWN as b,KEY_ENTER as H,KEY_LEFT as y,KEY_RIGHT as g,KEY_UP as U}from"jodit/esm/core/constants.js";import{autobind as d,cache as K,component as N,derive as z,watch as a}from"jodit/esm/core/decorators/index.js";import{ConfigProto as v,css as T,isAbortError as P,isString as E,isValidName as R}from"jodit/esm/core/helpers/index.js";import{Dlgs as j}from"jodit/esm/core/traits/dlgs.js";import{Dom as W,observable as G}from"jodit/esm/modules/index.js";import{Dialog as Y}from"jodit/esm/modules/dialog/index.js";import{makeDataProvider as A}from"jodit/esm/modules/file-browser/factories.js";import{openImageEditor as J}from"jodit/esm/modules/image-editor/image-editor.js";import{JoditPro as w}from"../../jodit-pro.js";import{license as V}from"../license/license.js";let r=(u=class extends Y{className(){return"FileBrowserPro"}lock(e="any"){return this.container.classList.add("jodit_disabled"),super.lock(e)}unlock(){return this.container.classList.remove("jodit_disabled"),super.unlock()}status(e,t=!(e instanceof Error)){P(e)||(!D&&!E(e)&&console.error(e),this.message.message(E(e)?e:e.message,t?"success":"error",this.options.howLongShowMsg))}errorHandler(e){P(e)||this.status(e instanceof Error?this.i18n(e.message):this.dataProvider.getMessage(e),!1)}get progressbar(){return new x(this,this.stateManager.state)}constructor(e){super(v(Object.assign(e||{},{resizable:!0,draggable:!0,toolbarButtons:e?.toolbarButtons||f.defaultOptions.filebrowser.buttons,buttons:w.atom(["filebrowser.settings","fullsize","dialog.close"])}),f.defaultOptions.filebrowser)),this.dataProvider=A(this,this.options),this.state=G({onSelectCallBack:null,theme:"default",showSideBar:!0,showFavorites:!0,showSettings:!1,showPreview:!1,withFolders:!0,foldersPosition:"bottom",info:"",metaInfo:null,currentPath:"",currentSource:"",currentBaseUrl:"",tree:[],activeElements:[],favorites:[],progress:0,lastSelectedIndex:0,elements:[],messages:[],sources:[],view:"tiles",tileSize:"default",sortBy:"name-asc",filterWord:"",onlyImages:!1}),this.persistent=new C(this,this.state),this.loadingManager=new _(this,this.state),this.stateManager=new I(this.state),this.historyManager=new F(this,this.state),this.contextMenuManager=new S(this),this.header=new B(this,this.options,this.stateManager),this.panel=new L(this,this.stateManager),this.files=this.panel,this.tree=this.panel,V.make(this),!this.persistent.theme&&this.options.theme&&(this.persistent.theme=this.options.theme),this.panel.append(this.progressbar),this.toolbar.setMod("mode","header"),this.setSize(Math.min(this.options.width,screen.width),Math.min(this.options.height,screen.height)).setHeader(this.header),this.onResizeWindow(),this.initUploader(),this.onChangeTheme(),this.fullFillOptions(),this.dataProvider.onProgress(t=>{t===0&&(t=30),this.state.progress=t}),this.e.on("beforeClose",this.removeGlobalListeners),this.e.fire("afterInit"),w.prototype.afterInitHook.call(this)}addDisclaimer(e){this.dialog.appendChild(e)}async open(e=this.o.defaultCallback,t){return this.state.onlyImages=!!t,this.prepareOpening(e),super.open(this.panel.container),this.e.fire("update.filebrowser")}onResizeWindow(){T(this.dialog,{maxWidth:screen.width,minHeight:Math.min(this.options.height,screen.height),minWidth:Math.min(this.options.width,screen.width)})}onChangePath(){const{currentPath:e,currentSource:t}=this.state;this.uploader.setPath(e),this.uploader.setSource(t)}onChangeTheme(){this.setMod("theme",this.state.theme),this.header.setMod("theme",this.state.theme),this.panel.setMod("theme",this.state.theme),this.options.theme=this.state.theme}onToggleSettings(){this.state.showSettings=!this.state.showSettings}prepareOpening(e){this.registerGlobalListeners(),e&&(this.state.onSelectCallBack=t=>{this.close(),e(t)}),this.persistent.syncWithState()}registerGlobalListeners(){this.e.on(this.ow,"keydown",this.onKeyPress)}onKeyPress(e){const{activeElement:t}=this.od;if(!this.state.activeElements.length||!t||!W.isOrContains(this.panel.items.container,t))return;const s=this.state.elements;switch(e.key){case H:return this.onChooseItems();case k:return this.onFileRemove();case g:case y:case b:case U:{const o=e.key===g||e.key===b,n=this.state.lastSelectedIndex;let h;if([g,y].includes(e.key))o?h=s[n+1]?n+1:0:h=s[n-1]?n-1:s.length-1;else{const{countInRow:l}=this.panel;h=Math.round(((n+1)/l+(o?1:-1))*l-1)}return s[h]&&this.stateManager.addActive(s[h],e.shiftKey),!1}}}removeGlobalListeners(){this.e.off(this.ow,"keydown",this.onKeyPress)}onFileRemove(){this.state.activeElements.length&&this.confirm("Are you sure?","Delete",e=>{e&&this.__itemsRemove(this.state.activeElements)}).bindDestruct(this)}__itemsRemove(e){if(!e.length)return Promise.resolve();const t=[];return e.forEach(s=>{var o;t.push(s.type==="folder"?this.__folderRemove(c(s.path),(o=s.name)!==null&&o!==void 0?o:"",s.sourceName):this.__removeFile(s.file||s.name||"",s.sourceName))}),this.state.activeElements.forEach(s=>{this.stateManager.isFavorite(s)&&this.stateManager.toggleFavorite(s)}),this.state.activeElements=[],Promise.allSettled(t).then(()=>Promise.allSettled([this.loadingManager.loadItems(),this.loadingManager.loadFolders()]))}__removeFile(e,t){return this.dataProvider.fileRemove(this.state.currentPath,e,t).then(s=>{this.status(s||this.i18n('File "%s" was deleted',e),!0)}).catch(this.status)}__folderRemove(e,t,s){return this.dataProvider.folderRemove(e,t,s).then(o=>{this.status(o||this.i18n('Folder "%s" was deleted',t),!0),this.state.currentPath===e&&(this.state.currentPath=c(e),this.state.currentSource=s)}).catch(this.status)}onFileEdit(){if(this.state.activeElements.length===1){const[e]=this.state.activeElements;J.call(this,e.fileURL,e.file||"",e.path,e.sourceName,void 0,this.status)}}onFolderRename(e){this.prompt("Enter new name","Rename",t=>{if(!R(t)||t===e.name)return this.status(this.i18n("Enter new name")),!1;this.dataProvider.folderRename(c(e.path),e.name,t,e.sourceName).then(s=>{this.state.activeElements=[],this.status(s,!0),this.state.currentPath=c(e.path)+"/"+t,this.state.currentSource=e.sourceName,this.historyManager.updateCurrent(),this.loadingManager.loadFolders()}).catch(this.status)},this.i18n("type name"),e.name).bindDestruct(this)}onFolderRemove(e){this.confirm("Are you sure?","Delete",t=>{t&&this.__itemsRemove([{type:"folder",name:e.name,path:e.path,sourceName:e.sourceName}])}).bindDestruct(this)}onFolderCreate(e){this.prompt("Enter Directory name","Create directory",t=>{const s=e.path||"/";this.dataProvider.createFolder(t,e.path||"/",e.sourceName).then(()=>{this.state.currentSource===e.sourceName&&this.state.currentPath===s?this.e.fire("update.filebrowser"):(this.state.currentSource=e.sourceName,this.state.currentPath=s),this.historyManager.updateCurrent()},this.status)},this.i18n("type name")).bindDestruct(this)}onFileRename(e){const t=e.file||e.name||"";this.state.activeElements.length===1&&t&&this.prompt("Enter new name","Rename",s=>{if(!R(s))return this.status(this.i18n("Enter new name")),!1;this.dataProvider.fileRename(this.state.currentPath,t,s,this.state.currentSource).then(o=>{this.state.activeElements=[],this.status(o,!0),this.loadingManager.loadItems()}).catch(this.status)},this.i18n("type name"),t).bindDestruct(this)}onChooseItems(){const e=this.stateManager.state.activeElements;if(e.length){if(e[0].type==="folder"){this.state.currentPath=this.state.currentPath+"/"+e[0].name,this.state.currentSource=e[0].sourceName,this.e.fire("afterOpenFolder.filebrowser");return}this.state.onSelectCallBack?this.stateManager.callSelectHandler():this.onOpenLightBox(e[0])}}onOpenLightBox(e){O.open(this,e,this.state.elements)}initUploader(){const e=this,t=v(e.o.uploader||{},f.defaultOptions.uploader),s=p(()=>this.loadingManager.loadItems(),"uploadHandler");e.uploader=e.getInstance("Uploader",t),e.uploader.bind(e.panel.container,s,e.errorHandler),e.e.on("bindUploader.filebrowser",o=>{e.uploader.bind(o,s,e.errorHandler)})}destruct(){this.removeGlobalListeners(),this.header.destruct(),this.panel.destruct(),super.destruct()}fullFillOptions(){["getLocalFileByUrl","crop","resize","create","fileMove","folderMove","fileRename","folderRename","fileRemove","folderRemove","folder","items","permissions"].forEach(t=>{this.options[t]!=null&&(this.options[t]=v(this.options[t],this.o.ajax))})}},p(u,"FileBrowserPro"),u);i([d],r.prototype,"status",null),i([d],r.prototype,"errorHandler",null),i([K],r.prototype,"progressbar",null),i([a(":resize",{context:window})],r.prototype,"onResizeWindow",null),i([a(["state.currentPath","state.currentSource"])],r.prototype,"onChangePath",null),i([a("state.theme")],r.prototype,"onChangeTheme",null),i([a(":toggleSettings.filebrowser")],r.prototype,"onToggleSettings",null),i([d],r.prototype,"onKeyPress",null),i([d],r.prototype,"removeGlobalListeners",null),i([a(":fileRemove.filebrowser")],r.prototype,"onFileRemove",null),i([a(":edit.filebrowser")],r.prototype,"onFileEdit",null),i([a(":folderRename.filebrowser")],r.prototype,"onFolderRename",null),i([a(":folderRemove.filebrowser")],r.prototype,"onFolderRemove",null),i([a(":folderCreate.filebrowser")],r.prototype,"onFolderCreate",null),i([a(":fileRename.filebrowser")],r.prototype,"onFileRename",null),i([a(":select.filebrowser")],r.prototype,"onChooseItems",null),i([a(":openLightBox.filebrowser")],r.prototype,"onOpenLightBox",null),r=i([N,z(j)],r);Object.defineProperty(w.modules,"FileBrowserPro",{value:r,writable:!1,enumerable:!0,configurable:!0});export{r as FileBrowserPro};
1
+ var S=Object.defineProperty;var d=(u,e)=>S(u,"name",{value:e,configurable:!0});var c,a=function(u,e,t,s){var i=arguments.length,n=i<3?e:s===null?s=Object.getOwnPropertyDescriptor(e,t):s,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(u,e,t,s);else for(var h=u.length-1;h>=0;h--)(r=u[h])&&(n=(i<3?r(n):i>3?r(e,t,n):r(e,t))||n);return i>3&&n&&Object.defineProperty(e,t,n),n};import"./ui/assets/icons/index.js";import{ContextMenuManager as C}from"./helpers/context-menu.js";import{DataProviderPro as _}from"./helpers/data-provider.js";import{folderFullPath as I,normalizeItemPath as f,parentPath as m}from"./helpers/helpers.js";import{HistoryManager as O}from"./helpers/history-manager.js";import{LoadingManager as B}from"./helpers/loading-manager.js";import{PersistentStore as L}from"./helpers/persistent-store.js";import{StateManager as N}from"./helpers/state-manager.js";import{UIBrowserHeader as x}from"./ui/header/header.js";import{UILightBox as D}from"./ui/lightboox/lightbox.js";import{UIBrowserPanel as U}from"./ui/panel/panel.js";import{UIProgress as H}from"./ui/progress/progress.js";import{Config as g}from"jodit/esm/config.js";import{IS_PROD as k,KEY_DELETE as K,KEY_DOWN as P,KEY_ENTER as T,KEY_LEFT as M,KEY_RIGHT as v,KEY_UP as z}from"jodit/esm/core/constants.js";import{autobind as p,cache as W,component as j,derive as A,watch as l}from"jodit/esm/core/decorators/index.js";import{ConfigProto as y,css as G,isAbortError as E,isString as R,isValidName as F}from"jodit/esm/core/helpers/index.js";import{Dlgs as Y}from"jodit/esm/core/traits/dlgs.js";import{Dom as J,observable as q}from"jodit/esm/modules/index.js";import{Dialog as V}from"jodit/esm/modules/dialog/index.js";import{DEFAULT_SOURCE_NAME as Q}from"jodit/esm/modules/file-browser/data-provider.js";import{openImageEditor as X}from"jodit/esm/modules/image-editor/image-editor.js";import{JoditPro as w}from"../../jodit-pro.js";import{license as Z}from"../license/license.js";let o=(c=class extends V{className(){return"FileBrowserPro"}lock(e="any"){return this.container.classList.add("jodit_disabled"),super.lock(e)}unlock(){return this.container.classList.remove("jodit_disabled"),super.unlock()}status(e,t=!(e instanceof Error)){E(e)||(!k&&!R(e)&&console.error(e),this.message.message(R(e)?e:e.message,t?"success":"error",this.options.howLongShowMsg))}errorHandler(e){E(e)||this.status(e instanceof Error?this.i18n(e.message):this.dataProvider.getMessage(e),!1)}get progressbar(){return new H(this,this.stateManager.state)}constructor(e){super(y(Object.assign(e||{},{resizable:!0,draggable:!0,toolbarButtons:e?.toolbarButtons||g.defaultOptions.filebrowser.buttons,buttons:w.atom(["filebrowser.settings","fullsize","dialog.close"])}),g.defaultOptions.filebrowser)),this.dataProvider=new _(this,this.options),this.state=q({onSelectCallBack:null,theme:"default",showSideBar:!0,showFavorites:!0,showSettings:!1,showPreview:!1,withFolders:!0,foldersPosition:"bottom",info:"",metaInfo:null,currentPath:"",currentSource:"",currentBaseUrl:"",tree:[],activeElements:[],favorites:[],clipboard:[],progress:0,lastSelectedIndex:0,elements:[],messages:[],sources:[],view:"tiles",tileSize:"default",sortBy:"name-asc",filterWord:"",onlyImages:!1}),this.persistent=new L(this,this.state),this.loadingManager=new B(this,this.state),this.stateManager=new N(this.state),this.historyManager=new O(this,this.state),this.contextMenuManager=new C(this),this.header=new x(this,this.options,this.stateManager),this.panel=new U(this,this.stateManager),this.files=this.panel,this.tree=this.panel,Z.make(this),!this.persistent.theme&&this.options.theme&&(this.persistent.theme=this.options.theme),this.panel.append(this.progressbar),this.toolbar.setMod("mode","header"),this.setSize(Math.min(this.options.width,screen.width),Math.min(this.options.height,screen.height)).setHeader(this.header),this.onResizeWindow(),this.initUploader(),this.onChangeTheme(),this.fullFillOptions(),this.dataProvider.onProgress(t=>{t===0&&(t=30),this.state.progress=t}),this.e.on("beforeClose",this.removeGlobalListeners),this.e.fire("afterInit"),w.prototype.afterInitHook.call(this)}addDisclaimer(e){this.dialog.appendChild(e)}getMessageModule(){return super.getMessageModule(this.dialog)}async open(e=this.o.defaultCallback,t){return this.state.onlyImages=!!t,this.prepareOpening(e),super.open(this.panel.container),this.e.fire("update.filebrowser")}onResizeWindow(){G(this.dialog,{maxWidth:screen.width,minHeight:Math.min(this.options.height,screen.height),minWidth:Math.min(this.options.width,screen.width)})}onChangePath(){const{currentPath:e,currentSource:t}=this.state;this.uploader.setPath(e),this.uploader.setSource(t)}onChangeTheme(){this.setMod("theme",this.state.theme),this.header.setMod("theme",this.state.theme),this.panel.setMod("theme",this.state.theme),this.options.theme=this.state.theme}onToggleSettings(){this.state.showSettings=!this.state.showSettings}prepareOpening(e){this.registerGlobalListeners(),e&&(this.state.onSelectCallBack=t=>{this.close(),e(t)}),this.persistent.syncWithState()}registerGlobalListeners(){this.e.on(this.ow,"keydown",this.onKeyPress)}onKeyPress(e){const{activeElement:t}=this.od;if(!this.state.activeElements.length||!t||!J.isOrContains(this.panel.items.container,t))return;const s=this.state.elements;switch(e.key){case T:return this.onChooseItems();case K:return this.onFileRemove();case v:case M:case P:case z:{const i=e.key===v||e.key===P,n=this.state.lastSelectedIndex;let r;if([v,M].includes(e.key))i?r=s[n+1]?n+1:0:r=s[n-1]?n-1:s.length-1;else{const{countInRow:h}=this.panel;r=Math.round(((n+1)/h+(i?1:-1))*h-1)}return s[r]&&this.stateManager.addActive(s[r],e.shiftKey),!1}}}removeGlobalListeners(){this.e.off(this.ow,"keydown",this.onKeyPress)}onCut(e){this.__fillClipboard("cut",e)}onCopy(e){this.__fillClipboard("copy",e)}__fillClipboard(e,t){this.state.clipboard=t?[{mode:e,type:"folder",from:I(t),name:t.name,sourceName:t.sourceName}]:this.state.activeElements.filter(s=>s.file||s.name).map(s=>({mode:e,type:s.type==="folder"?"folder":"file",from:f(s.path+(s.file||s.name||"")),name:s.file||s.name||"",sourceName:s.sourceName}))}getPasteTarget(){var e;const{currentPath:t,currentSource:s,sources:i}=this.state;return{path:t||"/",sourceName:s||((e=i[0])===null||e===void 0?void 0:e.name)||Q}}canPaste(e){const t=this.state.clipboard;if(!t.length||t.some(r=>r.sourceName!==e.sourceName))return!1;const s=this.dataProvider,i=d(r=>r.mode==="copy"?s.canCopy(r.type==="file"):s.canI(r.type==="file"?"FileMove":"FolderMove"),"allowed");if(!t.every(i))return!1;const n=f(e.path);return!t.some(r=>r.type==="folder"&&(n===r.from||n.startsWith(r.from+"/")))}onPaste(e){if(!this.canPaste(e))return;const t=this.state.clipboard;t.some(r=>r.mode==="cut")&&(this.state.clipboard=[]);const s=f(e.path),i=d(async()=>{let r=0;for(const h of t){const b=h.type==="file";if(h.mode==="cut"){if(m(h.from)===s)continue;await this.dataProvider.move(h.from,s,e.sourceName,b)}else await this.dataProvider.copy(h.from,s,e.sourceName,b);r+=1}return r},"pasteSequentially"),n=t.every(r=>r.mode==="copy");i().then(r=>{r>0&&this.status(this.i18n(n?"%s item(s) were copied":"%s item(s) were moved",String(r)),!0)}).catch(this.status).finally(()=>(this.state.activeElements=[],Promise.allSettled([this.loadingManager.loadItems(),this.loadingManager.loadFolders()])))}onFileRemove(){this.state.activeElements.length&&this.confirm("Are you sure?","Delete",e=>{e&&this.__itemsRemove(this.state.activeElements)}).bindDestruct(this)}__itemsRemove(e){if(!e.length)return Promise.resolve();const t=[];return e.forEach(s=>{var i;t.push(s.type==="folder"?this.__folderRemove(m(s.path),(i=s.name)!==null&&i!==void 0?i:"",s.sourceName):this.__removeFile(s.file||s.name||"",s.sourceName))}),this.state.activeElements.forEach(s=>{this.stateManager.isFavorite(s)&&this.stateManager.toggleFavorite(s)}),this.state.activeElements=[],Promise.allSettled(t).then(()=>Promise.allSettled([this.loadingManager.loadItems(),this.loadingManager.loadFolders()]))}__removeFile(e,t){return this.dataProvider.fileRemove(this.state.currentPath,e,t).then(s=>{this.status(s||this.i18n('File "%s" was deleted',e),!0)}).catch(this.status)}__folderRemove(e,t,s){return this.dataProvider.folderRemove(e,t,s).then(i=>{this.status(i||this.i18n('Folder "%s" was deleted',t),!0),this.state.currentPath===e&&(this.state.currentPath=m(e),this.state.currentSource=s)}).catch(this.status)}onFileEdit(){if(this.state.activeElements.length===1){const[e]=this.state.activeElements;X.call(this,e.fileURL,e.file||"",e.path,e.sourceName,void 0,this.status)}}onFolderRename(e){this.prompt("Enter new name","Rename",t=>{if(!F(t)||t===e.name)return this.status(this.i18n("Enter new name")),!1;this.dataProvider.folderRename(m(e.path),e.name,t,e.sourceName).then(s=>{this.state.activeElements=[],this.status(s,!0),this.state.currentPath=m(e.path)+"/"+t,this.state.currentSource=e.sourceName,this.historyManager.updateCurrent(),this.loadingManager.loadFolders()}).catch(this.status)},this.i18n("type name"),e.name).bindDestruct(this)}onFolderRemove(e){this.confirm("Are you sure?","Delete",t=>{t&&this.__itemsRemove([{type:"folder",name:e.name,path:e.path,sourceName:e.sourceName}])}).bindDestruct(this)}onFolderCreate(e){this.prompt("Enter Directory name","Create directory",t=>{const s=e.path||"/";this.dataProvider.createFolder(t,e.path||"/",e.sourceName).then(()=>{this.state.currentSource===e.sourceName&&this.state.currentPath===s?this.e.fire("update.filebrowser"):(this.state.currentSource=e.sourceName,this.state.currentPath=s),this.historyManager.updateCurrent()},this.status)},this.i18n("type name")).bindDestruct(this)}onFileRename(e){const t=e.file||e.name||"";this.state.activeElements.length===1&&t&&this.prompt("Enter new name","Rename",s=>{if(!F(s))return this.status(this.i18n("Enter new name")),!1;this.dataProvider.fileRename(this.state.currentPath,t,s,this.state.currentSource).then(i=>{this.state.activeElements=[],this.status(i,!0),this.loadingManager.loadItems()}).catch(this.status)},this.i18n("type name"),t).bindDestruct(this)}onChooseItems(){const e=this.stateManager.state.activeElements;if(e.length){if(e[0].type==="folder"){this.state.currentPath=this.state.currentPath+"/"+e[0].name,this.state.currentSource=e[0].sourceName,this.e.fire("afterOpenFolder.filebrowser");return}this.state.onSelectCallBack?this.stateManager.callSelectHandler():this.onOpenLightBox(e[0])}}onOpenLightBox(e){D.open(this,e,this.state.elements)}initUploader(){const e=this,t=y(e.o.uploader||{},g.defaultOptions.uploader),s=d(()=>this.loadingManager.loadItems(),"uploadHandler");e.uploader=e.getInstance("Uploader",t),e.uploader.bind(e.panel.container,s,e.errorHandler),e.e.on("bindUploader.filebrowser",i=>{e.uploader.bind(i,s,e.errorHandler)})}destruct(){this.removeGlobalListeners(),this.header.destruct(),this.panel.destruct(),super.destruct()}fullFillOptions(){["getLocalFileByUrl","crop","resize","create","fileMove","folderMove","fileCopy","folderCopy","fileRename","folderRename","fileRemove","folderRemove","folder","items","permissions"].forEach(t=>{this.options[t]!=null&&(this.options[t]=y(this.options[t],this.o.ajax))})}},d(c,"FileBrowserPro"),c);a([p],o.prototype,"status",null),a([p],o.prototype,"errorHandler",null),a([W],o.prototype,"progressbar",null),a([l(":resize",{context:window})],o.prototype,"onResizeWindow",null),a([l(["state.currentPath","state.currentSource"])],o.prototype,"onChangePath",null),a([l("state.theme")],o.prototype,"onChangeTheme",null),a([l(":toggleSettings.filebrowser")],o.prototype,"onToggleSettings",null),a([p],o.prototype,"onKeyPress",null),a([p],o.prototype,"removeGlobalListeners",null),a([l(":cut.filebrowser")],o.prototype,"onCut",null),a([l(":copy.filebrowser")],o.prototype,"onCopy",null),a([l(":paste.filebrowser")],o.prototype,"onPaste",null),a([l(":fileRemove.filebrowser")],o.prototype,"onFileRemove",null),a([l(":edit.filebrowser")],o.prototype,"onFileEdit",null),a([l(":folderRename.filebrowser")],o.prototype,"onFolderRename",null),a([l(":folderRemove.filebrowser")],o.prototype,"onFolderRemove",null),a([l(":folderCreate.filebrowser")],o.prototype,"onFolderCreate",null),a([l(":fileRename.filebrowser")],o.prototype,"onFileRename",null),a([l(":select.filebrowser")],o.prototype,"onChooseItems",null),a([l(":openLightBox.filebrowser")],o.prototype,"onOpenLightBox",null),o=a([j,A(Y)],o);Object.defineProperty(w.modules,"FileBrowserPro",{value:o,writable:!1,enumerable:!0,configurable:!0});export{o as FileBrowserPro};
@@ -1 +1 @@
1
- var s=Object.defineProperty;var o=(e,i)=>s(e,"name",{value:i,configurable:!0});import*as l from"./langs/index.js";import{Config as t}from"jodit/esm/config.js";import{extendLang as n}from"jodit/esm/core/global.js";const r=t.prototype.controls.filebrowser;r.settings={icon:"settings",tooltip:"Settings",exec:o(e=>{var i;((i=e.parent)!==null&&i!==void 0?i:e).e.fire("toggleSettings.filebrowser")},"exec")},r.home={icon:"home",tooltip:"Home",exec:o(e=>{e.e.fire("goHome.filebrowser")},"exec")},r.preview={icon:"eye",tooltip:"Preview",isDisabled(e){return e.state.activeElements.length===0},exec:o(e=>{e.e.fire("togglePreview.filebrowser")},"exec")},r.next={icon:"angle-right",tooltip:"History next",isDisabled:o(e=>!e.historyManager.canNext(),"isDisabled"),exec:o(e=>{e.historyManager.next()},"exec")},r.previous={icon:"angle-left",tooltip:"History previous",isDisabled:o(e=>!e.historyManager.canPrevious(),"isDisabled"),exec:o(e=>{e.historyManager.previous()},"exec")},r["new-folder"]={icon:"new-folder",exec:o(e=>{e.e.fire("folderCreate.filebrowser",{path:e.state.currentPath,sourceName:e.state.currentSource})},"exec"),tooltip:"New folder"},Object.assign(t.prototype.filebrowser,{buttons:["filebrowser.home","filebrowser.previous","filebrowser.next","|","filebrowser.upload","filebrowser.new-folder","filebrowser.remove","filebrowser.update","filebrowser.select","filebrowser.edit","|","filebrowser.preview","about"],sort:!1,pixelOffsetLoadNewChunk:300,width:800,height:400,previewOfficeURL:"https://view.officeapps.live.com/op/view.aspx?src="}),n(l);
1
+ var s=Object.defineProperty;var o=(e,t)=>s(e,"name",{value:t,configurable:!0});import*as a from"./langs/index.js";import{Config as i}from"jodit/esm/config.js";import{extendLang as l}from"jodit/esm/core/global.js";const r=i.prototype.controls.filebrowser;r.settings={icon:"settings",tooltip:"Settings",exec:o(e=>{var t;((t=e.parent)!==null&&t!==void 0?t:e).e.fire("toggleSettings.filebrowser")},"exec")},r.home={icon:"home",tooltip:"Home",exec:o(e=>{e.e.fire("goHome.filebrowser")},"exec")},r.preview={icon:"eye",tooltip:"Preview",isDisabled(e){return e.state.activeElements.length===0},exec:o(e=>{e.e.fire("togglePreview.filebrowser")},"exec")},r.next={icon:"angle-right",tooltip:"History next",isDisabled:o(e=>!e.historyManager.canNext(),"isDisabled"),exec:o(e=>{e.historyManager.next()},"exec")},r.previous={icon:"angle-left",tooltip:"History previous",isDisabled:o(e=>!e.historyManager.canPrevious(),"isDisabled"),exec:o(e=>{e.historyManager.previous()},"exec")},r["new-folder"]={icon:"new-folder",exec:o(e=>{e.e.fire("folderCreate.filebrowser",{path:e.state.currentPath,sourceName:e.state.currentSource})},"exec"),tooltip:"New folder"},r.paste={icon:"paste",tooltip:"Paste",isDisabled(e){return!e.canPaste(e.getPasteTarget())},exec:o(e=>{e.e.fire("paste.filebrowser",e.getPasteTarget())},"exec")},Object.assign(i.prototype.filebrowser,{buttons:["filebrowser.home","filebrowser.previous","filebrowser.next","|","filebrowser.upload","filebrowser.new-folder","filebrowser.paste","filebrowser.remove","filebrowser.update","filebrowser.select","filebrowser.edit","|","filebrowser.preview","about"],sort:!1,pixelOffsetLoadNewChunk:300,width:900,height:400,previewOfficeURL:"https://view.officeapps.live.com/op/view.aspx?src=",fileCopy:{data:{action:"fileCopy"}},folderCopy:{data:{action:"folderCopy"}}}),l(a);
@@ -12,8 +12,14 @@ export declare class ContextMenuManager extends ViewComponent<IFileBrowserPro> {
12
12
  protected onFolderContext(item: IFileBrowserTreeItemPro, e: MouseEvent): void | false;
13
13
  protected onItemContext(item: IFileBrowserItemWrapper, _: unknown, e: MouseEvent): void | false;
14
14
  protected onSourceContext(item: IFileBrowserTreeItemPro, e: MouseEvent): void | false;
15
+ protected onAreaContext(e: MouseEvent): void | false;
15
16
  private buildContextItemMenu;
16
17
  private getItemContextActions;
17
18
  private getFolderContextActions;
18
19
  private getSourceContextActions;
20
+ /**
21
+ * Context menu of an empty spot of the file list — actions apply to the
22
+ * currently opened folder
23
+ */
24
+ private getAreaContextActions;
19
25
  }
@@ -1 +1 @@
1
- var u=Object.defineProperty;var i=(c,e)=>u(c,"name",{value:e,configurable:!0});var s,f=function(c,e,t,o){var n=arguments.length,r=n<3?e:o===null?o=Object.getOwnPropertyDescriptor(e,t):o,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")r=Reflect.decorate(c,e,t,o);else for(var d=c.length-1;d>=0;d--)(a=c[d])&&(r=(n<3?a(r):n>3?a(e,t,r):a(e,t))||r);return n>3&&r&&Object.defineProperty(e,t,r),r};import{ViewComponent as x}from"jodit/esm/core/component/view-component.js";import{component as p,watch as h}from"jodit/esm/core/decorators/index.js";import{makeContextMenu as m}from"jodit/esm/modules/file-browser/factories.js";let l=(s=class extends x{className(){return"ContextMenuManager"}onFolderContext(e,t){return this.buildContextItemMenu(this.getFolderContextActions(e),t),!1}onItemContext(e,t,o){return this.buildContextItemMenu(this.getItemContextActions(e),o),!1}onSourceContext(e,t){return this.buildContextItemMenu(this.getSourceContextActions(e),t),!1}buildContextItemMenu(e,t){if(!this.j.o.contextMenu)return;const o=m(this.j).setMod("theme",this.j.state.theme);o.show(t.clientX,t.clientY,e.filter(n=>n&&n.enabled!==!1)),this.j.e.on(this.j,"afterClose",()=>{o.isOpened&&o.close()})}getItemContextActions(e){if(this.j.stateManager.isActive(e)||this.j.stateManager.addActive(e,this.j.state.activeElements.length>1),e.type==="folder")return this.getFolderContextActions({type:"directory",children:[],name:e.name||"",path:e.path,sourceName:e.sourceName});const t=this.j.options,o=this.j.dataProvider,n=this.j.state.activeElements.length===1;return[{icon:"pencil",title:"Edit",enabled:!!e.isImage&&t.editImage&&n&&(o.canI("ImageResize")||o.canI("ImageCrop")),exec:i(()=>{this.j.e.fire("edit.filebrowser")},"exec")},{icon:"italic",title:"Rename",enabled:o.canI("FileRename")&&n,exec:i(()=>this.j.e.fire("fileRename.filebrowser",e),"exec")},{icon:"bin",title:"Delete",enabled:o.canI("FileRemove"),exec:i(()=>this.j.e.fire("fileRemove.filebrowser",e),"exec")},{icon:"eye",title:"Preview",enabled:!!(e.isImage||e.type==="file")&&t.preview&&n,exec:i(()=>this.j.e.fire("openLightBox.filebrowser",e),"exec")},{icon:"upload",title:"Download",exec:i(()=>{e.fileURL&&this.j.ow.open(e.fileURL)},"exec")}]}getFolderContextActions(e){const t=this.j.dataProvider;return[{icon:"pencil",title:"Rename",exec:i(()=>{this.j.e.fire("folderRename.filebrowser",e)},"exec"),enabled:t.canI("FolderRename")},{icon:"bin",title:"Delete",exec:i(()=>{this.j.e.fire("folderRemove.filebrowser",e)},"exec"),enabled:t.canI("FolderRemove")},{icon:"plus",title:"Add folder",exec:i(()=>{this.j.e.fire("folderCreate.filebrowser",e)},"exec"),enabled:t.canI("FolderCreate")}]}getSourceContextActions(e){return[{icon:"plus",title:"Create folder",exec:i(()=>{this.j.e.fire("folderCreate.filebrowser",e)},"exec")}]}},i(s,"ContextMenuManager"),s);f([h(":contextmenuFolder.filebrowser")],l.prototype,"onFolderContext",null),f([h(":contextmenuItem.filebrowser")],l.prototype,"onItemContext",null),f([h(":contextmenuSource.filebrowser")],l.prototype,"onSourceContext",null),l=f([p],l);export{l as ContextMenuManager};
1
+ var h=Object.defineProperty;var n=(a,e)=>h(a,"name",{value:e,configurable:!0});var s,c=function(a,e,t,o){var r=arguments.length,i=r<3?e:o===null?o=Object.getOwnPropertyDescriptor(e,t):o,f;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(a,e,t,o);else for(var u=a.length-1;u>=0;u--)(f=a[u])&&(i=(r<3?f(i):r>3?f(e,t,i):f(e,t))||i);return r>3&&i&&Object.defineProperty(e,t,i),i};import{folderFullPath as p}from"./helpers.js";import{ViewComponent as x}from"jodit/esm/core/component/view-component.js";import{component as b,watch as d}from"jodit/esm/core/decorators/index.js";import{makeContextMenu as C}from"jodit/esm/modules/file-browser/factories.js";let l=(s=class extends x{className(){return"ContextMenuManager"}onFolderContext(e,t){return this.buildContextItemMenu(this.getFolderContextActions(e),t),!1}onItemContext(e,t,o){return this.buildContextItemMenu(this.getItemContextActions(e),o),!1}onSourceContext(e,t){return this.buildContextItemMenu(this.getSourceContextActions(e),t),!1}onAreaContext(e){return this.buildContextItemMenu(this.getAreaContextActions(),e),!1}buildContextItemMenu(e,t){if(!this.j.o.contextMenu)return;const o=C(this.j).setMod("theme",this.j.state.theme);o.show(t.clientX,t.clientY,e.filter(r=>r&&r.enabled!==!1)),this.j.e.on(this.j,"afterClose",()=>{o.isOpened&&o.close()})}getItemContextActions(e){if(this.j.stateManager.isActive(e)||this.j.stateManager.addActive(e,this.j.state.activeElements.length>1),e.type==="folder")return this.getFolderContextActions({type:"directory",children:[],name:e.name||"",path:e.path,sourceName:e.sourceName});const t=this.j.options,o=this.j.dataProvider,r=this.j.state.activeElements.length===1;return[{icon:"pencil",title:"Edit",enabled:!!e.isImage&&t.editImage&&r&&(o.canI("ImageResize")||o.canI("ImageCrop")),exec:n(()=>{this.j.e.fire("edit.filebrowser")},"exec")},{icon:"italic",title:"Rename",enabled:o.canI("FileRename")&&r,exec:n(()=>this.j.e.fire("fileRename.filebrowser",e),"exec")},{icon:"cut",title:"Cut",enabled:o.canI("FileMove"),exec:n(()=>this.j.e.fire("cut.filebrowser"),"exec")},{icon:"copy",title:"Copy",enabled:o.canCopy(!0),exec:n(()=>this.j.e.fire("copy.filebrowser"),"exec")},{icon:"bin",title:"Delete",enabled:o.canI("FileRemove"),exec:n(()=>this.j.e.fire("fileRemove.filebrowser",e),"exec")},{icon:"eye",title:"Preview",enabled:!!(e.isImage||e.type==="file")&&t.preview&&r,exec:n(()=>this.j.e.fire("openLightBox.filebrowser",e),"exec")},{icon:"upload",title:"Download",exec:n(()=>{e.fileURL&&this.j.ow.open(e.fileURL)},"exec")}]}getFolderContextActions(e){const t=this.j.dataProvider,o={path:p(e),sourceName:e.sourceName};return[{icon:"pencil",title:"Rename",exec:n(()=>{this.j.e.fire("folderRename.filebrowser",e)},"exec"),enabled:t.canI("FolderRename")},{icon:"cut",title:"Cut",enabled:t.canI("FolderMove"),exec:n(()=>{this.j.e.fire("cut.filebrowser",e)},"exec")},{icon:"copy",title:"Copy",enabled:t.canCopy(!1),exec:n(()=>{this.j.e.fire("copy.filebrowser",e)},"exec")},{icon:"paste",title:"Paste",enabled:this.j.canPaste(o),exec:n(()=>{this.j.e.fire("paste.filebrowser",o)},"exec")},{icon:"bin",title:"Delete",exec:n(()=>{this.j.e.fire("folderRemove.filebrowser",e)},"exec"),enabled:t.canI("FolderRemove")},{icon:"plus",title:"Add folder",exec:n(()=>{this.j.e.fire("folderCreate.filebrowser",e)},"exec"),enabled:t.canI("FolderCreate")}]}getSourceContextActions(e){const t={path:"/",sourceName:e.sourceName};return[{icon:"plus",title:"Create folder",exec:n(()=>{this.j.e.fire("folderCreate.filebrowser",e)},"exec")},{icon:"paste",title:"Paste",enabled:this.j.canPaste(t),exec:n(()=>{this.j.e.fire("paste.filebrowser",t)},"exec")}]}getAreaContextActions(){const e=this.j.getPasteTarget();return[{icon:"paste",title:"Paste",enabled:this.j.canPaste(e),exec:n(()=>{this.j.e.fire("paste.filebrowser",e)},"exec")},{icon:"plus",title:"Add folder",enabled:this.j.dataProvider.canI("FolderCreate"),exec:n(()=>{this.j.e.fire("folderCreate.filebrowser",{path:e.path,sourceName:e.sourceName})},"exec")}]}},n(s,"ContextMenuManager"),s);c([d(":contextmenuFolder.filebrowser")],l.prototype,"onFolderContext",null),c([d(":contextmenuItem.filebrowser")],l.prototype,"onItemContext",null),c([d(":contextmenuSource.filebrowser")],l.prototype,"onSourceContext",null),c([d(":contextmenuArea.filebrowser")],l.prototype,"onAreaContext",null),l=c([b],l);export{l as ContextMenuManager};
@@ -0,0 +1,26 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ import DataProvider from "jodit/esm/modules/file-browser/data-provider";
7
+ import type { IFileBrowserDataProviderPro } from "../interface";
8
+ /**
9
+ * Extends the core data provider with copy operations
10
+ * (`fileCopy`/`folderCopy` connector actions).
11
+ */
12
+ export declare class DataProviderPro extends DataProvider implements IFileBrowserDataProviderPro {
13
+ /**
14
+ * Copy a file / directory on the server
15
+ *
16
+ * @param filepath - The relative path to the file / folder source
17
+ * @param path - Relative to the directory where you want to copy the file / folder
18
+ */
19
+ copy(filepath: string, path: string, source: string, isFile: boolean): Promise<boolean>;
20
+ /**
21
+ * Whether the connector allows copying. The core `canI` throws on rules
22
+ * it does not know (`allowFileCopy`/`allowFolderCopy` are PRO-only), so
23
+ * the same permission logic is replicated here.
24
+ */
25
+ canCopy(isFile: boolean): boolean;
26
+ }
@@ -0,0 +1 @@
1
+ var d=Object.defineProperty;var l=(u,o)=>d(u,"name",{value:o,configurable:!0});import{error as a}from"jodit/esm/core/helpers/index.js";import f from"jodit/esm/modules/file-browser/data-provider.js";const i=class i extends f{copy(o,e,s,t){const n=t?"fileCopy":"folderCopy",r=this.o[n];if(!r)throw a("Set Copy api options");return r.data.from=o,r.data.path=e,r.data.source=s,this.get(n).then(p=>{if(this.isSuccess(p))return!0;throw a(this.getMessage(p))})}canCopy(o){const e=o?"allowFileCopy":"allowFolderCopy",s=this.o.permissionsPresets[e];if(s!==void 0)return s;const{__currentPermissions:t}=this;return t==null||t[e]===void 0||!!t[e]}};l(i,"DataProviderPro");let c=i;export{c as DataProviderPro};
@@ -3,4 +3,31 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
+ import type { IFinderClipboardItem } from "../interface";
6
7
  export declare const parentPath: (path: string) => string;
8
+ /**
9
+ * Removes duplicated/leading/trailing slashes: `'/test//a/' -> 'test/a'`,
10
+ * `'/' -> '/'`. Unlike the core `normalizeRelativePath` it never keeps a
11
+ * trailing slash, so paths are always comparable with `parentPath` output.
12
+ */
13
+ export declare const normalizeItemPath: (path: string) => string;
14
+ /**
15
+ * Full path of a folder item. Tree items already keep the folder name inside
16
+ * `path`, items converted from a tile keep only the parent directory there
17
+ * (with a trailing slash) and the name separately.
18
+ */
19
+ export declare const folderFullPath: (item: {
20
+ path: string;
21
+ name: string;
22
+ }) => string;
23
+ /**
24
+ * Whether the list item is cut and waits to be moved (such items are shown
25
+ * dimmed). Copied items are intentionally not matched — copying does not
26
+ * remove the original.
27
+ */
28
+ export declare const isCutItem: (clipboard: IFinderClipboardItem[], item: {
29
+ path: string;
30
+ file?: string;
31
+ name?: string;
32
+ sourceName: string;
33
+ }) => boolean;
@@ -1 +1 @@
1
- var e=Object.defineProperty;var p=(n,t)=>e(n,"name",{value:t,configurable:!0});const s=p(n=>{const t=n.split("/").filter(r=>r.length);return t.pop(),t.join("/")||"/"},"parentPath");export{s as parentPath};
1
+ var a=Object.defineProperty;var n=(t,e)=>a(t,"name",{value:e,configurable:!0});const h=n(t=>{const e=t.split("/").filter(r=>r.length);return e.pop(),e.join("/")||"/"},"parentPath"),s=n(t=>t.split("/").filter(r=>r.length).join("/")||"/","normalizeItemPath"),l=n(t=>t.path.endsWith("/")?s(t.path+t.name):t.path,"folderFullPath"),u=n((t,e)=>{if(!t.length)return!1;const r=s(e.path+(e.file||e.name||""));return t.some(o=>o.mode==="cut"&&o.from===r&&o.sourceName===e.sourceName)},"isCutItem");export{l as folderFullPath,u as isCutItem,s as normalizeItemPath,h as parentPath};
@@ -1,15 +1,10 @@
1
- /*!
2
- * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
- * See LICENSE.md in the project root for license information.
4
- * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
- */
6
1
  import { ViewComponent } from "jodit/esm/core/component/index";
7
- import type { IFileBrowserStatePro } from "../interface";
8
- export declare class PersistentStore extends ViewComponent {
2
+ import type { IFileBrowserPro, IFileBrowserStatePro } from "../interface";
3
+ export declare class PersistentStore extends ViewComponent<IFileBrowserPro> {
9
4
  readonly state: IFileBrowserStatePro;
10
5
  /** @override */
11
6
  className(): string;
12
- constructor(jodit: ViewComponent['jodit'], state: IFileBrowserStatePro);
7
+ constructor(jodit: IFileBrowserPro, state: IFileBrowserStatePro);
13
8
  theme: string;
14
9
  protected sortBy: string;
15
10
  protected view: IFileBrowserStatePro['view'];
@@ -29,4 +24,14 @@ export declare class PersistentStore extends ViewComponent {
29
24
  protected onChangeShowFavorites(): void;
30
25
  protected onChangeFoldersPosition(): void;
31
26
  syncWithState(): void;
27
+ /**
28
+ * The `filebrowser.view` option is the default view. The view stored from
29
+ * the user's last choice wins over it only when view persistence is
30
+ * enabled (`saveStateInStorage.storeView !== false`) and the user has
31
+ * actually chosen a view before.
32
+ */
33
+ private __resolveView;
34
+ private __configView;
35
+ private __viewPersistenceEnabled;
36
+ private __hasStoredView;
32
37
  }
@@ -1 +1 @@
1
- var S=Object.defineProperty;var d=(n,o)=>S(n,"name",{value:o,configurable:!0});var a,e=function(n,o,h,l){var p=arguments.length,r=p<3?o:l===null?l=Object.getOwnPropertyDescriptor(o,h):l,w;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")r=Reflect.decorate(n,o,h,l);else for(var v=n.length-1;v>=0;v--)(w=n[v])&&(r=(p<3?w(r):p>3?w(o,h,r):w(o,h))||r);return p>3&&r&&Object.defineProperty(o,h,r),r};import{ViewComponent as y}from"jodit/esm/core/component/index.js";import{component as u,persistent as s,watch as i}from"jodit/esm/core/decorators/index.js";import{FileBrowserItem as f}from"jodit/esm/modules/file-browser/builders/item.js";let t=(a=class extends y{className(){return"PersistentStore"}constructor(o,h){super(o),this.state=h,this.sortBy="changed-desc",this.view="tiles",this.foldersPosition="top",this.tileSize="default",this.favorites=[],this.showSideBar=!0,this.showPreview=!1,this.showFavorites=!0}onChangeThemeSetField(){this.theme=this.state.theme}onChangeView(){this.view=this.state.view}onChangeSortBy(){this.sortBy=this.state.sortBy}onChangeTileSize(){this.tileSize=this.state.tileSize}onChangeFavorites(){this.favorites=this.state.favorites}onChangeShowSideBar(){this.showSideBar=this.state.showSideBar}onChangeShowPreview(){this.showPreview=this.state.showPreview}onChangeShowFavorites(){this.showFavorites=this.state.showFavorites}onChangeFoldersPosition(){this.foldersPosition=this.state.foldersPosition}syncWithState(){this.state.tileSize=this.tileSize,this.state.favorites=this.favorites.map(o=>o instanceof f?o:f.create(o)),this.state.view=this.view,this.state.theme=this.theme,this.state.showSideBar=this.showSideBar,this.state.showPreview=this.showPreview,this.state.showFavorites=this.showFavorites,this.state.sortBy=this.sortBy,this.state.foldersPosition=this.foldersPosition}},d(a,"PersistentStore"),a);e([s],t.prototype,"theme",void 0),e([s],t.prototype,"sortBy",void 0),e([s],t.prototype,"view",void 0),e([s],t.prototype,"foldersPosition",void 0),e([s],t.prototype,"tileSize",void 0),e([s],t.prototype,"favorites",void 0),e([s],t.prototype,"showSideBar",void 0),e([s],t.prototype,"showPreview",void 0),e([s],t.prototype,"showFavorites",void 0),e([i("state.theme")],t.prototype,"onChangeThemeSetField",null),e([i("state.view")],t.prototype,"onChangeView",null),e([i("state.sortBy")],t.prototype,"onChangeSortBy",null),e([i("state.tileSize")],t.prototype,"onChangeTileSize",null),e([i("state.favorites")],t.prototype,"onChangeFavorites",null),e([i("state.showSideBar")],t.prototype,"onChangeShowSideBar",null),e([i("state.showPreview")],t.prototype,"onChangeShowPreview",null),e([i("state.showFavorites")],t.prototype,"onChangeShowFavorites",null),e([i("state.foldersPosition")],t.prototype,"onChangeFoldersPosition",null),t=e([u],t);export{t as PersistentStore};
1
+ var S=Object.defineProperty;var d=(a,e)=>S(a,"name",{value:e,configurable:!0});var n,o=function(a,e,h,l){var w=arguments.length,r=w<3?e:l===null?l=Object.getOwnPropertyDescriptor(e,h):l,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")r=Reflect.decorate(a,e,h,l);else for(var v=a.length-1;v>=0;v--)(p=a[v])&&(r=(w<3?p(r):w>3?p(e,h,r):p(e,h))||r);return w>3&&r&&Object.defineProperty(e,h,r),r};import{ViewComponent as c}from"jodit/esm/core/component/index.js";import{component as u,persistent as s,watch as i}from"jodit/esm/core/decorators/index.js";import{FileBrowserItem as f}from"jodit/esm/modules/file-browser/builders/item.js";let t=(n=class extends c{className(){return"PersistentStore"}constructor(e,h){super(e),this.state=h,this.sortBy="changed-desc",this.view="tiles",this.foldersPosition="top",this.tileSize="default",this.favorites=[],this.showSideBar=!0,this.showPreview=!1,this.showFavorites=!0}onChangeThemeSetField(){this.theme=this.state.theme}onChangeView(){this.__viewPersistenceEnabled()&&(this.view=this.state.view)}onChangeSortBy(){this.sortBy=this.state.sortBy}onChangeTileSize(){this.tileSize=this.state.tileSize}onChangeFavorites(){this.favorites=this.state.favorites}onChangeShowSideBar(){this.showSideBar=this.state.showSideBar}onChangeShowPreview(){this.showPreview=this.state.showPreview}onChangeShowFavorites(){this.showFavorites=this.state.showFavorites}onChangeFoldersPosition(){this.foldersPosition=this.state.foldersPosition}syncWithState(){this.state.tileSize=this.tileSize,this.state.favorites=this.favorites.map(e=>e instanceof f?e:f.create(e)),this.state.view=this.__resolveView(),this.state.theme=this.theme,this.state.showSideBar=this.showSideBar,this.state.showPreview=this.showPreview,this.state.showFavorites=this.showFavorites,this.state.sortBy=this.sortBy,this.state.foldersPosition=this.foldersPosition}__resolveView(){var e;return this.__viewPersistenceEnabled()&&this.__hasStoredView()?this.view:(e=this.__configView())!==null&&e!==void 0?e:"tiles"}__configView(){const{view:e}=this.j.o;return e==="tiles"||e==="list"||e==="compact"?e:null}__viewPersistenceEnabled(){const{saveStateInStorage:e}=this.j.o;return e===!1?!1:!e||e.storeView!==!1}__hasStoredView(){return this.j.storage.get(`${this.j.o.namespace}${this.componentName}_prop_view`)!=null}},d(n,"PersistentStore"),n);o([s],t.prototype,"theme",void 0),o([s],t.prototype,"sortBy",void 0),o([s],t.prototype,"view",void 0),o([s],t.prototype,"foldersPosition",void 0),o([s],t.prototype,"tileSize",void 0),o([s],t.prototype,"favorites",void 0),o([s],t.prototype,"showSideBar",void 0),o([s],t.prototype,"showPreview",void 0),o([s],t.prototype,"showFavorites",void 0),o([i("state.theme")],t.prototype,"onChangeThemeSetField",null),o([i("state.view")],t.prototype,"onChangeView",null),o([i("state.sortBy")],t.prototype,"onChangeSortBy",null),o([i("state.tileSize")],t.prototype,"onChangeTileSize",null),o([i("state.favorites")],t.prototype,"onChangeFavorites",null),o([i("state.showSideBar")],t.prototype,"onChangeShowSideBar",null),o([i("state.showPreview")],t.prototype,"onChangeShowPreview",null),o([i("state.showFavorites")],t.prototype,"onChangeShowFavorites",null),o([i("state.foldersPosition")],t.prototype,"onChangeFoldersPosition",null),t=o([u],t);export{t as PersistentStore};
@@ -3,7 +3,7 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import type { IDialogOptions, IDictionary, IFileBrowser, IFileBrowserCallBackData, IFileBrowserOptions, IFileBrowserState, IObservable, Nullable } from "jodit/esm/types/index";
6
+ import type { IDialogOptions, IDictionary, IFileBrowser, IFileBrowserAjaxOptions, IFileBrowserCallBackData, IFileBrowserDataProvider, IFileBrowserOptions, IFileBrowserState, IObservable, Nullable } from "jodit/esm/types/index";
7
7
  import type { ContextMenuManager } from "./helpers/context-menu";
8
8
  import type { LoadingManager } from "./helpers/loading-manager";
9
9
  import type { PersistentStore } from "./helpers/persistent-store";
@@ -26,6 +26,8 @@ export interface IFileBrowserStatePro extends IFileBrowserState {
26
26
  tileSize: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
27
27
  favorites: IFileBrowserState['activeElements'];
28
28
  tree: IFileBrowserTreeItemPro[];
29
+ /** Items cut/copied in the context menu and waiting for Paste */
30
+ clipboard: IFinderClipboardItem[];
29
31
  }
30
32
  // @ts-ignore
31
33
  export interface IFileBrowserOptionsPro extends IFileBrowserOptions, IDialogOptions, IViewOptionsPro {
@@ -33,6 +35,8 @@ export interface IFileBrowserOptionsPro extends IFileBrowserOptions, IDialogOpti
33
35
  maxWidth: number;
34
36
  previewOfficeURL: string;
35
37
  license: string;
38
+ fileCopy?: IFileBrowserAjaxOptions;
39
+ folderCopy?: IFileBrowserAjaxOptions;
36
40
  }
37
41
  export interface IFileBrowserTreeItemPro {
38
42
  type: 'file' | 'directory' | 'source';
@@ -44,14 +48,33 @@ export interface IFileBrowserTreeItemPro {
44
48
  sourceName: string;
45
49
  children: IFileBrowserTreeItemPro[];
46
50
  }
51
+ export interface IFinderClipboardItem {
52
+ mode: 'cut' | 'copy';
53
+ type: 'file' | 'folder';
54
+ /** Full relative path (including the item name) inside the source */
55
+ from: string;
56
+ name: string;
57
+ sourceName: string;
58
+ }
59
+ export interface IFinderPasteTarget {
60
+ path: string;
61
+ sourceName: string;
62
+ }
63
+ export interface IFileBrowserDataProviderPro extends IFileBrowserDataProvider {
64
+ copy(filepath: string, path: string, source: string, isFile: boolean): Promise<boolean>;
65
+ canCopy(isFile: boolean): boolean;
66
+ }
47
67
  export interface IFileBrowserPro extends IFileBrowser<IFileBrowserOptionsPro> {
48
68
  readonly state: IFileBrowserStatePro & IObservable;
69
+ readonly dataProvider: IFileBrowserDataProviderPro;
49
70
  readonly persistent: PersistentStore;
50
71
  readonly loadingManager: LoadingManager;
51
72
  readonly stateManager: StateManager;
52
73
  readonly historyManager: IHistoryManager;
53
74
  readonly contextMenuManager: ContextMenuManager;
54
75
  readonly panel: UIBrowserPanel;
76
+ canPaste(target: IFinderPasteTarget): boolean;
77
+ getPasteTarget(): IFinderPasteTarget;
55
78
  }
56
79
  export interface IHistoryManager {
57
80
  canNext(): boolean;
@@ -18,5 +18,14 @@ declare const _exports: {
18
18
  Large: string;
19
19
  'Extra large': string;
20
20
  'Tile size': string;
21
+ Cut: string;
22
+ Copy: string;
23
+ Preview: string;
24
+ Download: string;
25
+ 'Create folder': string;
26
+ Home: string;
27
+ 'Select image': string;
28
+ '%s item(s) were moved': string;
29
+ '%s item(s) were copied': string;
21
30
  };
22
31
  export = _exports;
@@ -1 +1 @@
1
- var r=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var t=r((o,i)=>{i.exports={Favorites:"Favoriten",Settings:"Einstellungen",Light:"Hell",Dark:"Dunkel",Theme:"Design",Show:"Anzeigen",Hide:"Ausblenden","Show favorites":"Favoriten anzeigen",Tiles:"Kacheln",List:"Liste",Compact:"Kompakt",View:"Ansicht","Folders position":"Ordnerposition","Sort by":"Sortieren nach","Extra small":"Sehr klein",Small:"Klein",Large:"Gro\xDF","Extra large":"Sehr gro\xDF","Tile size":"Kachelgr\xF6\xDFe"}});export default t();
1
+ var i=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var t=i((o,r)=>{r.exports={Favorites:"Favoriten",Settings:"Einstellungen",Light:"Hell",Dark:"Dunkel",Theme:"Design",Show:"Anzeigen",Hide:"Ausblenden","Show favorites":"Favoriten anzeigen",Tiles:"Kacheln",List:"Liste",Compact:"Kompakt",View:"Ansicht","Folders position":"Ordnerposition","Sort by":"Sortieren nach","Extra small":"Sehr klein",Small:"Klein",Large:"Gro\xDF","Extra large":"Sehr gro\xDF","Tile size":"Kachelgr\xF6\xDFe",Cut:"Ausschneiden",Copy:"Kopieren",Preview:"Vorschau",Download:"Herunterladen","Create folder":"Ordner erstellen",Home:"Start","Select image":"Bild ausw\xE4hlen","%s item(s) were moved":"%s Element(e) wurden verschoben","%s item(s) were copied":"%s Element(e) wurden kopiert"}});export default t();
@@ -18,5 +18,14 @@ declare const _exports: {
18
18
  Large: string;
19
19
  'Extra large': string;
20
20
  'Tile size': string;
21
+ Cut: string;
22
+ Copy: string;
23
+ Preview: string;
24
+ Download: string;
25
+ 'Create folder': string;
26
+ Home: string;
27
+ 'Select image': string;
28
+ '%s item(s) were moved': string;
29
+ '%s item(s) were copied': string;
21
30
  };
22
31
  export = _exports;
@@ -1 +1 @@
1
- var s=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports);var r=s((o,t)=>{t.exports={Favorites:"\u0418\u0437\u0431\u0440\u0430\u043D\u043D\u043E\u0435",Settings:"\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438",Light:"\u0421\u0432\u0435\u0442\u043B\u0430\u044F",Dark:"\u0422\u0435\u043C\u043D\u0430\u044F",Theme:"\u0422\u0435\u043C\u0430",Show:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C",Hide:"\u0421\u043A\u0440\u044B\u0442\u044C","Show favorites":"\u041F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u0438\u0437\u0431\u0440\u0430\u043D\u043D\u043E\u0435",Tiles:"\u041F\u043B\u0438\u0442\u043A\u0430",List:"\u0421\u043F\u0438\u0441\u043E\u043A",Compact:"\u041A\u043E\u043C\u043F\u0430\u043A\u0442\u043D\u044B\u0439",View:"\u041E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435","Folders position":"\u041F\u043E\u0437\u0438\u0446\u0438\u044F \u043F\u0430\u043F\u043E\u043A","Sort by":"\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E","Extra small":"\u041E\u0447\u0435\u043D\u044C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u0438\u0435",Small:"\u041C\u0430\u043B\u0435\u043D\u044C\u043A\u0438\u0435",Large:"\u0411\u043E\u043B\u044C\u0448\u0438\u0435","Extra large":"\u041E\u0447\u0435\u043D\u044C \u0431\u043E\u043B\u044C\u0448\u0438\u0435","Tile size":"\u0420\u0430\u0437\u043C\u0435\u0440 \u043F\u043B\u0438\u0442\u043A\u0438"}});export default r();
1
+ var s=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports);var o=s((a,t)=>{t.exports={Favorites:"\u0418\u0437\u0431\u0440\u0430\u043D\u043D\u043E\u0435",Settings:"\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438",Light:"\u0421\u0432\u0435\u0442\u043B\u0430\u044F",Dark:"\u0422\u0435\u043C\u043D\u0430\u044F",Theme:"\u0422\u0435\u043C\u0430",Show:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C",Hide:"\u0421\u043A\u0440\u044B\u0442\u044C","Show favorites":"\u041F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u0438\u0437\u0431\u0440\u0430\u043D\u043D\u043E\u0435",Tiles:"\u041F\u043B\u0438\u0442\u043A\u0430",List:"\u0421\u043F\u0438\u0441\u043E\u043A",Compact:"\u041A\u043E\u043C\u043F\u0430\u043A\u0442\u043D\u044B\u0439",View:"\u041E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435","Folders position":"\u041F\u043E\u0437\u0438\u0446\u0438\u044F \u043F\u0430\u043F\u043E\u043A","Sort by":"\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E","Extra small":"\u041E\u0447\u0435\u043D\u044C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u0438\u0435",Small:"\u041C\u0430\u043B\u0435\u043D\u044C\u043A\u0438\u0435",Large:"\u0411\u043E\u043B\u044C\u0448\u0438\u0435","Extra large":"\u041E\u0447\u0435\u043D\u044C \u0431\u043E\u043B\u044C\u0448\u0438\u0435","Tile size":"\u0420\u0430\u0437\u043C\u0435\u0440 \u043F\u043B\u0438\u0442\u043A\u0438",Cut:"\u0412\u044B\u0440\u0435\u0437\u0430\u0442\u044C",Copy:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C",Preview:"\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440",Download:"\u0421\u043A\u0430\u0447\u0430\u0442\u044C","Create folder":"\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u043F\u0430\u043F\u043A\u0443",Home:"\u0413\u043B\u0430\u0432\u043D\u0430\u044F","Select image":"\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435","%s item(s) were moved":"\u041F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u043E \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432: %s","%s item(s) were copied":"\u0421\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u043E \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432: %s"}});export default o();