@webiny/app-file-manager 6.0.0-beta.0 → 6.0.0-rc.0

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 (675) hide show
  1. package/BatchFileUploader.d.ts +2 -2
  2. package/BatchFileUploader.js +75 -112
  3. package/BatchFileUploader.js.map +1 -1
  4. package/README.md +7 -28
  5. package/app.js +9 -14
  6. package/app.js.map +1 -1
  7. package/components/BottomInfoBar/BottomInfoBar.d.ts +3 -3
  8. package/components/BottomInfoBar/BottomInfoBar.js +14 -17
  9. package/components/BottomInfoBar/BottomInfoBar.js.map +1 -1
  10. package/components/BottomInfoBar/ListStatus.js +17 -21
  11. package/components/BottomInfoBar/ListStatus.js.map +1 -1
  12. package/components/BottomInfoBar/SupportedFileTypes.d.ts +4 -2
  13. package/components/BottomInfoBar/SupportedFileTypes.js +37 -26
  14. package/components/BottomInfoBar/SupportedFileTypes.js.map +1 -1
  15. package/components/BottomInfoBar/index.d.ts +1 -1
  16. package/components/BottomInfoBar/index.js +1 -16
  17. package/components/BottomInfoBar/index.js.map +1 -1
  18. package/components/BulkActions/ActionDelete.js +70 -71
  19. package/components/BulkActions/ActionDelete.js.map +1 -1
  20. package/components/BulkActions/ActionEdit/ActionEdit.js +38 -45
  21. package/components/BulkActions/ActionEdit/ActionEdit.js.map +1 -1
  22. package/components/BulkActions/ActionEdit/ActionEdit.types.d.ts +2 -2
  23. package/components/BulkActions/ActionEdit/ActionEdit.types.js +1 -5
  24. package/components/BulkActions/ActionEdit/ActionEdit.types.js.map +1 -1
  25. package/components/BulkActions/ActionEdit/ActionEditPresenter.d.ts +1 -1
  26. package/components/BulkActions/ActionEdit/ActionEditPresenter.js +45 -80
  27. package/components/BulkActions/ActionEdit/ActionEditPresenter.js.map +1 -1
  28. package/components/BulkActions/ActionEdit/ActionEditPresenter.test.js +16 -19
  29. package/components/BulkActions/ActionEdit/ActionEditPresenter.test.js.map +1 -1
  30. package/components/BulkActions/ActionEdit/BatchEditorDialog/AddOperation.js +15 -18
  31. package/components/BulkActions/ActionEdit/BatchEditorDialog/AddOperation.js.map +1 -1
  32. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditor.d.ts +2 -2
  33. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditor.js +33 -54
  34. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditor.js.map +1 -1
  35. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditorDialog.d.ts +1 -1
  36. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditorDialog.js +36 -46
  37. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditorDialog.js.map +1 -1
  38. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditorDialogPresenter.d.ts +5 -10
  39. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditorDialogPresenter.js +125 -173
  40. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditorDialogPresenter.js.map +1 -1
  41. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditorDialogPresenter.test.js +58 -49
  42. package/components/BulkActions/ActionEdit/BatchEditorDialog/BatchEditorDialogPresenter.test.js.map +1 -1
  43. package/components/BulkActions/ActionEdit/BatchEditorDialog/FieldRenderer.d.ts +1 -1
  44. package/components/BulkActions/ActionEdit/BatchEditorDialog/FieldRenderer.js +20 -28
  45. package/components/BulkActions/ActionEdit/BatchEditorDialog/FieldRenderer.js.map +1 -1
  46. package/components/BulkActions/ActionEdit/BatchEditorDialog/Operation.d.ts +1 -1
  47. package/components/BulkActions/ActionEdit/BatchEditorDialog/Operation.js +34 -46
  48. package/components/BulkActions/ActionEdit/BatchEditorDialog/Operation.js.map +1 -1
  49. package/components/BulkActions/ActionEdit/BatchEditorDialog/index.d.ts +1 -1
  50. package/components/BulkActions/ActionEdit/BatchEditorDialog/index.js +1 -16
  51. package/components/BulkActions/ActionEdit/BatchEditorDialog/index.js.map +1 -1
  52. package/components/BulkActions/ActionEdit/GraphQLInputMapper.d.ts +15 -10
  53. package/components/BulkActions/ActionEdit/GraphQLInputMapper.js +41 -51
  54. package/components/BulkActions/ActionEdit/GraphQLInputMapper.js.map +1 -1
  55. package/components/BulkActions/ActionEdit/GraphQLInputMapper.test.js +90 -77
  56. package/components/BulkActions/ActionEdit/GraphQLInputMapper.test.js.map +1 -1
  57. package/components/BulkActions/ActionEdit/domain/Batch.js +23 -38
  58. package/components/BulkActions/ActionEdit/domain/Batch.js.map +1 -1
  59. package/components/BulkActions/ActionEdit/domain/BatchMapper.d.ts +1 -1
  60. package/components/BulkActions/ActionEdit/domain/BatchMapper.js +10 -27
  61. package/components/BulkActions/ActionEdit/domain/BatchMapper.js.map +1 -1
  62. package/components/BulkActions/ActionEdit/domain/Field.d.ts +2 -2
  63. package/components/BulkActions/ActionEdit/domain/Field.js +31 -53
  64. package/components/BulkActions/ActionEdit/domain/Field.js.map +1 -1
  65. package/components/BulkActions/ActionEdit/domain/FieldMapper.d.ts +1 -1
  66. package/components/BulkActions/ActionEdit/domain/FieldMapper.js +18 -41
  67. package/components/BulkActions/ActionEdit/domain/FieldMapper.js.map +1 -1
  68. package/components/BulkActions/ActionEdit/domain/index.d.ts +4 -4
  69. package/components/BulkActions/ActionEdit/domain/index.js +4 -49
  70. package/components/BulkActions/ActionEdit/domain/index.js.map +1 -1
  71. package/components/BulkActions/ActionEdit/index.d.ts +1 -1
  72. package/components/BulkActions/ActionEdit/index.js +1 -16
  73. package/components/BulkActions/ActionEdit/index.js.map +1 -1
  74. package/components/BulkActions/ActionEdit/useActionEditWorker.d.ts +2 -2
  75. package/components/BulkActions/ActionEdit/useActionEditWorker.js +44 -48
  76. package/components/BulkActions/ActionEdit/useActionEditWorker.js.map +1 -1
  77. package/components/BulkActions/ActionMove.js +64 -61
  78. package/components/BulkActions/ActionMove.js.map +1 -1
  79. package/components/BulkActions/BulkActions.js +35 -38
  80. package/components/BulkActions/BulkActions.js.map +1 -1
  81. package/components/BulkActions/index.d.ts +4 -4
  82. package/components/BulkActions/index.js +4 -43
  83. package/components/BulkActions/index.js.map +1 -1
  84. package/components/EditFileUsingUrl/EditFileUsingUrl.d.ts +1 -1
  85. package/components/EditFileUsingUrl/EditFileUsingUrl.js +31 -43
  86. package/components/EditFileUsingUrl/EditFileUsingUrl.js.map +1 -1
  87. package/components/EditFileUsingUrl/EditFileUsingUrlPresenter.d.ts +2 -2
  88. package/components/EditFileUsingUrl/EditFileUsingUrlPresenter.js +39 -49
  89. package/components/EditFileUsingUrl/EditFileUsingUrlPresenter.js.map +1 -1
  90. package/components/EditFileUsingUrl/EditFileUsingUrlRepository.d.ts +2 -2
  91. package/components/EditFileUsingUrl/EditFileUsingUrlRepository.js +32 -49
  92. package/components/EditFileUsingUrl/EditFileUsingUrlRepository.js.map +1 -1
  93. package/components/EditFileUsingUrl/GetFileByUrl.d.ts +4 -4
  94. package/components/EditFileUsingUrl/GetFileByUrl.js +22 -34
  95. package/components/EditFileUsingUrl/GetFileByUrl.js.map +1 -1
  96. package/components/EditFileUsingUrl/Loading.js +30 -53
  97. package/components/EditFileUsingUrl/Loading.js.map +1 -1
  98. package/components/EditFileUsingUrl/UpdateFile.d.ts +4 -4
  99. package/components/EditFileUsingUrl/UpdateFile.js +6 -19
  100. package/components/EditFileUsingUrl/UpdateFile.js.map +1 -1
  101. package/components/EditFileUsingUrl/getFileByUrl.graphql.d.ts +1 -1
  102. package/components/EditFileUsingUrl/getFileByUrl.graphql.js +16 -13
  103. package/components/EditFileUsingUrl/getFileByUrl.graphql.js.map +1 -1
  104. package/components/EditFileUsingUrl/index.d.ts +1 -1
  105. package/components/EditFileUsingUrl/index.js +1 -16
  106. package/components/EditFileUsingUrl/index.js.map +1 -1
  107. package/components/Empty/Empty.d.ts +1 -1
  108. package/components/Empty/Empty.js +18 -23
  109. package/components/Empty/Empty.js.map +1 -1
  110. package/components/Empty/index.d.ts +1 -1
  111. package/components/Empty/index.js +1 -16
  112. package/components/Empty/index.js.map +1 -1
  113. package/components/FileDetails/FileDetails.d.ts +2 -2
  114. package/components/FileDetails/FileDetails.js +116 -140
  115. package/components/FileDetails/FileDetails.js.map +1 -1
  116. package/components/FileDetails/FileDetailsProvider.d.ts +1 -1
  117. package/components/FileDetails/FileDetailsProvider.js +11 -17
  118. package/components/FileDetails/FileDetailsProvider.js.map +1 -1
  119. package/components/FileDetails/components/ActionButton.d.ts +2 -1
  120. package/components/FileDetails/components/ActionButton.js +17 -24
  121. package/components/FileDetails/components/ActionButton.js.map +1 -1
  122. package/components/FileDetails/components/Actions.js +11 -34
  123. package/components/FileDetails/components/Actions.js.map +1 -1
  124. package/components/FileDetails/components/BaseFields.d.ts +1 -1
  125. package/components/FileDetails/components/BaseFields.js +14 -22
  126. package/components/FileDetails/components/BaseFields.js.map +1 -1
  127. package/components/FileDetails/components/Content.d.ts +2 -1
  128. package/components/FileDetails/components/Content.js +28 -41
  129. package/components/FileDetails/components/Content.js.map +1 -1
  130. package/components/FileDetails/components/CreatedOn.js +19 -52
  131. package/components/FileDetails/components/CreatedOn.js.map +1 -1
  132. package/components/FileDetails/components/Description.d.ts +2 -0
  133. package/components/FileDetails/components/Description.js +23 -0
  134. package/components/FileDetails/components/Description.js.map +1 -0
  135. package/components/FileDetails/components/Extensions.d.ts +1 -1
  136. package/components/FileDetails/components/Extensions.js +19 -50
  137. package/components/FileDetails/components/Extensions.js.map +1 -1
  138. package/components/FileDetails/components/Preview.js +9 -27
  139. package/components/FileDetails/components/Preview.js.map +1 -1
  140. package/components/FileDetails/components/Thumbnail.js +13 -18
  141. package/components/FileDetails/components/Thumbnail.js.map +1 -1
  142. package/components/FileDetails/index.d.ts +1 -1
  143. package/components/FileDetails/index.js +1 -16
  144. package/components/FileDetails/index.js.map +1 -1
  145. package/components/FileDropArea/FileDropArea.d.ts +9 -0
  146. package/components/FileDropArea/FileDropArea.js +69 -0
  147. package/components/FileDropArea/FileDropArea.js.map +1 -0
  148. package/components/FileDropArea/index.d.ts +1 -0
  149. package/components/FileDropArea/index.js +3 -0
  150. package/components/FileDropArea/index.js.map +1 -0
  151. package/components/FileDropPlaceholder/FileDropPlaceholder.d.ts +2 -0
  152. package/components/FileDropPlaceholder/FileDropPlaceholder.js +12 -0
  153. package/components/FileDropPlaceholder/FileDropPlaceholder.js.map +1 -0
  154. package/components/FileDropPlaceholder/index.d.ts +1 -0
  155. package/components/FileDropPlaceholder/index.js +3 -0
  156. package/components/FileDropPlaceholder/index.js.map +1 -0
  157. package/components/Filters/Filters.js +26 -0
  158. package/components/Filters/Filters.js.map +1 -0
  159. package/components/Filters/index.d.ts +1 -0
  160. package/components/Filters/index.js +3 -0
  161. package/components/Filters/index.js.map +1 -0
  162. package/components/Grid/ActionButton.d.ts +2 -1
  163. package/components/Grid/ActionButton.js +24 -21
  164. package/components/Grid/ActionButton.js.map +1 -1
  165. package/components/Grid/File.d.ts +23 -7
  166. package/components/Grid/File.js +77 -52
  167. package/components/Grid/File.js.map +1 -1
  168. package/components/Grid/Grid.d.ts +7 -4
  169. package/components/Grid/Grid.js +60 -67
  170. package/components/Grid/Grid.js.map +1 -1
  171. package/components/Grid/Thumbnail.js +13 -18
  172. package/components/Grid/Thumbnail.js.map +1 -1
  173. package/components/Grid/index.d.ts +1 -1
  174. package/components/Grid/index.js +1 -16
  175. package/components/Grid/index.js.map +1 -1
  176. package/components/Header/Actions.d.ts +5 -0
  177. package/components/Header/Actions.js +99 -0
  178. package/components/Header/Actions.js.map +1 -0
  179. package/components/Header/Header.d.ts +9 -0
  180. package/components/Header/Header.js +21 -0
  181. package/components/Header/Header.js.map +1 -0
  182. package/components/Header/Title.d.ts +2 -0
  183. package/components/Header/Title.js +55 -0
  184. package/components/Header/Title.js.map +1 -0
  185. package/components/Header/index.d.ts +1 -0
  186. package/components/Header/index.js +3 -0
  187. package/components/Header/index.js.map +1 -0
  188. package/components/ImageEditor/ImageEditor.d.ts +45 -0
  189. package/components/ImageEditor/ImageEditor.js +218 -0
  190. package/components/ImageEditor/ImageEditor.js.map +1 -0
  191. package/components/ImageEditor/ImageEditorDialog.d.ts +16 -0
  192. package/components/ImageEditor/ImageEditorDialog.js +53 -0
  193. package/components/ImageEditor/ImageEditorDialog.js.map +1 -0
  194. package/components/ImageEditor/index.d.ts +1 -0
  195. package/components/ImageEditor/index.js +3 -0
  196. package/components/ImageEditor/index.js.map +1 -0
  197. package/components/ImageEditor/toolbar/crop.d.ts +4 -0
  198. package/components/ImageEditor/toolbar/crop.js +67 -0
  199. package/components/ImageEditor/toolbar/crop.js.map +1 -0
  200. package/components/ImageEditor/toolbar/filter.d.ts +3 -0
  201. package/components/ImageEditor/toolbar/filter.js +167 -0
  202. package/components/ImageEditor/toolbar/filter.js.map +1 -0
  203. package/components/ImageEditor/toolbar/flip.d.ts +4 -0
  204. package/components/ImageEditor/toolbar/flip.js +94 -0
  205. package/components/ImageEditor/toolbar/flip.js.map +1 -0
  206. package/components/ImageEditor/toolbar/index.d.ts +4 -0
  207. package/components/ImageEditor/toolbar/index.js +6 -0
  208. package/components/ImageEditor/toolbar/index.js.map +1 -0
  209. package/components/ImageEditor/toolbar/rotate.d.ts +4 -0
  210. package/components/ImageEditor/toolbar/rotate.js +93 -0
  211. package/components/ImageEditor/toolbar/rotate.js.map +1 -0
  212. package/components/ImageEditor/toolbar/types.d.ts +32 -0
  213. package/components/ImageEditor/toolbar/types.js +3 -0
  214. package/components/ImageEditor/toolbar/types.js.map +1 -0
  215. package/components/LayoutSwitch/LayoutSwitch.js +18 -29
  216. package/components/LayoutSwitch/LayoutSwitch.js.map +1 -1
  217. package/components/LayoutSwitch/index.d.ts +1 -1
  218. package/components/LayoutSwitch/index.js +1 -16
  219. package/components/LayoutSwitch/index.js.map +1 -1
  220. package/components/NoPermissions/NoPermissions.d.ts +2 -0
  221. package/components/NoPermissions/NoPermissions.js +28 -0
  222. package/components/NoPermissions/NoPermissions.js.map +1 -0
  223. package/components/NoPermissions/index.d.ts +1 -0
  224. package/components/NoPermissions/index.js +3 -0
  225. package/components/NoPermissions/index.js.map +1 -0
  226. package/components/NoResults/NoResults.js +19 -15
  227. package/components/NoResults/NoResults.js.map +1 -1
  228. package/components/NoResults/index.d.ts +1 -1
  229. package/components/NoResults/index.js +1 -16
  230. package/components/NoResults/index.js.map +1 -1
  231. package/components/SearchWidget/SearchWidget.js +30 -0
  232. package/components/SearchWidget/SearchWidget.js.map +1 -0
  233. package/components/SearchWidget/index.d.ts +1 -0
  234. package/components/SearchWidget/index.js +3 -0
  235. package/components/SearchWidget/index.js.map +1 -0
  236. package/components/Table/Actions/CopyFile.js +19 -22
  237. package/components/Table/Actions/CopyFile.js.map +1 -1
  238. package/components/Table/Actions/DeleteFile.js +23 -25
  239. package/components/Table/Actions/DeleteFile.js.map +1 -1
  240. package/components/Table/Actions/EditFile.js +18 -23
  241. package/components/Table/Actions/EditFile.js.map +1 -1
  242. package/components/Table/Actions/MoveFile.js +15 -19
  243. package/components/Table/Actions/MoveFile.js.map +1 -1
  244. package/components/Table/Actions/index.d.ts +4 -4
  245. package/components/Table/Actions/index.js +4 -49
  246. package/components/Table/Actions/index.js.map +1 -1
  247. package/components/Table/Cells/CellActions.js +25 -30
  248. package/components/Table/Cells/CellActions.js.map +1 -1
  249. package/components/Table/Cells/CellAuthor.js +13 -14
  250. package/components/Table/Cells/CellAuthor.js.map +1 -1
  251. package/components/Table/Cells/CellCreated.js +15 -16
  252. package/components/Table/Cells/CellCreated.js.map +1 -1
  253. package/components/Table/Cells/CellModified.js +15 -16
  254. package/components/Table/Cells/CellModified.js.map +1 -1
  255. package/components/Table/Cells/CellName.d.ts +4 -4
  256. package/components/Table/Cells/CellName.js +55 -48
  257. package/components/Table/Cells/CellName.js.map +1 -1
  258. package/components/Table/Cells/CellSize.js +13 -18
  259. package/components/Table/Cells/CellSize.js.map +1 -1
  260. package/components/Table/Cells/CellThumbnail.d.ts +2 -0
  261. package/components/Table/Cells/CellThumbnail.js +16 -0
  262. package/components/Table/Cells/CellThumbnail.js.map +1 -0
  263. package/components/Table/Cells/CellType.js +12 -17
  264. package/components/Table/Cells/CellType.js.map +1 -1
  265. package/components/Table/Cells/index.d.ts +7 -7
  266. package/components/Table/Cells/index.js +7 -82
  267. package/components/Table/Cells/index.js.map +1 -1
  268. package/components/Table/Table.d.ts +4 -4
  269. package/components/Table/Table.js +23 -21
  270. package/components/Table/Table.js.map +1 -1
  271. package/components/Table/index.d.ts +3 -3
  272. package/components/Table/index.js +3 -38
  273. package/components/Table/index.js.map +1 -1
  274. package/{modules/FileManagerRenderer/FileManagerView/components → components}/TagsList/Empty.d.ts +1 -1
  275. package/components/TagsList/Empty.js +11 -0
  276. package/components/TagsList/Empty.js.map +1 -0
  277. package/components/TagsList/FilterSelect.d.ts +2 -0
  278. package/components/TagsList/FilterSelect.js +28 -0
  279. package/components/TagsList/FilterSelect.js.map +1 -0
  280. package/components/TagsList/FilterStatus.d.ts +7 -0
  281. package/components/TagsList/FilterStatus.js +27 -0
  282. package/components/TagsList/FilterStatus.js.map +1 -0
  283. package/{modules/FileManagerRenderer/FileManagerView/components → components}/TagsList/Tag.d.ts +2 -2
  284. package/components/TagsList/Tag.js +16 -0
  285. package/components/TagsList/Tag.js.map +1 -0
  286. package/components/TagsList/Tags.d.ts +8 -0
  287. package/components/TagsList/Tags.js +32 -0
  288. package/components/TagsList/Tags.js.map +1 -0
  289. package/{modules/FileManagerRenderer/FileManagerView/components → components}/TagsList/TagsList.d.ts +1 -1
  290. package/components/TagsList/TagsList.js +31 -0
  291. package/components/TagsList/TagsList.js.map +1 -0
  292. package/components/TagsList/index.d.ts +1 -0
  293. package/components/TagsList/index.js +3 -0
  294. package/components/TagsList/index.js.map +1 -0
  295. package/components/Thumbnail/Thumbnail.d.ts +2 -0
  296. package/components/Thumbnail/Thumbnail.js +16 -0
  297. package/components/Thumbnail/Thumbnail.js.map +1 -0
  298. package/components/Thumbnail/index.d.ts +1 -0
  299. package/components/Thumbnail/index.js +3 -0
  300. package/components/Thumbnail/index.js.map +1 -0
  301. package/components/UploadStatus/UploadStatus.d.ts +3 -1
  302. package/components/UploadStatus/UploadStatus.js +33 -32
  303. package/components/UploadStatus/UploadStatus.js.map +1 -1
  304. package/components/UploadStatus/index.d.ts +1 -1
  305. package/components/UploadStatus/index.js +1 -16
  306. package/components/UploadStatus/index.js.map +1 -1
  307. package/components/fields/AccessControl.js +31 -31
  308. package/components/fields/AccessControl.js.map +1 -1
  309. package/components/fields/Name.js +21 -23
  310. package/components/fields/Name.js.map +1 -1
  311. package/components/fields/Tags.js +30 -30
  312. package/components/fields/Tags.js.map +1 -1
  313. package/components/fields/index.d.ts +3 -4
  314. package/components/fields/index.js +3 -49
  315. package/components/fields/index.js.map +1 -1
  316. package/components/fields/useAccessControlField.d.ts +1 -2
  317. package/components/fields/useAccessControlField.js +9 -21
  318. package/components/fields/useAccessControlField.js.map +1 -1
  319. package/components/fields/useFileOrUndefined.js +4 -10
  320. package/components/fields/useFileOrUndefined.js.map +1 -1
  321. package/constants.d.ts +2 -2
  322. package/constants.js +4 -16
  323. package/constants.js.map +1 -1
  324. package/contexts/FileProvider.d.ts +1 -1
  325. package/contexts/FileProvider.js +12 -18
  326. package/contexts/FileProvider.js.map +1 -1
  327. package/hooks/useCopyFile.d.ts +1 -1
  328. package/hooks/useCopyFile.js +18 -24
  329. package/hooks/useCopyFile.js.map +1 -1
  330. package/hooks/useDeleteFile.d.ts +1 -1
  331. package/hooks/useDeleteFile.js +35 -62
  332. package/hooks/useDeleteFile.js.map +1 -1
  333. package/hooks/useFile.d.ts +1 -1
  334. package/hooks/useFile.js +5 -12
  335. package/hooks/useFile.js.map +1 -1
  336. package/hooks/useFileDetails.d.ts +1 -1
  337. package/hooks/useFileDetails.js +5 -12
  338. package/hooks/useFileDetails.js.map +1 -1
  339. package/hooks/useFileModel.js +5 -12
  340. package/hooks/useFileModel.js.map +1 -1
  341. package/hooks/useMoveFileToFolder.d.ts +1 -1
  342. package/hooks/useMoveFileToFolder.js +19 -21
  343. package/hooks/useMoveFileToFolder.js.map +1 -1
  344. package/index.d.ts +8 -8
  345. package/index.js +8 -101
  346. package/index.js.map +1 -1
  347. package/modules/Enterprise/HandleWebsocketMessages.d.ts +1 -0
  348. package/modules/Enterprise/HandleWebsocketMessages.js +57 -0
  349. package/modules/Enterprise/HandleWebsocketMessages.js.map +1 -0
  350. package/modules/Enterprise/components/ThreatScanInProgressFileBody.d.ts +2 -0
  351. package/modules/Enterprise/components/ThreatScanInProgressFileBody.js +23 -0
  352. package/modules/Enterprise/components/ThreatScanInProgressFileBody.js.map +1 -0
  353. package/modules/Enterprise/components/ThreatScanInProgressTableCell.d.ts +6 -0
  354. package/modules/Enterprise/components/ThreatScanInProgressTableCell.js +32 -0
  355. package/modules/Enterprise/components/ThreatScanInProgressTableCell.js.map +1 -0
  356. package/modules/Enterprise/constants.d.ts +3 -0
  357. package/modules/Enterprise/constants.js +5 -0
  358. package/modules/Enterprise/constants.js.map +1 -0
  359. package/modules/Enterprise/index.d.ts +2 -0
  360. package/modules/Enterprise/index.js +40 -0
  361. package/modules/Enterprise/index.js.map +1 -0
  362. package/modules/FileManagerApiProvider/FileManagerApiContext/FileManagerApiContext.d.ts +2 -3
  363. package/modules/FileManagerApiProvider/FileManagerApiContext/FileManagerApiContext.js +138 -129
  364. package/modules/FileManagerApiProvider/FileManagerApiContext/FileManagerApiContext.js.map +1 -1
  365. package/modules/FileManagerApiProvider/FileManagerApiContext/FileModelContext.d.ts +1 -1
  366. package/modules/FileManagerApiProvider/FileManagerApiContext/FileModelContext.js +14 -25
  367. package/modules/FileManagerApiProvider/FileManagerApiContext/FileModelContext.js.map +1 -1
  368. package/modules/FileManagerApiProvider/FileManagerApiContext/getFileGraphQLSelection.d.ts +1 -1
  369. package/modules/FileManagerApiProvider/FileManagerApiContext/getFileGraphQLSelection.js +28 -11
  370. package/modules/FileManagerApiProvider/FileManagerApiContext/getFileGraphQLSelection.js.map +1 -1
  371. package/modules/FileManagerApiProvider/FileManagerApiContext/getFileUploader.d.ts +1 -1
  372. package/modules/FileManagerApiProvider/FileManagerApiContext/getFileUploader.js +3 -9
  373. package/modules/FileManagerApiProvider/FileManagerApiContext/getFileUploader.js.map +1 -1
  374. package/modules/FileManagerApiProvider/FileManagerApiContext/index.d.ts +3 -3
  375. package/modules/FileManagerApiProvider/FileManagerApiContext/index.js +3 -26
  376. package/modules/FileManagerApiProvider/FileManagerApiContext/index.js.map +1 -1
  377. package/modules/FileManagerApiProvider/FileManagerApiContext/useFileManagerApi.d.ts +2 -2
  378. package/modules/FileManagerApiProvider/FileManagerApiContext/useFileManagerApi.js +4 -11
  379. package/modules/FileManagerApiProvider/FileManagerApiContext/useFileManagerApi.js.map +1 -1
  380. package/modules/FileManagerApiProvider/graphql.d.ts +8 -9
  381. package/modules/FileManagerApiProvider/graphql.js +116 -27
  382. package/modules/FileManagerApiProvider/graphql.js.map +1 -1
  383. package/modules/FileManagerApiProvider/index.js +11 -17
  384. package/modules/FileManagerApiProvider/index.js.map +1 -1
  385. package/modules/FileManagerRenderer/FileActions/FileDetails/CopyUrl.js +18 -25
  386. package/modules/FileManagerRenderer/FileActions/FileDetails/CopyUrl.js.map +1 -1
  387. package/modules/FileManagerRenderer/FileActions/FileDetails/DeleteImage.js +26 -39
  388. package/modules/FileManagerRenderer/FileActions/FileDetails/DeleteImage.js.map +1 -1
  389. package/modules/FileManagerRenderer/FileActions/FileDetails/Download.js +15 -23
  390. package/modules/FileManagerRenderer/FileActions/FileDetails/Download.js.map +1 -1
  391. package/modules/FileManagerRenderer/FileActions/FileDetails/EditImage.js +48 -59
  392. package/modules/FileManagerRenderer/FileActions/FileDetails/EditImage.js.map +1 -1
  393. package/modules/FileManagerRenderer/FileActions/FileDetails/MoveToFolder.js +14 -22
  394. package/modules/FileManagerRenderer/FileActions/FileDetails/MoveToFolder.js.map +1 -1
  395. package/modules/FileManagerRenderer/FileActions/Grid/Delete.d.ts +2 -0
  396. package/modules/FileManagerRenderer/FileActions/Grid/Delete.js +29 -0
  397. package/modules/FileManagerRenderer/FileActions/Grid/Delete.js.map +1 -0
  398. package/modules/FileManagerRenderer/FileActions/Grid/Download.js +16 -19
  399. package/modules/FileManagerRenderer/FileActions/Grid/Download.js.map +1 -1
  400. package/modules/FileManagerRenderer/FileActions/Grid/MoveToFolder.js +14 -17
  401. package/modules/FileManagerRenderer/FileActions/Grid/MoveToFolder.js.map +1 -1
  402. package/modules/FileManagerRenderer/FileActions/Grid/Settings.js +15 -18
  403. package/modules/FileManagerRenderer/FileActions/Grid/Settings.js.map +1 -1
  404. package/modules/FileManagerRenderer/FileActions/index.js +33 -38
  405. package/modules/FileManagerRenderer/FileActions/index.js.map +1 -1
  406. package/modules/FileManagerRenderer/FileManagerView/FileManagerView.js +168 -233
  407. package/modules/FileManagerRenderer/FileManagerView/FileManagerView.js.map +1 -1
  408. package/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig.d.ts +216 -63
  409. package/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig.js +55 -48
  410. package/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig.js.map +1 -1
  411. package/modules/FileManagerRenderer/FileManagerView/LeftSidebar.d.ts +1 -1
  412. package/modules/FileManagerRenderer/FileManagerView/LeftSidebar.js +42 -48
  413. package/modules/FileManagerRenderer/FileManagerView/LeftSidebar.js.map +1 -1
  414. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/BulkAction.d.ts +2 -2
  415. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/BulkAction.js +34 -45
  416. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/BulkAction.js.map +1 -1
  417. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/BulkEditField.js +11 -17
  418. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/BulkEditField.js.map +1 -1
  419. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FileAction.d.ts +5 -5
  420. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FileAction.js +8 -22
  421. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FileAction.js.map +1 -1
  422. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Filter.d.ts +20 -4
  423. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Filter.js +20 -29
  424. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Filter.js.map +1 -1
  425. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FilterByTags.js +7 -13
  426. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FilterByTags.js.map +1 -1
  427. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FiltersToWhere.js +7 -13
  428. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FiltersToWhere.js.map +1 -1
  429. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderAction.d.ts +4 -4
  430. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderAction.js +8 -22
  431. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderAction.js.map +1 -1
  432. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderDropConfirmation.d.ts +5 -0
  433. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderDropConfirmation.js +10 -0
  434. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderDropConfirmation.js.map +1 -0
  435. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderFieldDecorator.d.ts +7 -0
  436. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderFieldDecorator.js +16 -0
  437. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderFieldDecorator.js.map +1 -0
  438. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Grid/Action.d.ts +15 -3
  439. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Grid/Action.js +18 -27
  440. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Grid/Action.js.map +1 -1
  441. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Grid/Thumbnail.d.ts +15 -3
  442. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Grid/Thumbnail.js +13 -19
  443. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Grid/Thumbnail.js.map +1 -1
  444. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Grid/index.d.ts +2 -2
  445. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Grid/index.js +1 -5
  446. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Grid/index.js.map +1 -1
  447. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Column.d.ts +29 -6
  448. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Column.js +10 -22
  449. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Column.js.map +1 -1
  450. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Thumbnail.d.ts +28 -0
  451. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Thumbnail.js +30 -0
  452. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Thumbnail.js.map +1 -0
  453. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/index.d.ts +50 -5
  454. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/index.js +7 -9
  455. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/index.js.map +1 -1
  456. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/index.d.ts +148 -41
  457. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/index.js +40 -31
  458. package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/index.js.map +1 -1
  459. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Action.d.ts +15 -3
  460. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Action.js +17 -26
  461. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Action.js.map +1 -1
  462. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Field.d.ts +20 -4
  463. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Field.js +20 -29
  464. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Field.js.map +1 -1
  465. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/FieldDecorator.d.ts +3 -3
  466. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/FieldDecorator.js +16 -24
  467. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/FieldDecorator.js.map +1 -1
  468. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/GroupFields.js +8 -14
  469. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/GroupFields.js.map +1 -1
  470. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Thumbnail.d.ts +15 -3
  471. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Thumbnail.js +12 -18
  472. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Thumbnail.js.map +1 -1
  473. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Width.js +8 -14
  474. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Width.js.map +1 -1
  475. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/index.d.ts +58 -19
  476. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/index.js +15 -21
  477. package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/index.js.map +1 -1
  478. package/modules/FileManagerRenderer/FileManagerView/formatFileItem.d.ts +6 -0
  479. package/modules/FileManagerRenderer/FileManagerView/formatFileItem.js +19 -0
  480. package/modules/FileManagerRenderer/FileManagerView/formatFileItem.js.map +1 -0
  481. package/modules/FileManagerRenderer/FileManagerView/getThumbnailRenderer.d.ts +1 -1
  482. package/modules/FileManagerRenderer/FileManagerView/getThumbnailRenderer.js +7 -16
  483. package/modules/FileManagerRenderer/FileManagerView/getThumbnailRenderer.js.map +1 -1
  484. package/modules/FileManagerRenderer/FileManagerView/index.d.ts +1 -1
  485. package/modules/FileManagerRenderer/FileManagerView/index.js +55 -64
  486. package/modules/FileManagerRenderer/FileManagerView/index.js.map +1 -1
  487. package/modules/FileManagerRenderer/FileManagerView/outputFileSelectionError.d.ts +1 -1
  488. package/modules/FileManagerRenderer/FileManagerView/outputFileSelectionError.js +6 -17
  489. package/modules/FileManagerRenderer/FileManagerView/outputFileSelectionError.js.map +1 -1
  490. package/modules/FileManagerRenderer/FileManagerViewProvider/FileManagerViewContext.d.ts +30 -15
  491. package/modules/FileManagerRenderer/FileManagerViewProvider/FileManagerViewContext.js +300 -310
  492. package/modules/FileManagerRenderer/FileManagerViewProvider/FileManagerViewContext.js.map +1 -1
  493. package/modules/FileManagerRenderer/FileManagerViewProvider/index.d.ts +2 -2
  494. package/modules/FileManagerRenderer/FileManagerViewProvider/index.js +2 -27
  495. package/modules/FileManagerRenderer/FileManagerViewProvider/index.js.map +1 -1
  496. package/modules/FileManagerRenderer/FileManagerViewProvider/setSelection.d.ts +7 -5
  497. package/modules/FileManagerRenderer/FileManagerViewProvider/setSelection.js +30 -45
  498. package/modules/FileManagerRenderer/FileManagerViewProvider/setSelection.js.map +1 -1
  499. package/modules/FileManagerRenderer/FileManagerViewProvider/state.d.ts +5 -3
  500. package/modules/FileManagerRenderer/FileManagerViewProvider/state.js +5 -9
  501. package/modules/FileManagerRenderer/FileManagerViewProvider/state.js.map +1 -1
  502. package/modules/FileManagerRenderer/FileManagerViewProvider/useFileManagerView.d.ts +2 -2
  503. package/modules/FileManagerRenderer/FileManagerViewProvider/useFileManagerView.js +4 -10
  504. package/modules/FileManagerRenderer/FileManagerViewProvider/useFileManagerView.js.map +1 -1
  505. package/modules/FileManagerRenderer/FileManagerViewProvider/useListFiles.d.ts +7 -7
  506. package/modules/FileManagerRenderer/FileManagerViewProvider/useListFiles.js +92 -92
  507. package/modules/FileManagerRenderer/FileManagerViewProvider/useListFiles.js.map +1 -1
  508. package/modules/FileManagerRenderer/FileManagerViewProvider/useTags.d.ts +1 -1
  509. package/modules/FileManagerRenderer/FileManagerViewProvider/useTags.js +63 -81
  510. package/modules/FileManagerRenderer/FileManagerViewProvider/useTags.js.map +1 -1
  511. package/modules/FileManagerRenderer/filters/FilterByType.js +9 -16
  512. package/modules/FileManagerRenderer/filters/FilterByType.js.map +1 -1
  513. package/modules/FileManagerRenderer/index.js +87 -84
  514. package/modules/FileManagerRenderer/index.js.map +1 -1
  515. package/modules/HeadlessCms/fileField.d.ts +1 -1
  516. package/modules/HeadlessCms/fileField.js +13 -21
  517. package/modules/HeadlessCms/fileField.js.map +1 -1
  518. package/modules/HeadlessCms/fileRenderer/fileField.d.ts +1 -1
  519. package/modules/HeadlessCms/fileRenderer/fileField.js +50 -92
  520. package/modules/HeadlessCms/fileRenderer/fileField.js.map +1 -1
  521. package/modules/HeadlessCms/fileRenderer/fileFields.d.ts +1 -1
  522. package/modules/HeadlessCms/fileRenderer/fileFields.js +78 -148
  523. package/modules/HeadlessCms/fileRenderer/fileFields.js.map +1 -1
  524. package/modules/HeadlessCms/fileRenderer/utils.d.ts +1 -11
  525. package/modules/HeadlessCms/fileRenderer/utils.js +3 -53
  526. package/modules/HeadlessCms/fileRenderer/utils.js.map +1 -1
  527. package/modules/HeadlessCms/index.js +8 -14
  528. package/modules/HeadlessCms/index.js.map +1 -1
  529. package/modules/SecurityPermissions.d.ts +2 -0
  530. package/modules/SecurityPermissions.js +36 -0
  531. package/modules/SecurityPermissions.js.map +1 -0
  532. package/modules/Settings/graphql.js +32 -15
  533. package/modules/Settings/graphql.js.map +1 -1
  534. package/modules/Settings/index.js +34 -32
  535. package/modules/Settings/index.js.map +1 -1
  536. package/modules/Settings/views/FileManagerSettings.js +146 -113
  537. package/modules/Settings/views/FileManagerSettings.js.map +1 -1
  538. package/modules/ThumbnailRenderers/FilePreviewDefaultRenderer.d.ts +2 -0
  539. package/modules/ThumbnailRenderers/FilePreviewDefaultRenderer.js +12 -0
  540. package/modules/ThumbnailRenderers/FilePreviewDefaultRenderer.js.map +1 -0
  541. package/modules/ThumbnailRenderers/FilePreviewImageRenderer.d.ts +2 -0
  542. package/modules/ThumbnailRenderers/FilePreviewImageRenderer.js +19 -0
  543. package/modules/ThumbnailRenderers/FilePreviewImageRenderer.js.map +1 -0
  544. package/modules/ThumbnailRenderers/GridItemDefaultRenderer.d.ts +2 -0
  545. package/modules/ThumbnailRenderers/GridItemDefaultRenderer.js +12 -0
  546. package/modules/ThumbnailRenderers/GridItemDefaultRenderer.js.map +1 -0
  547. package/modules/ThumbnailRenderers/GridItemImageRenderer.d.ts +2 -0
  548. package/modules/ThumbnailRenderers/GridItemImageRenderer.js +19 -0
  549. package/modules/ThumbnailRenderers/GridItemImageRenderer.js.map +1 -0
  550. package/modules/ThumbnailRenderers/TableItemDefaultRenderer.d.ts +2 -0
  551. package/modules/ThumbnailRenderers/TableItemDefaultRenderer.js +19 -0
  552. package/modules/ThumbnailRenderers/TableItemDefaultRenderer.js.map +1 -0
  553. package/modules/ThumbnailRenderers/TableItemImageRenderer.d.ts +2 -0
  554. package/modules/ThumbnailRenderers/TableItemImageRenderer.js +19 -0
  555. package/modules/ThumbnailRenderers/TableItemImageRenderer.js.map +1 -0
  556. package/package.json +32 -43
  557. package/routes.d.ts +4 -0
  558. package/routes.js +9 -0
  559. package/routes.js.map +1 -0
  560. package/tagsHelpers.d.ts +1 -1
  561. package/tagsHelpers.js +31 -37
  562. package/tagsHelpers.js.map +1 -1
  563. package/types.d.ts +55 -12
  564. package/types.js +1 -12
  565. package/types.js.map +1 -1
  566. package/components/BottomInfoBar/styled.d.ts +0 -21
  567. package/components/BottomInfoBar/styled.js +0 -81
  568. package/components/BottomInfoBar/styled.js.map +0 -1
  569. package/components/BulkActions/ActionEdit/ActionEdit.styled.d.ts +0 -28
  570. package/components/BulkActions/ActionEdit/ActionEdit.styled.js +0 -77
  571. package/components/BulkActions/ActionEdit/ActionEdit.styled.js.map +0 -1
  572. package/components/BulkActions/ActionEdit/BatchEditorDialog/RemoveOperation.d.ts +0 -7
  573. package/components/BulkActions/ActionEdit/BatchEditorDialog/RemoveOperation.js +0 -26
  574. package/components/BulkActions/ActionEdit/BatchEditorDialog/RemoveOperation.js.map +0 -1
  575. package/components/BulkActions/BulkActions.styled.d.ts +0 -13
  576. package/components/BulkActions/BulkActions.styled.js +0 -46
  577. package/components/BulkActions/BulkActions.styled.js.map +0 -1
  578. package/components/DropFilesHere/DropFilesHere.d.ts +0 -8
  579. package/components/DropFilesHere/DropFilesHere.js +0 -28
  580. package/components/DropFilesHere/DropFilesHere.js.map +0 -1
  581. package/components/DropFilesHere/index.d.ts +0 -1
  582. package/components/DropFilesHere/index.js +0 -18
  583. package/components/DropFilesHere/index.js.map +0 -1
  584. package/components/DropFilesHere/styled.d.ts +0 -22
  585. package/components/DropFilesHere/styled.js +0 -61
  586. package/components/DropFilesHere/styled.js.map +0 -1
  587. package/components/FileDetails/components/Flex.d.ts +0 -7
  588. package/components/FileDetails/components/Flex.js +0 -48
  589. package/components/FileDetails/components/Flex.js.map +0 -1
  590. package/components/FileDetails/components/Footer.d.ts +0 -2
  591. package/components/FileDetails/components/Footer.js +0 -40
  592. package/components/FileDetails/components/Footer.js.map +0 -1
  593. package/components/FileDetails/components/Header.d.ts +0 -2
  594. package/components/FileDetails/components/Header.js +0 -40
  595. package/components/FileDetails/components/Header.js.map +0 -1
  596. package/components/FileDetails/components/PreviewMeta.d.ts +0 -2
  597. package/components/FileDetails/components/PreviewMeta.js +0 -31
  598. package/components/FileDetails/components/PreviewMeta.js.map +0 -1
  599. package/components/FileDetails/components/TypeAndSize.d.ts +0 -2
  600. package/components/FileDetails/components/TypeAndSize.js +0 -67
  601. package/components/FileDetails/components/TypeAndSize.js.map +0 -1
  602. package/components/Grid/styled.d.ts +0 -41
  603. package/components/Grid/styled.js +0 -137
  604. package/components/Grid/styled.js.map +0 -1
  605. package/components/NoPermission/NoPermission.d.ts +0 -2
  606. package/components/NoPermission/NoPermission.js +0 -25
  607. package/components/NoPermission/NoPermission.js.map +0 -1
  608. package/components/NoPermission/index.d.ts +0 -1
  609. package/components/NoPermission/index.js +0 -18
  610. package/components/NoPermission/index.js.map +0 -1
  611. package/components/NoPermission/styled.d.ts +0 -24
  612. package/components/NoPermission/styled.js +0 -97
  613. package/components/NoPermission/styled.js.map +0 -1
  614. package/components/NoResults/styled.d.ts +0 -5
  615. package/components/NoResults/styled.js +0 -25
  616. package/components/NoResults/styled.js.map +0 -1
  617. package/components/Table/Cells/Cells.styled.d.ts +0 -12
  618. package/components/Table/Cells/Cells.styled.js +0 -54
  619. package/components/Table/Cells/Cells.styled.js.map +0 -1
  620. package/components/Title/Title.d.ts +0 -5
  621. package/components/Title/Title.js +0 -21
  622. package/components/Title/Title.js.map +0 -1
  623. package/components/Title/index.d.ts +0 -1
  624. package/components/Title/index.js +0 -18
  625. package/components/Title/index.js.map +0 -1
  626. package/components/Title/styled.d.ts +0 -4
  627. package/components/Title/styled.js +0 -26
  628. package/components/Title/styled.js.map +0 -1
  629. package/components/UploadStatus/assets/check.svg +0 -3
  630. package/components/UploadStatus/assets/loading.svg +0 -17
  631. package/components/UploadStatus/styled.d.ts +0 -39
  632. package/components/UploadStatus/styled.js +0 -127
  633. package/components/UploadStatus/styled.js.map +0 -1
  634. package/components/fields/Aliases.d.ts +0 -2
  635. package/components/fields/Aliases.js +0 -136
  636. package/components/fields/Aliases.js.map +0 -1
  637. package/modules/FileManagerRenderer/FileManagerView/NavigateFolderProvider.d.ts +0 -4
  638. package/modules/FileManagerRenderer/FileManagerView/NavigateFolderProvider.js +0 -37
  639. package/modules/FileManagerRenderer/FileManagerView/NavigateFolderProvider.js.map +0 -1
  640. package/modules/FileManagerRenderer/FileManagerView/components/Filters.js +0 -33
  641. package/modules/FileManagerRenderer/FileManagerView/components/Filters.js.map +0 -1
  642. package/modules/FileManagerRenderer/FileManagerView/components/SearchWidget.js +0 -98
  643. package/modules/FileManagerRenderer/FileManagerView/components/SearchWidget.js.map +0 -1
  644. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/Empty.js +0 -19
  645. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/Empty.js.map +0 -1
  646. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/Tag.js +0 -29
  647. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/Tag.js.map +0 -1
  648. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/TagsList.js +0 -74
  649. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/TagsList.js.map +0 -1
  650. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/index.d.ts +0 -1
  651. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/index.js +0 -18
  652. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/index.js.map +0 -1
  653. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/styled.d.ts +0 -21
  654. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/styled.js +0 -61
  655. package/modules/FileManagerRenderer/FileManagerView/components/TagsList/styled.js.map +0 -1
  656. package/modules/HeadlessCms/fileRenderer/File.d.ts +0 -10
  657. package/modules/HeadlessCms/fileRenderer/File.js +0 -86
  658. package/modules/HeadlessCms/fileRenderer/File.js.map +0 -1
  659. package/modules/Settings/plugins/installation.d.ts +0 -3
  660. package/modules/Settings/plugins/installation.js +0 -96
  661. package/modules/Settings/plugins/installation.js.map +0 -1
  662. package/modules/Settings/plugins/permissionRenderer/FileManagerPermissions.d.ts +0 -14
  663. package/modules/Settings/plugins/permissionRenderer/FileManagerPermissions.js +0 -232
  664. package/modules/Settings/plugins/permissionRenderer/FileManagerPermissions.js.map +0 -1
  665. package/modules/Settings/plugins/permissionRenderer/index.d.ts +0 -3
  666. package/modules/Settings/plugins/permissionRenderer/index.js +0 -29
  667. package/modules/Settings/plugins/permissionRenderer/index.js.map +0 -1
  668. package/modules/ThumbnailRenderers/DefaultRenderer.d.ts +0 -2
  669. package/modules/ThumbnailRenderers/DefaultRenderer.js +0 -25
  670. package/modules/ThumbnailRenderers/DefaultRenderer.js.map +0 -1
  671. package/modules/ThumbnailRenderers/ImageRenderer.d.ts +0 -2
  672. package/modules/ThumbnailRenderers/ImageRenderer.js +0 -29
  673. package/modules/ThumbnailRenderers/ImageRenderer.js.map +0 -1
  674. /package/{modules/FileManagerRenderer/FileManagerView/components → components/Filters}/Filters.d.ts +0 -0
  675. /package/{modules/FileManagerRenderer/FileManagerView/components → components/SearchWidget}/SearchWidget.d.ts +0 -0
@@ -0,0 +1,45 @@
1
+ import React from "react";
2
+ import type { ImageEditorTool, ToolbarTool } from "./toolbar/types.js";
3
+ interface RenderPropArgs {
4
+ render: () => React.ReactNode;
5
+ getCanvasDataUrl: () => string;
6
+ activeTool: ImageEditorTool | null;
7
+ applyActiveTool: () => Promise<void>;
8
+ cancelActiveTool: () => Promise<void>;
9
+ }
10
+ interface ImageEditorPropsPropsOptions {
11
+ autoEnable: boolean;
12
+ }
13
+ interface ImageEditorProps {
14
+ src: string;
15
+ tools: ToolbarTool[];
16
+ options?: {
17
+ flip: ImageEditorPropsPropsOptions;
18
+ filter: ImageEditorPropsPropsOptions;
19
+ crop: ImageEditorPropsPropsOptions;
20
+ rotate: ImageEditorPropsPropsOptions;
21
+ };
22
+ onToolActivate?: () => void;
23
+ onToolDeactivate?: () => void;
24
+ children?: (props: RenderPropArgs) => React.ReactNode;
25
+ }
26
+ interface ImageEditorState {
27
+ tool: ImageEditorTool | null;
28
+ src: string;
29
+ }
30
+ declare class ImageEditor extends React.Component<ImageEditorProps, ImageEditorState> {
31
+ static defaultProps: Partial<ImageEditorProps>;
32
+ state: ImageEditorState;
33
+ canvas: React.RefObject<HTMLCanvasElement>;
34
+ image?: HTMLImageElement;
35
+ componentDidMount(): void;
36
+ private readonly updateCanvas;
37
+ private readonly activateTool;
38
+ private readonly deactivateTool;
39
+ readonly getCanvasDataUrl: () => string;
40
+ private readonly applyActiveTool;
41
+ private readonly cancelActiveTool;
42
+ private readonly getToolOptions;
43
+ render(): React.ReactNode;
44
+ }
45
+ export { ImageEditor };
@@ -0,0 +1,218 @@
1
+ import React from "react";
2
+ import { Button } from "@webiny/admin-ui";
3
+ import { flip, filter, crop, rotate } from "./toolbar/index.js";
4
+ /**
5
+ * Package load-script does not have types.
6
+ */
7
+ // @ts-expect-error
8
+ import loadScript from "load-script";
9
+ const toolbar = {
10
+ flip,
11
+ filter,
12
+ crop,
13
+ rotate
14
+ };
15
+ const initScripts = () => {
16
+ return new Promise(resolve => {
17
+ // @ts-expect-error
18
+ if (window.Caman) {
19
+ return resolve();
20
+ }
21
+ return loadScript("https://cdnjs.cloudflare.com/ajax/libs/camanjs/4.1.2/caman.full.min.js", resolve);
22
+ });
23
+ };
24
+ class ImageEditor extends React.Component {
25
+ static defaultProps = {
26
+ tools: ["crop", "flip", "rotate", "filter"]
27
+ };
28
+ state = {
29
+ tool: null,
30
+ src: ""
31
+ };
32
+ canvas = /*#__PURE__*/React.createRef();
33
+ componentDidMount() {
34
+ initScripts().then(() => {
35
+ this.updateCanvas();
36
+ setTimeout(() => {
37
+ const {
38
+ options
39
+ } = this.props;
40
+ if (!options || typeof options !== "object") {
41
+ return;
42
+ }
43
+ for (const key in options) {
44
+ const option = options[key];
45
+ if (option.autoEnable === true) {
46
+ const tool = toolbar[key];
47
+ tool && this.activateTool(tool);
48
+ break;
49
+ }
50
+ }
51
+ }, 250);
52
+ });
53
+ }
54
+ updateCanvas = () => {
55
+ const {
56
+ src
57
+ } = this.props;
58
+ this.image = new window.Image();
59
+ const canvas = this.canvas.current;
60
+ if (canvas) {
61
+ this.image.onload = () => {
62
+ if (this.image) {
63
+ canvas.width = this.image.width;
64
+ canvas.height = this.image.height;
65
+ const ctx = canvas.getContext("2d");
66
+ ctx.drawImage(this.image, 0, 0);
67
+ }
68
+ };
69
+ this.image.src = src;
70
+ }
71
+ };
72
+ activateTool = tool => {
73
+ if (typeof tool === "string") {
74
+ tool = toolbar[tool];
75
+ }
76
+ this.setState({
77
+ tool
78
+ }, () => {
79
+ const tt = tool;
80
+ typeof tt.onActivate === "function" && tt.onActivate({
81
+ canvas: this.canvas,
82
+ options: this.getToolOptions(tt)
83
+ });
84
+ });
85
+ };
86
+ deactivateTool = () => {
87
+ this.setState({
88
+ tool: null
89
+ });
90
+ };
91
+ getCanvasDataUrl = () => {
92
+ const canvas = this.canvas.current;
93
+ if (canvas) {
94
+ const {
95
+ src
96
+ } = this.props;
97
+ if (src.startsWith("data:image/jpeg;")) {
98
+ return canvas.toDataURL("image/jpeg", 1.0);
99
+ }
100
+ return canvas.toDataURL();
101
+ }
102
+ return "";
103
+ };
104
+ applyActiveTool = async () => {
105
+ const {
106
+ tool
107
+ } = this.state;
108
+ if (!tool) {
109
+ return;
110
+ }
111
+ if (tool.apply) {
112
+ await tool.apply({
113
+ canvas: this.canvas
114
+ });
115
+ }
116
+ this.deactivateTool();
117
+ };
118
+ cancelActiveTool = async () => {
119
+ const {
120
+ tool
121
+ } = this.state;
122
+ if (!tool) {
123
+ return;
124
+ }
125
+ if (tool.cancel) {
126
+ await tool.cancel({
127
+ canvas: this.canvas
128
+ });
129
+ }
130
+ this.deactivateTool();
131
+ };
132
+ getToolOptions = tool => {
133
+ const {
134
+ options
135
+ } = this.props;
136
+ if (!options || typeof options !== "object") {
137
+ return {};
138
+ }
139
+ return options[tool.name] || {};
140
+ };
141
+ render() {
142
+ const {
143
+ src,
144
+ tools,
145
+ children
146
+ } = this.props;
147
+ const {
148
+ tool
149
+ } = this.state;
150
+ const editor = /*#__PURE__*/React.createElement("div", {
151
+ className: "w-full h-full flex flex-col gap-md overflow-hidden"
152
+ }, /*#__PURE__*/React.createElement("div", {
153
+ className: "flex justify-center items-center w-full"
154
+ }, tools.map(key => {
155
+ const tool = toolbar[key];
156
+ if (!tool) {
157
+ return null;
158
+ }
159
+ return /*#__PURE__*/React.createElement("div", {
160
+ key: key,
161
+ className: this.state.tool ? "opacity-50 cursor pointer-events-none" : ""
162
+ }, tool.icon({
163
+ activateTool: () => this.activateTool(tool)
164
+ }));
165
+ })), /*#__PURE__*/React.createElement("div", {
166
+ className: "w-full"
167
+ }, tool ? /*#__PURE__*/React.createElement(React.Fragment, null, typeof tool.renderForm === "function" && tool.renderForm({
168
+ options: this.getToolOptions(tool),
169
+ image: this.image,
170
+ canvas: this.canvas
171
+ }), /*#__PURE__*/React.createElement("div", {
172
+ className: "flex justify-center gap-sm mt-sm"
173
+ }, /*#__PURE__*/React.createElement(Button, {
174
+ variant: "secondary",
175
+ text: "Cancel",
176
+ "data-testid": "button-cancel",
177
+ onClick: () => {
178
+ this.cancelActiveTool();
179
+ }
180
+ }), /*#__PURE__*/React.createElement(Button, {
181
+ variant: "primary",
182
+ text: "Apply",
183
+ "data-testid": "button-apply",
184
+ onClick: () => {
185
+ this.applyActiveTool();
186
+ }
187
+ }))) : /*#__PURE__*/React.createElement("div", {
188
+ className: "text-center"
189
+ }, "Select a tool to start working on your image.")), /*#__PURE__*/React.createElement("div", {
190
+ className: "flex justify-center items-center w-full bg-neutral-dimmed rounded-md overflow-hidden",
191
+ style: {
192
+ height: "calc(100vh - 256px)"
193
+ }
194
+ }, /*#__PURE__*/React.createElement("canvas", {
195
+ key: src,
196
+ id: "canvas",
197
+ style: {
198
+ maxWidth: "100%",
199
+ maxHeight: "100%"
200
+ },
201
+ ref: this.canvas
202
+ })));
203
+ if (typeof children === "function") {
204
+ return children({
205
+ render: () => editor,
206
+ // canvas: this.canvas,
207
+ getCanvasDataUrl: this.getCanvasDataUrl,
208
+ activeTool: this.state.tool,
209
+ applyActiveTool: this.applyActiveTool,
210
+ cancelActiveTool: this.cancelActiveTool
211
+ });
212
+ }
213
+ return editor;
214
+ }
215
+ }
216
+ export { ImageEditor };
217
+
218
+ //# sourceMappingURL=ImageEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Button","flip","filter","crop","rotate","loadScript","toolbar","initScripts","Promise","resolve","window","Caman","ImageEditor","Component","defaultProps","tools","state","tool","src","canvas","createRef","componentDidMount","then","updateCanvas","setTimeout","options","props","key","option","autoEnable","activateTool","image","Image","current","onload","width","height","ctx","getContext","drawImage","setState","tt","onActivate","getToolOptions","deactivateTool","getCanvasDataUrl","startsWith","toDataURL","applyActiveTool","apply","cancelActiveTool","cancel","name","render","children","editor","createElement","className","map","icon","Fragment","renderForm","variant","text","onClick","style","id","maxWidth","maxHeight","ref","activeTool"],"sources":["ImageEditor.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"@webiny/admin-ui\";\nimport { flip, filter, crop, rotate } from \"./toolbar/index.js\";\nimport type { ImageEditorTool, ToolbarTool } from \"./toolbar/types.js\";\n/**\n * Package load-script does not have types.\n */\n// @ts-expect-error\nimport loadScript from \"load-script\";\n\nconst toolbar = {\n flip,\n filter,\n crop,\n rotate\n};\n\nconst initScripts = (): Promise<string> => {\n return new Promise((resolve: any) => {\n // @ts-expect-error\n if (window.Caman) {\n return resolve();\n }\n return loadScript(\n \"https://cdnjs.cloudflare.com/ajax/libs/camanjs/4.1.2/caman.full.min.js\",\n resolve\n );\n });\n};\n\ninterface RenderPropArgs {\n render: () => React.ReactNode;\n getCanvasDataUrl: () => string;\n activeTool: ImageEditorTool | null;\n applyActiveTool: () => Promise<void>;\n cancelActiveTool: () => Promise<void>;\n}\n\ninterface ImageEditorPropsPropsOptions {\n autoEnable: boolean;\n}\n\ninterface ImageEditorProps {\n src: string;\n tools: ToolbarTool[];\n options?: {\n flip: ImageEditorPropsPropsOptions;\n filter: ImageEditorPropsPropsOptions;\n crop: ImageEditorPropsPropsOptions;\n rotate: ImageEditorPropsPropsOptions;\n };\n onToolActivate?: () => void;\n onToolDeactivate?: () => void;\n children?: (props: RenderPropArgs) => React.ReactNode;\n}\n\ninterface ImageEditorState {\n tool: ImageEditorTool | null;\n src: string;\n}\n\nclass ImageEditor extends React.Component<ImageEditorProps, ImageEditorState> {\n static defaultProps: Partial<ImageEditorProps> = {\n tools: [\"crop\", \"flip\", \"rotate\", \"filter\"]\n };\n\n public override state: ImageEditorState = {\n tool: null,\n src: \"\"\n };\n\n public canvas = React.createRef<HTMLCanvasElement>();\n public image?: HTMLImageElement;\n\n public override componentDidMount() {\n initScripts().then(() => {\n this.updateCanvas();\n setTimeout(() => {\n const { options } = this.props;\n if (!options || typeof options !== \"object\") {\n return;\n }\n for (const key in options) {\n const option = options[key as ToolbarTool];\n if (option.autoEnable === true) {\n const tool: ImageEditorTool | null = toolbar[key as ToolbarTool];\n tool && this.activateTool(tool);\n break;\n }\n }\n }, 250);\n });\n }\n\n private readonly updateCanvas = (): void => {\n const { src } = this.props;\n this.image = new window.Image();\n const canvas = this.canvas.current;\n if (canvas) {\n this.image.onload = () => {\n if (this.image) {\n canvas.width = this.image.width;\n canvas.height = this.image.height;\n const ctx = canvas.getContext(\"2d\") as CanvasRenderingContext2D;\n ctx.drawImage(this.image, 0, 0);\n }\n };\n\n this.image.src = src;\n }\n };\n\n private readonly activateTool = (tool: ToolbarTool | ImageEditorTool): void => {\n if (typeof tool === \"string\") {\n tool = toolbar[tool];\n }\n\n this.setState({ tool }, () => {\n const tt = tool as ImageEditorTool;\n typeof tt.onActivate === \"function\" &&\n tt.onActivate({ canvas: this.canvas, options: this.getToolOptions(tt) });\n });\n };\n\n private readonly deactivateTool = (): void => {\n this.setState({\n tool: null\n });\n };\n\n public readonly getCanvasDataUrl = (): string => {\n const canvas = this.canvas.current as HTMLCanvasElement;\n if (canvas) {\n const { src } = this.props;\n if (src.startsWith(\"data:image/jpeg;\")) {\n return canvas.toDataURL(\"image/jpeg\", 1.0);\n }\n\n return canvas.toDataURL();\n }\n\n return \"\";\n };\n\n private readonly applyActiveTool = async (): Promise<void> => {\n const { tool } = this.state;\n if (!tool) {\n return;\n }\n\n if (tool.apply) {\n await tool.apply({\n canvas: this.canvas\n });\n }\n this.deactivateTool();\n };\n\n private readonly cancelActiveTool = async (): Promise<void> => {\n const { tool } = this.state;\n if (!tool) {\n return;\n }\n\n if (tool.cancel) {\n await tool.cancel({\n canvas: this.canvas\n });\n }\n this.deactivateTool();\n };\n\n private readonly getToolOptions = (\n tool: ImageEditorTool\n ): Partial<ImageEditorPropsPropsOptions> => {\n const { options } = this.props;\n if (!options || typeof options !== \"object\") {\n return {};\n }\n\n return options[tool.name as ToolbarTool] || {};\n };\n\n public override render(): React.ReactNode {\n const { src, tools, children } = this.props;\n const { tool } = this.state;\n const editor = (\n <div className={\"w-full h-full flex flex-col gap-md overflow-hidden\"}>\n <div className={\"flex justify-center items-center w-full\"}>\n {tools.map(key => {\n const tool: ImageEditorTool = toolbar[key];\n if (!tool) {\n return null;\n }\n\n return (\n <div\n key={key}\n className={\n this.state.tool ? \"opacity-50 cursor pointer-events-none\" : \"\"\n }\n >\n {tool.icon({\n activateTool: () => this.activateTool(tool)\n })}\n </div>\n );\n })}\n </div>\n <div className={\"w-full\"}>\n {tool ? (\n <>\n {typeof tool.renderForm === \"function\" &&\n tool.renderForm({\n options: this.getToolOptions(tool as ImageEditorTool),\n image: this.image as HTMLImageElement,\n canvas: this.canvas\n })}\n\n <div className={\"flex justify-center gap-sm mt-sm\"}>\n <Button\n variant={\"secondary\"}\n text={\"Cancel\"}\n data-testid=\"button-cancel\"\n onClick={() => {\n this.cancelActiveTool();\n }}\n />\n <Button\n variant={\"primary\"}\n text={\"Apply\"}\n data-testid=\"button-apply\"\n onClick={() => {\n this.applyActiveTool();\n }}\n />\n </div>\n </>\n ) : (\n <div className={\"text-center\"}>\n Select a tool to start working on your image.\n </div>\n )}\n </div>\n <div\n className={\n \"flex justify-center items-center w-full bg-neutral-dimmed rounded-md overflow-hidden\"\n }\n style={{ height: \"calc(100vh - 256px)\" }}\n >\n <canvas\n key={src}\n id={\"canvas\"}\n style={{ maxWidth: \"100%\", maxHeight: \"100%\" }}\n ref={this.canvas as React.Ref<any>}\n />\n </div>\n </div>\n );\n\n if (typeof children === \"function\") {\n return children({\n render: () => editor,\n // canvas: this.canvas,\n getCanvasDataUrl: this.getCanvasDataUrl,\n activeTool: this.state.tool,\n applyActiveTool: this.applyActiveTool,\n cancelActiveTool: this.cancelActiveTool\n });\n }\n\n return editor;\n }\n}\n\nexport { ImageEditor };\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ import React from "react";
2
+ interface ImageEditorDialogProps {
3
+ dialogZIndex?: number;
4
+ onClose?: () => void;
5
+ open?: boolean;
6
+ /**
7
+ * We would need to drill down a lot to give correct options.
8
+ * TODO: figure out some other way.
9
+ */
10
+ options?: any;
11
+ src?: string;
12
+ onAccept: (src: string) => void;
13
+ "data-testid"?: string;
14
+ }
15
+ export declare const ImageEditorDialog: (props: ImageEditorDialogProps) => React.JSX.Element;
16
+ export {};
@@ -0,0 +1,53 @@
1
+ import React, { useState } from "react";
2
+ import { ImageEditor } from "./ImageEditor.js";
3
+ import { Dialog, OverlayLoader } from "@webiny/admin-ui";
4
+ export const ImageEditorDialog = props => {
5
+ const {
6
+ src,
7
+ options,
8
+ onAccept,
9
+ onClose,
10
+ open,
11
+ dialogZIndex,
12
+ ...dialogProps
13
+ } = props;
14
+ const imageEditor = /*#__PURE__*/React.createRef();
15
+ const [isSaving, setIsSaving] = useState(false);
16
+ const onSave = async () => {
17
+ try {
18
+ setIsSaving(true);
19
+ const url = imageEditor.current ? imageEditor.current.getCanvasDataUrl() : "";
20
+ await onAccept(url);
21
+ } catch (e) {
22
+ console.log(e);
23
+ } finally {
24
+ setIsSaving(false);
25
+ }
26
+ };
27
+ return /*#__PURE__*/React.createElement(Dialog, Object.assign({
28
+ style: {
29
+ zIndex: dialogZIndex
30
+ },
31
+ title: "Edit Image",
32
+ size: "full",
33
+ open: open,
34
+ onClose: onClose
35
+ }, dialogProps, {
36
+ actions: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Dialog.CancelAction, null), /*#__PURE__*/React.createElement(Dialog.ConfirmAction, {
37
+ text: "Save",
38
+ "data-testid": "dialog-accept",
39
+ onClick: onSave,
40
+ disabled: isSaving
41
+ }))
42
+ }), isSaving && /*#__PURE__*/React.createElement(OverlayLoader, {
43
+ text: "Creating a new version of the image"
44
+ }), /*#__PURE__*/React.createElement(ImageEditor, {
45
+ ref: imageEditor,
46
+ src: src,
47
+ options: options
48
+ }, ({
49
+ render
50
+ }) => render()));
51
+ };
52
+
53
+ //# sourceMappingURL=ImageEditorDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useState","ImageEditor","Dialog","OverlayLoader","ImageEditorDialog","props","src","options","onAccept","onClose","open","dialogZIndex","dialogProps","imageEditor","createRef","isSaving","setIsSaving","onSave","url","current","getCanvasDataUrl","e","console","log","createElement","Object","assign","style","zIndex","title","size","actions","Fragment","CancelAction","ConfirmAction","text","onClick","disabled","ref","render"],"sources":["ImageEditorDialog.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { ImageEditor } from \"./ImageEditor.js\";\nimport { Dialog, OverlayLoader } from \"@webiny/admin-ui\";\n\ninterface ImageEditorDialogProps {\n dialogZIndex?: number;\n onClose?: () => void;\n open?: boolean;\n /**\n * We would need to drill down a lot to give correct options.\n * TODO: figure out some other way.\n */\n options?: any;\n src?: string;\n onAccept: (src: string) => void;\n \"data-testid\"?: string;\n}\n\nexport const ImageEditorDialog = (props: ImageEditorDialogProps) => {\n const { src, options, onAccept, onClose, open, dialogZIndex, ...dialogProps } = props;\n const imageEditor = React.createRef<ImageEditor>();\n const [isSaving, setIsSaving] = useState(false);\n\n const onSave = async () => {\n try {\n setIsSaving(true);\n const url = imageEditor.current ? imageEditor.current.getCanvasDataUrl() : \"\";\n await onAccept(url);\n } catch (e) {\n console.log(e);\n } finally {\n setIsSaving(false);\n }\n };\n\n return (\n <Dialog\n style={{ zIndex: dialogZIndex }}\n title={\"Edit Image\"}\n size={\"full\"}\n open={open}\n onClose={onClose}\n {...dialogProps}\n actions={\n <>\n <Dialog.CancelAction />\n <Dialog.ConfirmAction\n text={\"Save\"}\n data-testid=\"dialog-accept\"\n onClick={onSave}\n disabled={isSaving}\n />\n </>\n }\n >\n {isSaving && <OverlayLoader text={\"Creating a new version of the image\"} />}\n <ImageEditor ref={imageEditor} src={src} options={options}>\n {({ render }) => render()}\n </ImageEditor>\n </Dialog>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,SAASC,WAAW;AACpB,SAASC,MAAM,EAAEC,aAAa,QAAQ,kBAAkB;AAgBxD,OAAO,MAAMC,iBAAiB,GAAIC,KAA6B,IAAK;EAChE,MAAM;IAAEC,GAAG;IAAEC,OAAO;IAAEC,QAAQ;IAAEC,OAAO;IAAEC,IAAI;IAAEC,YAAY;IAAE,GAAGC;EAAY,CAAC,GAAGP,KAAK;EACrF,MAAMQ,WAAW,gBAAGd,KAAK,CAACe,SAAS,CAAc,CAAC;EAClD,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGhB,QAAQ,CAAC,KAAK,CAAC;EAE/C,MAAMiB,MAAM,GAAG,MAAAA,CAAA,KAAY;IACvB,IAAI;MACAD,WAAW,CAAC,IAAI,CAAC;MACjB,MAAME,GAAG,GAAGL,WAAW,CAACM,OAAO,GAAGN,WAAW,CAACM,OAAO,CAACC,gBAAgB,CAAC,CAAC,GAAG,EAAE;MAC7E,MAAMZ,QAAQ,CAACU,GAAG,CAAC;IACvB,CAAC,CAAC,OAAOG,CAAC,EAAE;MACRC,OAAO,CAACC,GAAG,CAACF,CAAC,CAAC;IAClB,CAAC,SAAS;MACNL,WAAW,CAAC,KAAK,CAAC;IACtB;EACJ,CAAC;EAED,oBACIjB,KAAA,CAAAyB,aAAA,CAACtB,MAAM,EAAAuB,MAAA,CAAAC,MAAA;IACHC,KAAK,EAAE;MAAEC,MAAM,EAAEjB;IAAa,CAAE;IAChCkB,KAAK,EAAE,YAAa;IACpBC,IAAI,EAAE,MAAO;IACbpB,IAAI,EAAEA,IAAK;IACXD,OAAO,EAAEA;EAAQ,GACbG,WAAW;IACfmB,OAAO,eACHhC,KAAA,CAAAyB,aAAA,CAAAzB,KAAA,CAAAiC,QAAA,qBACIjC,KAAA,CAAAyB,aAAA,CAACtB,MAAM,CAAC+B,YAAY,MAAE,CAAC,eACvBlC,KAAA,CAAAyB,aAAA,CAACtB,MAAM,CAACgC,aAAa;MACjBC,IAAI,EAAE,MAAO;MACb,eAAY,eAAe;MAC3BC,OAAO,EAAEnB,MAAO;MAChBoB,QAAQ,EAAEtB;IAAS,CACtB,CACH;EACL,IAEAA,QAAQ,iBAAIhB,KAAA,CAAAyB,aAAA,CAACrB,aAAa;IAACgC,IAAI,EAAE;EAAsC,CAAE,CAAC,eAC3EpC,KAAA,CAAAyB,aAAA,CAACvB,WAAW;IAACqC,GAAG,EAAEzB,WAAY;IAACP,GAAG,EAAEA,GAAI;IAACC,OAAO,EAAEA;EAAQ,GACrD,CAAC;IAAEgC;EAAO,CAAC,KAAKA,MAAM,CAAC,CACf,CACT,CAAC;AAEjB,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export * from "./ImageEditor.js";
@@ -0,0 +1,3 @@
1
+ export * from "./ImageEditor.js";
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./ImageEditor.js\";\n"],"mappings":"AAAA","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import type { ImageEditorTool } from "./types.js";
2
+ import "cropperjs/dist/cropper.css";
3
+ declare const tool: ImageEditorTool;
4
+ export default tool;
@@ -0,0 +1,67 @@
1
+ import React from "react";
2
+ import { IconButton, Tooltip } from "@webiny/admin-ui";
3
+ import { ReactComponent as CropIcon } from "@webiny/icons/crop.svg";
4
+ import Cropper from "cropperjs";
5
+ import "cropperjs/dist/cropper.css";
6
+ let cropper = undefined;
7
+ const renderForm = () => {
8
+ return /*#__PURE__*/React.createElement("div", {
9
+ style: {
10
+ textAlign: "center"
11
+ }
12
+ }, "Click and drag to crop a portion of the image. Hold Shift to persist aspect ratio.");
13
+ };
14
+ const tool = {
15
+ name: "crop",
16
+ icon({
17
+ activateTool
18
+ }) {
19
+ return /*#__PURE__*/React.createElement(Tooltip, {
20
+ side: "bottom",
21
+ content: "Crop",
22
+ trigger: /*#__PURE__*/React.createElement(IconButton, {
23
+ variant: "ghost",
24
+ icon: /*#__PURE__*/React.createElement(CropIcon, null),
25
+ onClick: () => activateTool("crop"),
26
+ "data-testid": "crop-item"
27
+ })
28
+ });
29
+ },
30
+ renderForm,
31
+ onActivate: ({
32
+ canvas,
33
+ options
34
+ }) => {
35
+ cropper = new Cropper(canvas.current, options);
36
+ },
37
+ cancel: () => cropper && cropper.destroy(),
38
+ apply: ({
39
+ canvas
40
+ }) => {
41
+ return new Promise(resolve => {
42
+ if (!cropper) {
43
+ resolve();
44
+ return;
45
+ }
46
+ const current = canvas.current;
47
+ const src = cropper.getCroppedCanvas().toDataURL();
48
+ if (current) {
49
+ const image = new window.Image();
50
+ const ctx = current.getContext("2d");
51
+ image.onload = () => {
52
+ ctx.drawImage(image, 0, 0);
53
+ current.width = image.width;
54
+ current.height = image.height;
55
+ ctx.drawImage(image, 0, 0);
56
+ resolve();
57
+ };
58
+ image.src = src;
59
+ }
60
+ cropper.destroy();
61
+ cropper = undefined;
62
+ });
63
+ }
64
+ };
65
+ export default tool;
66
+
67
+ //# sourceMappingURL=crop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","IconButton","Tooltip","ReactComponent","CropIcon","Cropper","cropper","undefined","renderForm","createElement","style","textAlign","tool","name","icon","activateTool","side","content","trigger","variant","onClick","onActivate","canvas","options","current","cancel","destroy","apply","Promise","resolve","src","getCroppedCanvas","toDataURL","image","window","Image","ctx","getContext","onload","drawImage","width","height"],"sources":["crop.tsx"],"sourcesContent":["import React from \"react\";\nimport type { ImageEditorTool } from \"./types.js\";\nimport { IconButton, Tooltip } from \"@webiny/admin-ui\";\nimport { ReactComponent as CropIcon } from \"@webiny/icons/crop.svg\";\nimport Cropper from \"cropperjs\";\nimport \"cropperjs/dist/cropper.css\";\n\nlet cropper: Cropper | undefined = undefined;\n\nconst renderForm = () => {\n return (\n <div style={{ textAlign: \"center\" }}>\n Click and drag to crop a portion of the image. Hold Shift to persist aspect ratio.\n </div>\n );\n};\n\nconst tool: ImageEditorTool = {\n name: \"crop\",\n icon({ activateTool }) {\n return (\n <Tooltip\n side={\"bottom\"}\n content={\"Crop\"}\n trigger={\n <IconButton\n variant={\"ghost\"}\n icon={<CropIcon />}\n onClick={() => activateTool(\"crop\")}\n data-testid={\"crop-item\"}\n />\n }\n />\n );\n },\n renderForm,\n onActivate: ({ canvas, options }) => {\n cropper = new Cropper(canvas.current as HTMLCanvasElement, options);\n },\n cancel: () => cropper && cropper.destroy(),\n apply: ({ canvas }) => {\n return new Promise((resolve: any) => {\n if (!cropper) {\n resolve();\n return;\n }\n\n const current = canvas.current;\n const src = cropper.getCroppedCanvas().toDataURL();\n if (current) {\n const image = new window.Image();\n const ctx = current.getContext(\"2d\") as CanvasRenderingContext2D;\n image.onload = () => {\n ctx.drawImage(image, 0, 0);\n current.width = image.width;\n current.height = image.height;\n\n ctx.drawImage(image, 0, 0);\n resolve();\n };\n image.src = src;\n }\n\n cropper.destroy();\n cropper = undefined;\n });\n }\n};\n\nexport default tool;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,UAAU,EAAEC,OAAO,QAAQ,kBAAkB;AACtD,SAASC,cAAc,IAAIC,QAAQ,QAAQ,wBAAwB;AACnE,OAAOC,OAAO,MAAM,WAAW;AAC/B,OAAO,4BAA4B;AAEnC,IAAIC,OAA4B,GAAGC,SAAS;AAE5C,MAAMC,UAAU,GAAGA,CAAA,KAAM;EACrB,oBACIR,KAAA,CAAAS,aAAA;IAAKC,KAAK,EAAE;MAAEC,SAAS,EAAE;IAAS;EAAE,GAAC,oFAEhC,CAAC;AAEd,CAAC;AAED,MAAMC,IAAqB,GAAG;EAC1BC,IAAI,EAAE,MAAM;EACZC,IAAIA,CAAC;IAAEC;EAAa,CAAC,EAAE;IACnB,oBACIf,KAAA,CAAAS,aAAA,CAACP,OAAO;MACJc,IAAI,EAAE,QAAS;MACfC,OAAO,EAAE,MAAO;MAChBC,OAAO,eACHlB,KAAA,CAAAS,aAAA,CAACR,UAAU;QACPkB,OAAO,EAAE,OAAQ;QACjBL,IAAI,eAAEd,KAAA,CAAAS,aAAA,CAACL,QAAQ,MAAE,CAAE;QACnBgB,OAAO,EAAEA,CAAA,KAAML,YAAY,CAAC,MAAM,CAAE;QACpC,eAAa;MAAY,CAC5B;IACJ,CACJ,CAAC;EAEV,CAAC;EACDP,UAAU;EACVa,UAAU,EAAEA,CAAC;IAAEC,MAAM;IAAEC;EAAQ,CAAC,KAAK;IACjCjB,OAAO,GAAG,IAAID,OAAO,CAACiB,MAAM,CAACE,OAAO,EAAuBD,OAAO,CAAC;EACvE,CAAC;EACDE,MAAM,EAAEA,CAAA,KAAMnB,OAAO,IAAIA,OAAO,CAACoB,OAAO,CAAC,CAAC;EAC1CC,KAAK,EAAEA,CAAC;IAAEL;EAAO,CAAC,KAAK;IACnB,OAAO,IAAIM,OAAO,CAAEC,OAAY,IAAK;MACjC,IAAI,CAACvB,OAAO,EAAE;QACVuB,OAAO,CAAC,CAAC;QACT;MACJ;MAEA,MAAML,OAAO,GAAGF,MAAM,CAACE,OAAO;MAC9B,MAAMM,GAAG,GAAGxB,OAAO,CAACyB,gBAAgB,CAAC,CAAC,CAACC,SAAS,CAAC,CAAC;MAClD,IAAIR,OAAO,EAAE;QACT,MAAMS,KAAK,GAAG,IAAIC,MAAM,CAACC,KAAK,CAAC,CAAC;QAChC,MAAMC,GAAG,GAAGZ,OAAO,CAACa,UAAU,CAAC,IAAI,CAA6B;QAChEJ,KAAK,CAACK,MAAM,GAAG,MAAM;UACjBF,GAAG,CAACG,SAAS,CAACN,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;UAC1BT,OAAO,CAACgB,KAAK,GAAGP,KAAK,CAACO,KAAK;UAC3BhB,OAAO,CAACiB,MAAM,GAAGR,KAAK,CAACQ,MAAM;UAE7BL,GAAG,CAACG,SAAS,CAACN,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;UAC1BJ,OAAO,CAAC,CAAC;QACb,CAAC;QACDI,KAAK,CAACH,GAAG,GAAGA,GAAG;MACnB;MAEAxB,OAAO,CAACoB,OAAO,CAAC,CAAC;MACjBpB,OAAO,GAAGC,SAAS;IACvB,CAAC,CAAC;EACN;AACJ,CAAC;AAED,eAAeK,IAAI","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import type { ImageEditorTool } from "./types.js";
2
+ declare const tool: ImageEditorTool;
3
+ export default tool;
@@ -0,0 +1,167 @@
1
+ /**
2
+ * When using Caman, we added @ts-expect-error because it does not exist in packages, but it is loaded in packages/ui/src/ImageEditor/ImageEditor.tsx:38.
3
+ * TODO: use some other library to edit images
4
+ */
5
+ import React from "react";
6
+ import { ReactComponent as FilterIcon } from "@webiny/icons/tune.svg";
7
+ import debounce from "lodash/debounce.js";
8
+ import { Button, Grid, IconButton, Slider, Tooltip } from "@webiny/admin-ui";
9
+ const sliders = [{
10
+ key: "brightness",
11
+ label: "Brightness",
12
+ min: -100
13
+ }, {
14
+ key: "vibrance",
15
+ label: "Vibrance",
16
+ min: -100
17
+ }, {
18
+ key: "hue",
19
+ label: "Hue",
20
+ min: -100
21
+ }, {
22
+ key: "gamma",
23
+ label: "Gamma"
24
+ }, {
25
+ key: "clip",
26
+ label: "Clip"
27
+ }, {
28
+ key: "stackBlur",
29
+ label: "Blur"
30
+ }, {
31
+ key: "contrast",
32
+ label: "Contrast",
33
+ min: -100
34
+ }, {
35
+ key: "saturation",
36
+ label: "Saturation",
37
+ min: -100
38
+ }, {
39
+ key: "exposure",
40
+ label: "Exposure",
41
+ min: -100
42
+ }, {
43
+ key: "sepia",
44
+ label: "Sepia"
45
+ }, {
46
+ key: "noise",
47
+ label: "Noise"
48
+ }, {
49
+ key: "sharpen",
50
+ label: "Sharpen"
51
+ }];
52
+ class RenderForm extends React.Component {
53
+ state = {
54
+ processing: false,
55
+ values: {}
56
+ };
57
+ componentDidMount() {
58
+ this.resetFiltersValues();
59
+ }
60
+ applyFilters = debounce(() => {
61
+ const {
62
+ canvas
63
+ } = this.props;
64
+ const {
65
+ values
66
+ } = this.state;
67
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
68
+ const component = this;
69
+
70
+ // @ts-expect-error
71
+ Caman(canvas.current, function () {
72
+ // @ts-expect-error
73
+ this.revert(false);
74
+ Object.keys(values).forEach(
75
+ // @ts-expect-error
76
+ key => values[key] !== 0 && this[key] && this[key](values[key]));
77
+ // @ts-expect-error
78
+ this.render();
79
+ component.setState({
80
+ processing: false
81
+ });
82
+ });
83
+ }, 200);
84
+ resetFiltersValues = () => {
85
+ this.setState(state => {
86
+ sliders.reduce((output, current) => {
87
+ state.values[current.key] = 0;
88
+ return output;
89
+ }, {});
90
+ return state;
91
+ });
92
+ };
93
+ render() {
94
+ return /*#__PURE__*/React.createElement(Grid, null, /*#__PURE__*/React.createElement(React.Fragment, null, sliders.map(props => /*#__PURE__*/React.createElement(Grid.Column, {
95
+ span: 4,
96
+ key: props.key
97
+ }, /*#__PURE__*/React.createElement(Slider, Object.assign({
98
+ value: Number(this.state.values[props.key]),
99
+ min: 0,
100
+ max: 100,
101
+ disabled: this.state.processing,
102
+ onValueChange: value => {
103
+ this.setState(state => {
104
+ const values = {
105
+ ...state.values
106
+ };
107
+ values[props.key] = value;
108
+ return {
109
+ ...state,
110
+ processing: true,
111
+ values
112
+ };
113
+ }, this.applyFilters);
114
+ }
115
+ }, props))))), /*#__PURE__*/React.createElement(Grid.Column, {
116
+ span: 12,
117
+ className: "text-center"
118
+ }, /*#__PURE__*/React.createElement(Button, {
119
+ text: "Reset filters",
120
+ variant: "secondary",
121
+ onClick: () => {
122
+ this.setState({
123
+ processing: true
124
+ }, () => {
125
+ this.resetFiltersValues();
126
+ this.applyFilters();
127
+ this.setState({
128
+ processing: false
129
+ });
130
+ });
131
+ }
132
+ })));
133
+ }
134
+ }
135
+ const tool = {
136
+ name: "filter",
137
+ icon({
138
+ activateTool
139
+ }) {
140
+ return /*#__PURE__*/React.createElement(Tooltip, {
141
+ trigger: /*#__PURE__*/React.createElement(IconButton, {
142
+ variant: "ghost",
143
+ icon: /*#__PURE__*/React.createElement(FilterIcon, null),
144
+ onClick: () => activateTool("filter"),
145
+ "data-testid": "filter-item"
146
+ }),
147
+ content: "Filter"
148
+ });
149
+ },
150
+ renderForm(props) {
151
+ return /*#__PURE__*/React.createElement(RenderForm, props);
152
+ },
153
+ cancel: ({
154
+ canvas
155
+ }) => {
156
+ // @ts-expect-error
157
+ Caman(canvas.current, function () {
158
+ // @ts-expect-error
159
+ this.revert(false);
160
+ // @ts-expect-error
161
+ this.render();
162
+ });
163
+ }
164
+ };
165
+ export default tool;
166
+
167
+ //# sourceMappingURL=filter.js.map