@webiny/app-admin 0.0.0-mt-3 → 0.0.0-unstable.2af142b57e

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 (451) hide show
  1. package/assets/icons/slack-logo.svg +1 -1
  2. package/base/Admin.d.ts +7 -0
  3. package/base/Admin.js +41 -0
  4. package/base/Admin.js.map +1 -0
  5. package/base/Base.d.ts +2 -0
  6. package/base/Base.js +91 -0
  7. package/base/Base.js.map +1 -0
  8. package/base/plugins/AddGraphQLQuerySelection.d.ts +9 -0
  9. package/base/plugins/AddGraphQLQuerySelection.js +23 -0
  10. package/base/plugins/AddGraphQLQuerySelection.js.map +1 -0
  11. package/base/providers/ApolloProvider.d.ts +10 -0
  12. package/base/providers/ApolloProvider.js +21 -0
  13. package/base/providers/ApolloProvider.js.map +1 -0
  14. package/base/providers/TelemetryProvider.d.ts +2 -0
  15. package/base/providers/TelemetryProvider.js +31 -0
  16. package/base/providers/TelemetryProvider.js.map +1 -0
  17. package/base/providers/UiStateProvider.d.ts +2 -0
  18. package/base/providers/UiStateProvider.js +18 -0
  19. package/base/providers/UiStateProvider.js.map +1 -0
  20. package/base/providers/ViewCompositionProvider.d.ts +17 -0
  21. package/base/providers/ViewCompositionProvider.js +57 -0
  22. package/base/providers/ViewCompositionProvider.js.map +1 -0
  23. package/base/ui/Brand.d.ts +2 -0
  24. package/base/ui/Brand.js +15 -0
  25. package/base/ui/Brand.js.map +1 -0
  26. package/base/ui/CenteredView.d.ts +4 -0
  27. package/base/ui/CenteredView.js +35 -0
  28. package/base/ui/CenteredView.js.map +1 -0
  29. package/base/ui/Dashboard.d.ts +2 -0
  30. package/base/ui/Dashboard.js +15 -0
  31. package/base/ui/Dashboard.js.map +1 -0
  32. package/base/ui/Layout.d.ts +7 -0
  33. package/base/ui/Layout.js +19 -0
  34. package/base/ui/Layout.js.map +1 -0
  35. package/base/ui/LocaleSelector.d.ts +2 -0
  36. package/base/ui/LocaleSelector.js +15 -0
  37. package/base/ui/LocaleSelector.js.map +1 -0
  38. package/base/ui/LoginScreen.d.ts +6 -0
  39. package/base/ui/LoginScreen.js +21 -0
  40. package/base/ui/LoginScreen.js.map +1 -0
  41. package/base/ui/Logo.d.ts +8 -0
  42. package/base/ui/Logo.js +30 -0
  43. package/base/ui/Logo.js.map +1 -0
  44. package/base/ui/Menu.d.ts +31 -0
  45. package/base/ui/Menu.js +137 -0
  46. package/base/ui/Menu.js.map +1 -0
  47. package/base/ui/Navigation.d.ts +24 -0
  48. package/base/ui/Navigation.js +151 -0
  49. package/base/ui/Navigation.js.map +1 -0
  50. package/base/ui/NotFound.d.ts +2 -0
  51. package/base/ui/NotFound.js +15 -0
  52. package/base/ui/NotFound.js.map +1 -0
  53. package/base/ui/Search.d.ts +19 -0
  54. package/base/ui/Search.js +63 -0
  55. package/base/ui/Search.js.map +1 -0
  56. package/base/ui/Tags.d.ts +10 -0
  57. package/base/ui/Tags.js +22 -0
  58. package/base/ui/Tags.js.map +1 -0
  59. package/base/ui/UserMenu.d.ts +30 -0
  60. package/base/ui/UserMenu.js +113 -0
  61. package/base/ui/UserMenu.js.map +1 -0
  62. package/components/AdminLayout.d.ts +1 -2
  63. package/components/AdminLayout.js +16 -34
  64. package/components/AdminLayout.js.map +1 -0
  65. package/components/AppInstaller/AppInstaller.d.ts +7 -0
  66. package/components/AppInstaller/AppInstaller.js +149 -0
  67. package/components/AppInstaller/AppInstaller.js.map +1 -0
  68. package/components/AppInstaller/Sidebar.d.ts +8 -6
  69. package/components/AppInstaller/Sidebar.js +56 -59
  70. package/components/AppInstaller/Sidebar.js.map +1 -0
  71. package/components/AppInstaller/index.d.ts +1 -4
  72. package/components/AppInstaller/index.js +21 -133
  73. package/components/AppInstaller/index.js.map +1 -0
  74. package/components/AppInstaller/styled.d.ts +6 -4
  75. package/components/AppInstaller/styled.js +27 -13
  76. package/components/AppInstaller/styled.js.map +1 -0
  77. package/components/AppInstaller/useInstaller.d.ts +29 -9
  78. package/components/AppInstaller/useInstaller.js +141 -155
  79. package/components/AppInstaller/useInstaller.js.map +1 -0
  80. package/components/EmptyView.d.ts +5 -5
  81. package/components/EmptyView.js +21 -15
  82. package/components/EmptyView.js.map +1 -0
  83. package/components/FileManager/BottomInfoBar/SupportedFileTypes.d.ts +5 -4
  84. package/components/FileManager/BottomInfoBar/SupportedFileTypes.js +22 -16
  85. package/components/FileManager/BottomInfoBar/SupportedFileTypes.js.map +1 -0
  86. package/components/FileManager/BottomInfoBar/UploadStatus.d.ts +5 -4
  87. package/components/FileManager/BottomInfoBar/UploadStatus.js +16 -12
  88. package/components/FileManager/BottomInfoBar/UploadStatus.js.map +1 -0
  89. package/components/FileManager/BottomInfoBar.d.ts +4 -2
  90. package/components/FileManager/BottomInfoBar.js +19 -13
  91. package/components/FileManager/BottomInfoBar.js.map +1 -0
  92. package/components/FileManager/DropFilesHere.d.ts +5 -3
  93. package/components/FileManager/DropFilesHere.js +25 -16
  94. package/components/FileManager/DropFilesHere.js.map +1 -0
  95. package/components/FileManager/File.d.ts +8 -9
  96. package/components/FileManager/File.js +45 -32
  97. package/components/FileManager/File.js.map +1 -0
  98. package/components/FileManager/FileDetails/Name.d.ts +7 -5
  99. package/components/FileManager/FileDetails/Name.js +75 -80
  100. package/components/FileManager/FileDetails/Name.js.map +1 -0
  101. package/components/FileManager/FileDetails/Tags.d.ts +9 -5
  102. package/components/FileManager/FileDetails/Tags.js +197 -152
  103. package/components/FileManager/FileDetails/Tags.js.map +1 -0
  104. package/components/FileManager/FileDetails.d.ts +9 -8
  105. package/components/FileManager/FileDetails.js +197 -182
  106. package/components/FileManager/FileDetails.js.map +1 -0
  107. package/components/FileManager/FileManagerContext.d.ts +28 -9
  108. package/components/FileManager/FileManagerContext.js +65 -48
  109. package/components/FileManager/FileManagerContext.js.map +1 -0
  110. package/components/FileManager/FileManagerView.d.ts +12 -17
  111. package/components/FileManager/FileManagerView.js +324 -345
  112. package/components/FileManager/FileManagerView.js.map +1 -0
  113. package/components/FileManager/LeftSidebar.d.ts +7 -5
  114. package/components/FileManager/LeftSidebar.js +53 -40
  115. package/components/FileManager/LeftSidebar.js.map +1 -0
  116. package/components/FileManager/NoPermissionView.d.ts +2 -2
  117. package/components/FileManager/NoPermissionView.js +25 -21
  118. package/components/FileManager/NoPermissionView.js.map +1 -0
  119. package/components/FileManager/NoResults.d.ts +3 -2
  120. package/components/FileManager/NoResults.js +16 -7
  121. package/components/FileManager/NoResults.js.map +1 -0
  122. package/components/FileManager/getFileTypePlugin.d.ts +4 -1
  123. package/components/FileManager/getFileTypePlugin.js +43 -19
  124. package/components/FileManager/getFileTypePlugin.js.map +1 -0
  125. package/components/FileManager/getFileUploader.d.ts +2 -1
  126. package/components/FileManager/getFileUploader.js +10 -5
  127. package/components/FileManager/getFileUploader.js.map +1 -0
  128. package/components/FileManager/graphql.d.ts +90 -0
  129. package/components/FileManager/graphql.js +44 -14
  130. package/components/FileManager/graphql.js.map +1 -0
  131. package/components/FileManager/outputFileSelectionError.d.ts +7 -2
  132. package/components/FileManager/outputFileSelectionError.js +14 -13
  133. package/components/FileManager/outputFileSelectionError.js.map +1 -0
  134. package/components/FileManager/types.d.ts +21 -0
  135. package/components/FileManager/types.js +5 -0
  136. package/components/FileManager/types.js.map +1 -0
  137. package/components/FileManager.d.ts +63 -14
  138. package/components/FileManager.js +107 -122
  139. package/components/FileManager.js.map +1 -0
  140. package/components/FloatingActionButton.d.ts +2 -2
  141. package/components/FloatingActionButton.js +13 -7
  142. package/components/FloatingActionButton.js.map +1 -0
  143. package/components/MultiImageUpload.d.ts +13 -4
  144. package/components/MultiImageUpload.js +25 -11
  145. package/components/MultiImageUpload.js.map +1 -0
  146. package/components/OverlayLayout/OverlayLayout.d.ts +11 -13
  147. package/components/OverlayLayout/OverlayLayout.js +53 -57
  148. package/components/OverlayLayout/OverlayLayout.js.map +1 -0
  149. package/components/OverlayLayout/index.d.ts +1 -1
  150. package/components/OverlayLayout/index.js +16 -1
  151. package/components/OverlayLayout/index.js.map +1 -0
  152. package/components/Permissions/Permissions.d.ts +6 -4
  153. package/components/Permissions/Permissions.js +43 -28
  154. package/components/Permissions/Permissions.js.map +1 -0
  155. package/components/Permissions/StyledComponents.d.ts +6 -4
  156. package/components/Permissions/StyledComponents.js +20 -10
  157. package/components/Permissions/StyledComponents.js.map +1 -0
  158. package/components/Permissions/index.js +27 -2
  159. package/components/Permissions/index.js.map +1 -0
  160. package/components/RichTextEditor/RichTextEditor.d.ts +2 -2
  161. package/components/RichTextEditor/RichTextEditor.js +17 -9
  162. package/components/RichTextEditor/RichTextEditor.js.map +1 -0
  163. package/components/RichTextEditor/index.js +19 -2
  164. package/components/RichTextEditor/index.js.map +1 -0
  165. package/components/RichTextEditor/styles.scss +39 -7
  166. package/components/RichTextEditor/tools/header/index.d.ts +35 -34
  167. package/components/RichTextEditor/tools/header/index.js +93 -133
  168. package/components/RichTextEditor/tools/header/index.js.map +1 -0
  169. package/components/RichTextEditor/tools/image/index.d.ts +40 -13
  170. package/components/RichTextEditor/tools/image/index.js +45 -58
  171. package/components/RichTextEditor/tools/image/index.js.map +1 -0
  172. package/components/RichTextEditor/tools/image/svgs.js +9 -2
  173. package/components/RichTextEditor/tools/image/svgs.js.map +1 -0
  174. package/components/RichTextEditor/tools/image/tunes.d.ts +14 -15
  175. package/components/RichTextEditor/tools/image/tunes.js +35 -40
  176. package/components/RichTextEditor/tools/image/tunes.js.map +1 -0
  177. package/components/RichTextEditor/tools/image/types.d.ts +29 -0
  178. package/components/RichTextEditor/tools/image/types.js +5 -0
  179. package/components/RichTextEditor/tools/image/types.js.map +1 -0
  180. package/components/RichTextEditor/tools/image/ui.d.ts +38 -27
  181. package/components/RichTextEditor/tools/image/ui.js +61 -64
  182. package/components/RichTextEditor/tools/image/ui.js.map +1 -0
  183. package/components/RichTextEditor/tools/paragraph/index.d.ts +34 -36
  184. package/components/RichTextEditor/tools/paragraph/index.js +101 -133
  185. package/components/RichTextEditor/tools/paragraph/index.js.map +1 -0
  186. package/components/RichTextEditor/tools/textColor/index.d.ts +33 -27
  187. package/components/RichTextEditor/tools/textColor/index.js +73 -60
  188. package/components/RichTextEditor/tools/textColor/index.js.map +1 -0
  189. package/components/RichTextEditor/tools/utils.js +13 -6
  190. package/components/RichTextEditor/tools/utils.js.map +1 -0
  191. package/components/Routes.d.ts +6 -0
  192. package/components/Routes.js +42 -0
  193. package/components/Routes.js.map +1 -0
  194. package/components/SearchUI.d.ts +5 -4
  195. package/components/SearchUI.js +28 -14
  196. package/components/SearchUI.js.map +1 -0
  197. package/components/SimpleForm/SimpleForm.d.ts +11 -11
  198. package/components/SimpleForm/SimpleForm.js +41 -39
  199. package/components/SimpleForm/SimpleForm.js.map +1 -0
  200. package/components/SimpleForm/index.js +30 -1
  201. package/components/SimpleForm/index.js.map +1 -0
  202. package/components/SimpleUI/InputField.d.ts +6 -3
  203. package/components/SimpleUI/InputField.js +51 -46
  204. package/components/SimpleUI/InputField.js.map +1 -0
  205. package/components/SingleImageUpload.d.ts +43 -13
  206. package/components/SingleImageUpload.js +79 -83
  207. package/components/SingleImageUpload.js.map +1 -0
  208. package/components/SplitView/SplitView.d.ts +6 -5
  209. package/components/SplitView/SplitView.js +33 -34
  210. package/components/SplitView/SplitView.js.map +1 -0
  211. package/components/SplitView/index.js +24 -1
  212. package/components/SplitView/index.js.map +1 -0
  213. package/components/index.js +12 -1
  214. package/components/index.js.map +1 -0
  215. package/hooks/useConfirmationDialog.d.ts +8 -5
  216. package/hooks/useConfirmationDialog.js +28 -24
  217. package/hooks/useConfirmationDialog.js.map +1 -0
  218. package/hooks/useDialog.d.ts +8 -3
  219. package/hooks/useDialog.js +12 -7
  220. package/hooks/useDialog.js.map +1 -0
  221. package/hooks/useSnackbar.d.ts +6 -3
  222. package/hooks/useSnackbar.js +15 -7
  223. package/hooks/useSnackbar.js.map +1 -0
  224. package/index.d.ts +35 -0
  225. package/index.js +325 -0
  226. package/index.js.map +1 -0
  227. package/package.json +47 -46
  228. package/plugins/FileManagerFileTypePlugin.d.ts +3 -3
  229. package/plugins/FileManagerFileTypePlugin.js +26 -24
  230. package/plugins/FileManagerFileTypePlugin.js.map +1 -0
  231. package/plugins/MenuPlugin.d.ts +22 -5
  232. package/plugins/MenuPlugin.js +26 -24
  233. package/plugins/MenuPlugin.js.map +1 -0
  234. package/plugins/PermissionRendererPlugin.d.ts +4 -4
  235. package/plugins/PermissionRendererPlugin.js +26 -24
  236. package/plugins/PermissionRendererPlugin.js.map +1 -0
  237. package/plugins/fileManager/fileDefault.d.ts +1 -2
  238. package/plugins/fileManager/fileDefault.js +16 -8
  239. package/plugins/fileManager/fileDefault.js.map +1 -0
  240. package/plugins/fileManager/fileImage/DeleteAction.d.ts +6 -2
  241. package/plugins/fileManager/fileImage/DeleteAction.js +46 -49
  242. package/plugins/fileManager/fileImage/DeleteAction.js.map +1 -0
  243. package/plugins/fileManager/fileImage/EditAction.d.ts +7 -6
  244. package/plugins/fileManager/fileImage/EditAction.js +71 -71
  245. package/plugins/fileManager/fileImage/EditAction.js.map +1 -0
  246. package/plugins/fileManager/fileImage/index.d.ts +1 -2
  247. package/plugins/fileManager/fileImage/index.js +19 -10
  248. package/plugins/fileManager/fileImage/index.js.map +1 -0
  249. package/plugins/fileManager/index.d.ts +2 -2
  250. package/plugins/fileManager/index.js +19 -3
  251. package/plugins/fileManager/index.js.map +1 -0
  252. package/plugins/globalSearch/SearchBar.d.ts +15 -3
  253. package/plugins/globalSearch/SearchBar.js +69 -85
  254. package/plugins/globalSearch/SearchBar.js.map +1 -0
  255. package/plugins/globalSearch/SearchBarDropdown.d.ts +19 -1
  256. package/plugins/globalSearch/SearchBarDropdown.js +45 -44
  257. package/plugins/globalSearch/SearchBarDropdown.js.map +1 -0
  258. package/plugins/globalSearch/index.d.ts +3 -4
  259. package/plugins/globalSearch/index.js +8 -22
  260. package/plugins/globalSearch/index.js.map +1 -0
  261. package/plugins/globalSearch/styled.d.ts +5 -3
  262. package/plugins/globalSearch/styled.js +29 -13
  263. package/plugins/globalSearch/styled.js.map +1 -0
  264. package/plugins/uiLayoutRenderer/index.d.ts +1 -2
  265. package/plugins/uiLayoutRenderer/index.js +23 -25
  266. package/plugins/uiLayoutRenderer/index.js.map +1 -0
  267. package/styles/material-theme-assignments.scss +84 -67
  268. package/styles/material.scss +4 -35
  269. package/styles/theme.scss +34 -1
  270. package/types.d.ts +12 -19
  271. package/types.js +5 -1
  272. package/types.js.map +1 -0
  273. package/ui/UIElement.d.ts +1 -1
  274. package/ui/UIElement.js +18 -1
  275. package/ui/UIElement.js.map +1 -0
  276. package/ui/UILayout.js +18 -1
  277. package/ui/UILayout.js.map +1 -0
  278. package/ui/UIRenderer.js +12 -1
  279. package/ui/UIRenderer.js.map +1 -0
  280. package/ui/UIView.d.ts +1 -1
  281. package/ui/UIView.js +24 -1
  282. package/ui/UIView.js.map +1 -0
  283. package/ui/elements/AccordionElement.d.ts +5 -5
  284. package/ui/elements/AccordionElement.js +41 -43
  285. package/ui/elements/AccordionElement.js.map +1 -0
  286. package/ui/elements/ButtonElement.d.ts +3 -3
  287. package/ui/elements/ButtonElement.js +35 -27
  288. package/ui/elements/ButtonElement.js.map +1 -0
  289. package/ui/elements/ButtonGroupElement.d.ts +2 -2
  290. package/ui/elements/ButtonGroupElement.js +25 -25
  291. package/ui/elements/ButtonGroupElement.js.map +1 -0
  292. package/ui/elements/GenericElement.js +16 -1
  293. package/ui/elements/GenericElement.js.map +1 -0
  294. package/ui/elements/LabelElement.js +19 -20
  295. package/ui/elements/LabelElement.js.map +1 -0
  296. package/ui/elements/NavigationMenuElement.d.ts +2 -1
  297. package/ui/elements/NavigationMenuElement.js +39 -53
  298. package/ui/elements/NavigationMenuElement.js.map +1 -0
  299. package/ui/elements/PanelElement.js +18 -13
  300. package/ui/elements/PanelElement.js.map +1 -0
  301. package/ui/elements/PlaceholderElement.d.ts +2 -1
  302. package/ui/elements/PlaceholderElement.js +18 -15
  303. package/ui/elements/PlaceholderElement.js.map +1 -0
  304. package/ui/elements/SmallButtonElement.d.ts +1 -1
  305. package/ui/elements/SmallButtonElement.js +25 -27
  306. package/ui/elements/SmallButtonElement.js.map +1 -0
  307. package/ui/elements/TypographyElement.d.ts +1 -1
  308. package/ui/elements/TypographyElement.js +25 -26
  309. package/ui/elements/TypographyElement.js.map +1 -0
  310. package/ui/elements/ViewElement.js +16 -1
  311. package/ui/elements/ViewElement.js.map +1 -0
  312. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.d.ts +2 -2
  313. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js +32 -32
  314. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js.map +1 -0
  315. package/ui/elements/form/DynamicFieldsetElement.d.ts +19 -18
  316. package/ui/elements/form/DynamicFieldsetElement.js +47 -39
  317. package/ui/elements/form/DynamicFieldsetElement.js.map +1 -0
  318. package/ui/elements/form/FileManagerElement/EmptyStateElement.js +20 -18
  319. package/ui/elements/form/FileManagerElement/EmptyStateElement.js.map +1 -0
  320. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +33 -32
  321. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +1 -0
  322. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +53 -44
  323. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +1 -0
  324. package/ui/elements/form/FileManagerElement/styled.d.ts +19 -13
  325. package/ui/elements/form/FileManagerElement/styled.js +22 -13
  326. package/ui/elements/form/FileManagerElement/styled.js.map +1 -0
  327. package/ui/elements/form/FileManagerElement.d.ts +6 -6
  328. package/ui/elements/form/FileManagerElement.js +25 -28
  329. package/ui/elements/form/FileManagerElement.js.map +1 -0
  330. package/ui/elements/form/FormElement.d.ts +5 -5
  331. package/ui/elements/form/FormElement.js +27 -27
  332. package/ui/elements/form/FormElement.js.map +1 -0
  333. package/ui/elements/form/FormFieldElement.d.ts +9 -8
  334. package/ui/elements/form/FormFieldElement.js +39 -49
  335. package/ui/elements/form/FormFieldElement.js.map +1 -0
  336. package/ui/elements/form/HiddenElement.js +21 -23
  337. package/ui/elements/form/HiddenElement.js.map +1 -0
  338. package/ui/elements/form/InputElement.d.ts +1 -0
  339. package/ui/elements/form/InputElement.js +24 -25
  340. package/ui/elements/form/InputElement.js.map +1 -0
  341. package/ui/elements/form/PasswordElement.js +22 -21
  342. package/ui/elements/form/PasswordElement.js.map +1 -0
  343. package/ui/elements/form/SelectElement.d.ts +1 -1
  344. package/ui/elements/form/SelectElement.js +25 -27
  345. package/ui/elements/form/SelectElement.js.map +1 -0
  346. package/ui/elements/form/TextareaElement.js +23 -24
  347. package/ui/elements/form/TextareaElement.js.map +1 -0
  348. package/ui/views/AdminView/ContentElement.js +30 -38
  349. package/ui/views/AdminView/ContentElement.js.map +1 -0
  350. package/ui/views/AdminView/HeaderElement.js +51 -58
  351. package/ui/views/AdminView/HeaderElement.js.map +1 -0
  352. package/ui/views/AdminView/HeaderSectionCenterElement.d.ts +2 -2
  353. package/ui/views/AdminView/HeaderSectionCenterElement.js +27 -27
  354. package/ui/views/AdminView/HeaderSectionCenterElement.js.map +1 -0
  355. package/ui/views/AdminView/HeaderSectionLeftElement.d.ts +2 -2
  356. package/ui/views/AdminView/HeaderSectionLeftElement.js +27 -27
  357. package/ui/views/AdminView/HeaderSectionLeftElement.js.map +1 -0
  358. package/ui/views/AdminView/HeaderSectionRightElement.d.ts +2 -2
  359. package/ui/views/AdminView/HeaderSectionRightElement.js +27 -27
  360. package/ui/views/AdminView/HeaderSectionRightElement.js.map +1 -0
  361. package/ui/views/AdminView/components/Dialog.js +33 -27
  362. package/ui/views/AdminView/components/Dialog.js.map +1 -0
  363. package/ui/views/AdminView/components/Hamburger.d.ts +2 -2
  364. package/ui/views/AdminView/components/Hamburger.js +18 -12
  365. package/ui/views/AdminView/components/Hamburger.js.map +1 -0
  366. package/ui/views/AdminView/components/Snackbar.d.ts +2 -2
  367. package/ui/views/AdminView/components/Snackbar.js +20 -16
  368. package/ui/views/AdminView/components/Snackbar.js.map +1 -0
  369. package/ui/views/FormView/FormContainerElement.d.ts +2 -2
  370. package/ui/views/FormView/FormContainerElement.js +30 -31
  371. package/ui/views/FormView/FormContainerElement.js.map +1 -0
  372. package/ui/views/FormView/FormContentElement.js +18 -13
  373. package/ui/views/FormView/FormContentElement.js.map +1 -0
  374. package/ui/views/FormView/FormFooterElement.d.ts +3 -3
  375. package/ui/views/FormView/FormFooterElement.js +25 -25
  376. package/ui/views/FormView/FormFooterElement.js.map +1 -0
  377. package/ui/views/FormView/FormHeaderElement.d.ts +2 -2
  378. package/ui/views/FormView/FormHeaderElement.js +38 -38
  379. package/ui/views/FormView/FormHeaderElement.js.map +1 -0
  380. package/ui/views/FormView.d.ts +1 -1
  381. package/ui/views/FormView.js +58 -51
  382. package/ui/views/FormView.js.map +1 -0
  383. package/ui/views/OverlayView/ContentElement.d.ts +2 -2
  384. package/ui/views/OverlayView/ContentElement.js +25 -25
  385. package/ui/views/OverlayView/ContentElement.js.map +1 -0
  386. package/ui/views/OverlayView/HeaderElement.d.ts +5 -5
  387. package/ui/views/OverlayView/HeaderElement.js +42 -45
  388. package/ui/views/OverlayView/HeaderElement.js.map +1 -0
  389. package/ui/views/OverlayView/HeaderTitleElement.d.ts +1 -1
  390. package/ui/views/OverlayView/HeaderTitleElement.js +30 -33
  391. package/ui/views/OverlayView/HeaderTitleElement.js.map +1 -0
  392. package/ui/views/OverlayView/useOverlayView.d.ts +4 -5
  393. package/ui/views/OverlayView/useOverlayView.js +26 -20
  394. package/ui/views/OverlayView/useOverlayView.js.map +1 -0
  395. package/ui/views/OverlayView.d.ts +4 -6
  396. package/ui/views/OverlayView.js +47 -58
  397. package/ui/views/OverlayView.js.map +1 -0
  398. package/ui/views/SplitView/SplitViewPanelElement.d.ts +3 -3
  399. package/ui/views/SplitView/SplitViewPanelElement.js +32 -33
  400. package/ui/views/SplitView/SplitViewPanelElement.js.map +1 -0
  401. package/ui/views/SplitView.d.ts +3 -3
  402. package/ui/views/SplitView.js +39 -59
  403. package/ui/views/SplitView.js.map +1 -0
  404. package/plugins/index.d.ts +0 -6
  405. package/plugins/index.js +0 -8
  406. package/plugins/logo/Logo.d.ts +0 -22
  407. package/plugins/logo/Logo.js +0 -108
  408. package/plugins/logo/index.d.ts +0 -5
  409. package/plugins/logo/index.js +0 -32
  410. package/plugins/menu/documentation.d.ts +0 -4
  411. package/plugins/menu/documentation.js +0 -16
  412. package/plugins/menu/fileManager.d.ts +0 -4
  413. package/plugins/menu/fileManager.js +0 -64
  414. package/plugins/menu/index.d.ts +0 -6
  415. package/plugins/menu/index.js +0 -24
  416. package/plugins/menu/renderers/MenuGroupRenderer.d.ts +0 -7
  417. package/plugins/menu/renderers/MenuGroupRenderer.js +0 -126
  418. package/plugins/menu/renderers/MenuLinkRenderer.d.ts +0 -7
  419. package/plugins/menu/renderers/MenuLinkRenderer.js +0 -52
  420. package/plugins/menu/renderers/MenuSectionItemRenderer.d.ts +0 -7
  421. package/plugins/menu/renderers/MenuSectionItemRenderer.js +0 -77
  422. package/plugins/menu/renderers/MenuSectionRenderer.d.ts +0 -7
  423. package/plugins/menu/renderers/MenuSectionRenderer.js +0 -51
  424. package/plugins/menu/slack.d.ts +0 -4
  425. package/plugins/menu/slack.js +0 -16
  426. package/plugins/menu/source.d.ts +0 -4
  427. package/plugins/menu/source.js +0 -16
  428. package/plugins/userMenu/UserMenuElement.d.ts +0 -7
  429. package/plugins/userMenu/UserMenuElement.js +0 -43
  430. package/plugins/userMenu/UserMenuRenderer.d.ts +0 -6
  431. package/plugins/userMenu/UserMenuRenderer.js +0 -47
  432. package/plugins/userMenu/index.d.ts +0 -4
  433. package/plugins/userMenu/index.js +0 -16
  434. package/ui/views/AdminView.d.ts +0 -12
  435. package/ui/views/AdminView.js +0 -90
  436. package/ui/views/NavigationView/ContentElement.d.ts +0 -10
  437. package/ui/views/NavigationView/ContentElement.js +0 -86
  438. package/ui/views/NavigationView/FooterElement.d.ts +0 -13
  439. package/ui/views/NavigationView/FooterElement.js +0 -57
  440. package/ui/views/NavigationView/HeaderElement.d.ts +0 -16
  441. package/ui/views/NavigationView/HeaderElement.js +0 -66
  442. package/ui/views/NavigationView/NavigationViewRenderer.d.ts +0 -6
  443. package/ui/views/NavigationView/NavigationViewRenderer.js +0 -38
  444. package/ui/views/NavigationView/Styled.d.ts +0 -7
  445. package/ui/views/NavigationView/Styled.js +0 -47
  446. package/ui/views/NavigationView/legacyMenu.d.ts +0 -22
  447. package/ui/views/NavigationView/legacyMenu.js +0 -1
  448. package/ui/views/NavigationView/useNavigation.d.ts +0 -6
  449. package/ui/views/NavigationView/useNavigation.js +0 -22
  450. package/ui/views/NavigationView.d.ts +0 -26
  451. package/ui/views/NavigationView.js +0 -204
@@ -1,53 +1,59 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
- import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
3
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
1
+ "use strict";
4
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+ var _react = _interopRequireWildcard(require("react"));
14
+ var _bytes = _interopRequireDefault(require("bytes"));
15
+ var _classnames = _interopRequireDefault(require("classnames"));
16
+ var _emotion = require("emotion");
17
+ var _Drawer = require("@webiny/ui/Drawer");
18
+ var _Button = require("@webiny/ui/Button");
19
+ var _getFileTypePlugin = _interopRequireDefault(require("./getFileTypePlugin"));
20
+ var _dayjs = _interopRequireDefault(require("dayjs"));
21
+ var _get = _interopRequireDefault(require("lodash/get"));
22
+ var _set = _interopRequireDefault(require("lodash/set"));
23
+ var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
24
+ var _Tags = _interopRequireDefault(require("./FileDetails/Tags"));
25
+ var _Name = _interopRequireDefault(require("./FileDetails/Name"));
26
+ var _Tooltip = require("@webiny/ui/Tooltip");
27
+ var _Icon = require("@webiny/ui/Icon");
28
+ var _Typography = require("@webiny/ui/Typography");
29
+ var _reactHotkeyz = require("react-hotkeyz");
30
+ var _content_copyBlack24px = require("./icons/content_copy-black-24px.svg");
31
+ var _delete = require("./icons/delete.svg");
32
+ var _insert_photo24px = require("../../assets/icons/insert_photo-24px.svg");
33
+ var _insert_drive_file24px = require("../../assets/icons/insert_drive_file-24px.svg");
34
+ var _today24px = require("../../assets/icons/today-24px.svg");
35
+ var _highlight24px = require("../../assets/icons/highlight-24px.svg");
36
+ var _FileManagerContext = require("./FileManagerContext");
37
+ var _reactHooks = require("@apollo/react-hooks");
38
+ var _useSnackbar2 = require("../../hooks/useSnackbar");
39
+ var _appSecurity = require("@webiny/app-security");
40
+ var _ConfirmationDialog = require("@webiny/ui/ConfirmationDialog");
41
+ var _graphql = require("./graphql");
42
+ var _i18n = require("@webiny/app/i18n");
43
+ var _mime = _interopRequireDefault(require("mime"));
5
44
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
6
-
7
- import _regeneratorRuntime from "@babel/runtime/regenerator";
8
- import React, { useCallback, useMemo, useState } from "react";
9
- import bytes from "bytes";
10
- import classNames from "classnames";
11
- import { css } from "emotion";
12
- import { Drawer, DrawerContent } from "@webiny/ui/Drawer";
13
- import { IconButton } from "@webiny/ui/Button";
14
- import getFileTypePlugin from "./getFileTypePlugin";
15
- import dayjs from "dayjs";
16
- import get from "lodash/get";
17
- import set from "lodash/set";
18
- import cloneDeep from "lodash/cloneDeep";
19
- import Tags from "./FileDetails/Tags";
20
- import Name from "./FileDetails/Name";
21
- import { Tooltip } from "@webiny/ui/Tooltip";
22
- import { Icon } from "@webiny/ui/Icon";
23
- import { Typography } from "@webiny/ui/Typography";
24
- import { useHotkeys } from "react-hotkeyz";
25
- import { ReactComponent as CopyContentIcon } from "@svgr/webpack!./icons/content_copy-black-24px.svg";
26
- import { ReactComponent as DeleteIcon } from "@svgr/webpack!./icons/delete.svg";
27
- import { ReactComponent as ImageIcon } from "@svgr/webpack!../../assets/icons/insert_photo-24px.svg";
28
- import { ReactComponent as FileIcon } from "@svgr/webpack!../../assets/icons/insert_drive_file-24px.svg";
29
- import { ReactComponent as CalendarIcon } from "@svgr/webpack!../../assets/icons/today-24px.svg";
30
- import { ReactComponent as HighlightIcon } from "@svgr/webpack!../../assets/icons/highlight-24px.svg";
31
- import { useFileManager } from "./FileManagerContext";
32
- import { useMutation } from "@apollo/react-hooks";
33
- import { useSnackbar } from "../../hooks/useSnackbar";
34
- import { useSecurity } from "@webiny/app-security";
35
- import { ConfirmationDialog } from "@webiny/ui/ConfirmationDialog";
36
- import { DELETE_FILE, LIST_FILES, LIST_TAGS } from "./graphql";
37
- import { i18n } from "@webiny/app/i18n";
38
- import mime from "mime";
39
- var t = i18n.ns("app-admin/file-manager/file-details");
40
- var fileDetailsSidebar = /*#__PURE__*/css({
45
+ var t = _i18n.i18n.ns("app-admin/file-manager/file-details");
46
+ var fileDetailsSidebar = /*#__PURE__*/(0, _emotion.css)({
41
47
  "&.mdc-drawer": {
42
48
  width: 360
43
49
  }
44
50
  }, "label:fileDetailsSidebar;");
45
51
  var style = {
46
- wrapper: /*#__PURE__*/css({
52
+ wrapper: /*#__PURE__*/(0, _emotion.css)({
47
53
  height: "100vh",
48
54
  overflowY: "auto"
49
55
  }, "label:wrapper;"),
50
- header: /*#__PURE__*/css({
56
+ header: /*#__PURE__*/(0, _emotion.css)({
51
57
  textAlign: "center",
52
58
  marginBottom: 24,
53
59
  paddingTop: 16,
@@ -57,7 +63,7 @@ var style = {
57
63
  fontWeight: 600
58
64
  }
59
65
  }, "label:header;"),
60
- preview: /*#__PURE__*/css({
66
+ preview: /*#__PURE__*/(0, _emotion.css)({
61
67
  boxSizing: "border-box",
62
68
  display: "flex",
63
69
  justifyContent: "center",
@@ -78,7 +84,7 @@ var style = {
78
84
  backgroundColor: "var(--mdc-theme-background)"
79
85
  }
80
86
  }, "label:preview;"),
81
- download: /*#__PURE__*/css({
87
+ download: /*#__PURE__*/(0, _emotion.css)({
82
88
  textAlign: "center",
83
89
  margin: "0 auto",
84
90
  width: "100%",
@@ -88,7 +94,7 @@ var style = {
88
94
  }
89
95
  }
90
96
  }, "label:download;"),
91
- list: /*#__PURE__*/css({
97
+ list: /*#__PURE__*/(0, _emotion.css)({
92
98
  textAlign: "left",
93
99
  color: "var(--mdc-theme-on-surface)",
94
100
  li: {
@@ -122,100 +128,107 @@ var style = {
122
128
  }
123
129
  }
124
130
  }, "label:list;"),
125
- drawerContent: /*#__PURE__*/css({
131
+ drawerContent: /*#__PURE__*/(0, _emotion.css)({
126
132
  "&.mdc-drawer__content": {
127
133
  height: "auto",
128
134
  overflowY: "inherit"
129
135
  }
130
136
  }, "label:drawerContent;")
131
137
  };
132
-
133
138
  var isImage = function isImage(file) {
134
- var fileType = mime.getType(file && file.name);
135
-
139
+ var fileType = _mime.default.getType(file && file.name);
136
140
  if (fileType && typeof fileType === "string") {
137
141
  return fileType.includes("image");
138
142
  }
139
-
140
143
  return false;
141
144
  };
142
-
143
- export default function FileDetails(props) {
145
+ var FileDetails = function FileDetails(props) {
144
146
  var file = props.file,
145
- uploadFile = props.uploadFile,
146
- validateFiles = props.validateFiles;
147
- var filePlugin = getFileTypePlugin(file);
148
- var actions = get(filePlugin, "fileDetails.actions") || get(filePlugin, "actions") || [];
149
-
150
- var _useFileManager = useFileManager(),
151
- hideFileDetails = _useFileManager.hideFileDetails,
152
- queryParams = _useFileManager.queryParams;
153
-
154
- var _useState = useState(false),
155
- _useState2 = _slicedToArray(_useState, 2),
156
- darkImageBackground = _useState2[0],
157
- setDarkImageBackground = _useState2[1];
158
-
159
- var _useSecurity = useSecurity(),
160
- identity = _useSecurity.identity;
161
-
162
- var fmFilePermission = useMemo(function () {
163
- return identity.getPermission("fm.file");
164
- }, []);
165
- var canDelete = useCallback(function (item) {
147
+ uploadFile = props.uploadFile,
148
+ validateFiles = props.validateFiles;
149
+ var filePlugin = (0, _getFileTypePlugin.default)(file);
150
+ var actions = (0, _get.default)(filePlugin, "fileDetails.actions") || (0, _get.default)(filePlugin, "actions") || [];
151
+ var _useFileManager = (0, _FileManagerContext.useFileManager)(),
152
+ hideFileDetails = _useFileManager.hideFileDetails,
153
+ queryParams = _useFileManager.queryParams;
154
+ var _useState = (0, _react.useState)(false),
155
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
156
+ darkImageBackground = _useState2[0],
157
+ setDarkImageBackground = _useState2[1];
158
+ var _useSecurity = (0, _appSecurity.useSecurity)(),
159
+ identity = _useSecurity.identity,
160
+ getPermission = _useSecurity.getPermission;
161
+ var fmFilePermission = (0, _react.useMemo)(function () {
162
+ return getPermission("fm.file");
163
+ }, [identity]);
164
+ var canDelete = (0, _react.useCallback)(function (item) {
166
165
  // Bail out early if no access
167
166
  if (!fmFilePermission) {
168
167
  return false;
169
168
  }
170
-
171
169
  if (fmFilePermission.own) {
172
- var identityId = identity.id || identity.login;
173
- return get(item, "createdBy.id") === identityId;
170
+ var identityId = identity ? identity.id || identity.login : null;
171
+ if (!identityId) {
172
+ return false;
173
+ }
174
+ return (0, _get.default)(item, "createdBy.id") === identityId;
174
175
  }
175
-
176
176
  if (typeof fmFilePermission.rwd === "string") {
177
177
  return fmFilePermission.rwd.includes("d");
178
178
  }
179
-
180
179
  return true;
181
180
  }, [fmFilePermission]);
182
- useHotkeys({
181
+ (0, _reactHotkeyz.useHotkeys)({
183
182
  zIndex: 55,
184
183
  disabled: !file,
185
184
  keys: {
186
185
  esc: hideFileDetails
187
186
  }
188
187
  });
189
-
190
- var _useMutation = useMutation(DELETE_FILE, {
191
- update: function update(cache) {
192
- // 1. Update files list cache
193
- var data = cloneDeep(cache.readQuery({
194
- query: LIST_FILES,
195
- variables: queryParams
196
- }));
197
- var filteredList = data.fileManager.listFiles.data.filter(function (item) {
198
- return item.id !== file.id;
199
- });
200
- var selectedFile = data.fileManager.listFiles.data.find(function (item) {
201
- return item.id === file.id;
202
- });
203
- cache.writeQuery({
204
- query: LIST_FILES,
205
- variables: queryParams,
206
- data: set(data, "fileManager.listFiles.data", filteredList)
207
- }); // 2. Update "ListTags" cache
208
-
209
- // 2. Update "ListTags" cache
210
- if (Array.isArray(selectedFile.tags)) {
211
- var tagCountMap = {}; // Prepare "tag" count map
212
-
188
+ var _useMutation = (0, _reactHooks.useMutation)(_graphql.DELETE_FILE, {
189
+ update: function update(cache) {
190
+ var _listTagsData$fileMan;
191
+ // 1. Update files list cache
192
+ var data = (0, _cloneDeep.default)(cache.readQuery({
193
+ query: _graphql.LIST_FILES,
194
+ variables: queryParams
195
+ }));
196
+ if (!data) {
197
+ data = {
198
+ fileManager: {
199
+ listFiles: {
200
+ data: [],
201
+ error: null,
202
+ meta: {
203
+ hasMoreItems: false,
204
+ cursor: null,
205
+ totalItem: 0
206
+ }
207
+ }
208
+ }
209
+ };
210
+ }
211
+ var filteredList = data.fileManager.listFiles.data.filter(function (item) {
212
+ return item.id !== file.id;
213
+ });
214
+ var selectedFile = data.fileManager.listFiles.data.find(function (item) {
215
+ return item.id === file.id;
216
+ });
217
+ cache.writeQuery({
218
+ query: _graphql.LIST_FILES,
219
+ variables: queryParams,
220
+ data: (0, _set.default)(data, "fileManager.listFiles.data", filteredList)
221
+ });
222
+ // 2. Update "ListTags" cache
223
+ if (!selectedFile || Array.isArray(selectedFile.tags) === false) {
224
+ return;
225
+ }
226
+ var tagCountMap = {};
213
227
  // Prepare "tag" count map
214
228
  data.fileManager.listFiles.data.forEach(function (file) {
215
229
  if (!Array.isArray(file.tags)) {
216
230
  return;
217
231
  }
218
-
219
232
  file.tags.forEach(function (tag) {
220
233
  if (tagCountMap[tag]) {
221
234
  tagCountMap[tag] += 1;
@@ -223,84 +236,80 @@ export default function FileDetails(props) {
223
236
  tagCountMap[tag] = 1;
224
237
  }
225
238
  });
226
- }); // Get tags from cache
239
+ });
227
240
 
228
241
  // Get tags from cache
229
- var listTagsData = cloneDeep(cache.readQuery({
230
- query: LIST_TAGS
231
- })); // Remove selected file tags from list.
232
-
242
+ var listTagsData = (0, _cloneDeep.default)(cache.readQuery({
243
+ query: _graphql.LIST_TAGS,
244
+ variables: {
245
+ where: (0, _FileManagerContext.getWhere)(queryParams.scope)
246
+ }
247
+ }));
233
248
  // Remove selected file tags from list.
234
- var filteredTags = listTagsData.fileManager.listTags.filter(function (tag) {
249
+ var filteredTags = ((listTagsData === null || listTagsData === void 0 ? void 0 : (_listTagsData$fileMan = listTagsData.fileManager) === null || _listTagsData$fileMan === void 0 ? void 0 : _listTagsData$fileMan.listTags) || []).filter(function (tag) {
235
250
  if (!selectedFile.tags.includes(tag)) {
236
251
  return true;
237
252
  }
238
-
239
253
  return tagCountMap[tag] > 1;
240
- }); // Write it to cache
254
+ });
241
255
 
242
256
  // Write it to cache
243
257
  cache.writeQuery({
244
- query: LIST_TAGS,
245
- data: set(data, "fileManager.listTags", filteredTags)
258
+ query: _graphql.LIST_TAGS,
259
+ variables: {
260
+ where: (0, _FileManagerContext.getWhere)(queryParams.scope)
261
+ },
262
+ data: (0, _set.default)(data, "fileManager.listTags", filteredTags)
246
263
  });
247
264
  }
248
- }
249
- }),
250
- _useMutation2 = _slicedToArray(_useMutation, 1),
251
- deleteFile = _useMutation2[0];
252
-
253
- var _useSnackbar = useSnackbar(),
254
- showSnackbar = _useSnackbar.showSnackbar;
255
-
256
- var renderDeleteImageAction = useCallback(function (file) {
265
+ }),
266
+ _useMutation2 = (0, _slicedToArray2.default)(_useMutation, 1),
267
+ deleteFile = _useMutation2[0];
268
+ var _useSnackbar = (0, _useSnackbar2.useSnackbar)(),
269
+ showSnackbar = _useSnackbar.showSnackbar;
270
+ var renderDeleteImageAction = (0, _react.useCallback)(function (file) {
257
271
  if (!canDelete(file)) {
258
272
  return null;
259
273
  }
260
-
261
274
  var fileDeleteConfirmationProps = {
262
- title: t(_templateObject || (_templateObject = _taggedTemplateLiteral(["Delete file"]))),
263
- message: file && /*#__PURE__*/React.createElement("span", null, t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["You're about to delete file {name}. Are you sure you want to continue?"])))({
275
+ title: t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Delete file"]))),
276
+ message: file && /*#__PURE__*/_react.default.createElement("span", null, t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["You're about to delete file {name}. Are you sure you want to continue?"])))({
264
277
  name: file.name
265
278
  }))
266
279
  };
267
- return /*#__PURE__*/React.createElement(ConfirmationDialog, Object.assign({}, fileDeleteConfirmationProps, {
280
+ return /*#__PURE__*/_react.default.createElement(_ConfirmationDialog.ConfirmationDialog, Object.assign({}, fileDeleteConfirmationProps, {
268
281
  "data-testid": "fm-delete-file-confirmation-dialog",
269
282
  style: {
270
283
  zIndex: 100
271
284
  }
272
285
  }), function (_ref) {
273
286
  var showConfirmation = _ref.showConfirmation;
274
- return /*#__PURE__*/React.createElement(Tooltip, {
275
- content: isImage ? /*#__PURE__*/React.createElement("span", null, t(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["Delete image"])))) : /*#__PURE__*/React.createElement("span", null, t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["Delete file"])))),
287
+ return /*#__PURE__*/_react.default.createElement(_Tooltip.Tooltip, {
288
+ content: isImage(file) ? /*#__PURE__*/_react.default.createElement("span", null, t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["Delete image"])))) : /*#__PURE__*/_react.default.createElement("span", null, t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Delete file"])))),
276
289
  placement: "bottom"
277
- }, /*#__PURE__*/React.createElement(IconButton, {
290
+ }, /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
278
291
  "data-testid": "fm-delete-file-button",
279
- icon: /*#__PURE__*/React.createElement(DeleteIcon, {
292
+ icon: /*#__PURE__*/_react.default.createElement(_delete.ReactComponent, {
280
293
  style: {
281
294
  margin: "0 8px 0 0"
282
295
  }
283
296
  }),
284
297
  onClick: function onClick() {
285
- return showConfirmation( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
286
- return _regeneratorRuntime.wrap(function _callee$(_context) {
287
- while (1) {
288
- switch (_context.prev = _context.next) {
289
- case 0:
290
- _context.next = 2;
291
- return deleteFile({
292
- variables: {
293
- id: file.id
294
- }
295
- });
296
-
297
- case 2:
298
- showSnackbar(t(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["File deleted successfully."]))));
299
-
300
- case 3:
301
- case "end":
302
- return _context.stop();
303
- }
298
+ return showConfirmation( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
299
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
300
+ while (1) switch (_context.prev = _context.next) {
301
+ case 0:
302
+ _context.next = 2;
303
+ return deleteFile({
304
+ variables: {
305
+ id: file.id
306
+ }
307
+ });
308
+ case 2:
309
+ showSnackbar(t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["File deleted successfully."]))));
310
+ case 3:
311
+ case "end":
312
+ return _context.stop();
304
313
  }
305
314
  }, _callee);
306
315
  })));
@@ -308,85 +317,91 @@ export default function FileDetails(props) {
308
317
  }));
309
318
  });
310
319
  }, []);
311
- var fileTypeIcon = useMemo(function () {
320
+ var fileTypeIcon = (0, _react.useMemo)(function () {
312
321
  if (file && typeof file.type === "string") {
313
- return file.type.includes("image") ? /*#__PURE__*/React.createElement(ImageIcon, null) : /*#__PURE__*/React.createElement(FileIcon, null);
322
+ return file.type.includes("image") ? /*#__PURE__*/_react.default.createElement(_insert_photo24px.ReactComponent, null) : /*#__PURE__*/_react.default.createElement(_insert_drive_file24px.ReactComponent, null);
314
323
  }
315
-
316
- return /*#__PURE__*/React.createElement(ImageIcon, null);
324
+ return /*#__PURE__*/_react.default.createElement(_insert_photo24px.ReactComponent, null);
317
325
  }, [file]);
318
- return /*#__PURE__*/React.createElement(Drawer, {
326
+ return /*#__PURE__*/_react.default.createElement(_Drawer.Drawer, {
319
327
  className: fileDetailsSidebar,
320
328
  dir: "rtl",
321
329
  modal: true,
322
330
  open: Boolean(file),
323
331
  onClose: hideFileDetails,
324
332
  "data-testid": "fm.file-details.drawer"
325
- }, file && /*#__PURE__*/React.createElement("div", {
333
+ }, file && /*#__PURE__*/_react.default.createElement("div", {
326
334
  className: style.wrapper,
327
335
  dir: "ltr"
328
- }, /*#__PURE__*/React.createElement("div", {
336
+ }, /*#__PURE__*/_react.default.createElement("div", {
329
337
  className: style.header
330
- }, /*#__PURE__*/React.createElement(Typography, {
338
+ }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
331
339
  use: "headline5"
332
- }, t(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["File details"]))))), /*#__PURE__*/React.createElement("div", {
333
- className: classNames(style.preview, {
340
+ }, t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["File details"]))))), /*#__PURE__*/_react.default.createElement("div", {
341
+ className: (0, _classnames.default)(style.preview, {
334
342
  dark: darkImageBackground
335
343
  })
336
- }, filePlugin.render({
344
+ }, filePlugin && filePlugin.render({
345
+ /**
346
+ * TODO: @ts-refactor
347
+ * Figure out which type is the file
348
+ */
349
+ // @ts-ignore
337
350
  file: file,
338
351
  uploadFile: uploadFile,
339
352
  validateFiles: validateFiles
340
- })), /*#__PURE__*/React.createElement("div", {
353
+ })), /*#__PURE__*/_react.default.createElement("div", {
341
354
  className: style.download
342
- }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Tooltip, {
343
- content: /*#__PURE__*/React.createElement("span", null, t(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["Copy URL"])))),
355
+ }, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Tooltip.Tooltip, {
356
+ content: /*#__PURE__*/_react.default.createElement("span", null, t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Copy URL"])))),
344
357
  placement: "bottom"
345
- }, /*#__PURE__*/React.createElement(IconButton, {
358
+ }, /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
346
359
  onClick: function onClick() {
347
360
  navigator.clipboard.writeText(file.src);
348
- showSnackbar(t(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["URL copied successfully."]))));
361
+ showSnackbar(t(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["URL copied successfully."]))));
349
362
  },
350
- icon: /*#__PURE__*/React.createElement(CopyContentIcon, {
363
+ icon: /*#__PURE__*/_react.default.createElement(_content_copyBlack24px.ReactComponent, {
351
364
  style: {
352
365
  margin: "0 8px 0 0"
353
366
  }
354
367
  })
355
368
  })), actions.map(function (Component, index) {
356
- return /*#__PURE__*/React.createElement(Component, Object.assign({
369
+ return /*#__PURE__*/_react.default.createElement(Component, Object.assign({
357
370
  key: index
358
371
  }, props));
359
- }), renderDeleteImageAction(file), /*#__PURE__*/React.createElement(Tooltip, {
360
- content: t(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["Toggle background"]))),
372
+ }), renderDeleteImageAction(file), /*#__PURE__*/_react.default.createElement(_Tooltip.Tooltip, {
373
+ content: t(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["Toggle background"]))),
361
374
  placement: "bottom"
362
- }, /*#__PURE__*/React.createElement(IconButton, {
363
- icon: /*#__PURE__*/React.createElement(HighlightIcon, null),
375
+ }, /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
376
+ icon: /*#__PURE__*/_react.default.createElement(_highlight24px.ReactComponent, null),
364
377
  onClick: function onClick() {
365
378
  return setDarkImageBackground(!darkImageBackground);
366
379
  },
367
- className: classNames({
380
+ className: (0, _classnames.default)({
368
381
  "icon--active": darkImageBackground
369
382
  })
370
- })))), /*#__PURE__*/React.createElement(DrawerContent, {
383
+ })))), /*#__PURE__*/_react.default.createElement(_Drawer.DrawerContent, {
371
384
  dir: "ltr",
372
385
  className: style.drawerContent
373
- }, /*#__PURE__*/React.createElement("ul", {
386
+ }, /*#__PURE__*/_react.default.createElement("ul", {
374
387
  className: style.list
375
- }, /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement(Name, props)), /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement("li-title", null, /*#__PURE__*/React.createElement(Icon, {
388
+ }, /*#__PURE__*/_react.default.createElement("li", null, /*#__PURE__*/_react.default.createElement(_Name.default, props)), /*#__PURE__*/_react.default.createElement("li", null, /*#__PURE__*/_react.default.createElement("li-title", null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
376
389
  className: "list-item__icon",
377
390
  icon: fileTypeIcon
378
- }), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Typography, {
391
+ }), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
379
392
  use: "subtitle1"
380
- }, file.type), " ", " - ", /*#__PURE__*/React.createElement(Typography, {
393
+ }, file.type), " ", " - ", /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
381
394
  use: "subtitle1"
382
- }, bytes.format(file.size, {
395
+ }, _bytes.default.format(file.size, {
383
396
  unitSeparator: " "
384
- }))))), /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement("li-title", null, /*#__PURE__*/React.createElement(Icon, {
397
+ }))))), /*#__PURE__*/_react.default.createElement("li", null, /*#__PURE__*/_react.default.createElement("li-title", null, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
385
398
  className: "list-item__icon",
386
- icon: /*#__PURE__*/React.createElement(CalendarIcon, null)
387
- }), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Typography, {
399
+ icon: /*#__PURE__*/_react.default.createElement(_today24px.ReactComponent, null)
400
+ }), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
388
401
  use: "subtitle1"
389
- }, dayjs(file.createdOn).format("DD MMM YYYY [at] HH:mm"))))), /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement(Tags, Object.assign({
402
+ }, (0, _dayjs.default)(file.createdOn).format("DD MMM YYYY [at] HH:mm"))))), /*#__PURE__*/_react.default.createElement("li", null, /*#__PURE__*/_react.default.createElement(_Tags.default, Object.assign({
390
403
  key: props.file.id
391
404
  }, props)))))));
392
- }
405
+ };
406
+ var _default = FileDetails;
407
+ exports.default = _default;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["t","i18n","ns","fileDetailsSidebar","css","width","style","wrapper","height","overflowY","header","textAlign","marginBottom","paddingTop","textTransform","color","fontWeight","preview","boxSizing","display","justifyContent","alignItems","position","margin","img","objectFit","maxHeight","maxWidth","transform","backgroundColor","download","list","li","padding","lineHeight","minHeight","marginRight","flex","whiteSpace","overflow","textOverflow","drawerContent","isImage","file","fileType","mime","getType","name","includes","FileDetails","props","uploadFile","validateFiles","filePlugin","getFileTypePlugin","actions","get","useFileManager","hideFileDetails","queryParams","useState","darkImageBackground","setDarkImageBackground","useSecurity","identity","getPermission","fmFilePermission","useMemo","canDelete","useCallback","item","own","identityId","id","login","rwd","useHotkeys","zIndex","disabled","keys","esc","useMutation","DELETE_FILE","update","cache","data","cloneDeep","readQuery","query","LIST_FILES","variables","fileManager","listFiles","error","meta","hasMoreItems","cursor","totalItem","filteredList","filter","selectedFile","find","writeQuery","set","Array","isArray","tags","tagCountMap","forEach","tag","listTagsData","LIST_TAGS","where","getWhere","scope","filteredTags","listTags","deleteFile","useSnackbar","showSnackbar","renderDeleteImageAction","fileDeleteConfirmationProps","title","message","showConfirmation","fileTypeIcon","type","Boolean","classNames","dark","render","navigator","clipboard","writeText","src","map","Component","index","bytes","format","size","unitSeparator","dayjs","createdOn"],"sources":["FileDetails.tsx"],"sourcesContent":["import React, { useCallback, useMemo, useState } from \"react\";\nimport bytes from \"bytes\";\nimport classNames from \"classnames\";\nimport { css } from \"emotion\";\nimport { Drawer, DrawerContent } from \"@webiny/ui/Drawer\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport getFileTypePlugin from \"./getFileTypePlugin\";\nimport dayjs from \"dayjs\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport Tags from \"./FileDetails/Tags\";\nimport Name from \"./FileDetails/Name\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { Typography } from \"@webiny/ui/Typography\";\n/**\n * Package react-hotkeyz has no types.\n */\n// @ts-ignore\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { ReactComponent as CopyContentIcon } from \"./icons/content_copy-black-24px.svg\";\nimport { ReactComponent as DeleteIcon } from \"./icons/delete.svg\";\nimport { ReactComponent as ImageIcon } from \"../../assets/icons/insert_photo-24px.svg\";\nimport { ReactComponent as FileIcon } from \"../../assets/icons/insert_drive_file-24px.svg\";\nimport { ReactComponent as CalendarIcon } from \"../../assets/icons/today-24px.svg\";\nimport { ReactComponent as HighlightIcon } from \"../../assets/icons/highlight-24px.svg\";\nimport { getWhere, useFileManager } from \"./FileManagerContext\";\nimport { useMutation } from \"@apollo/react-hooks\";\nimport { useSnackbar } from \"~/hooks/useSnackbar\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport { ConfirmationDialog } from \"@webiny/ui/ConfirmationDialog\";\nimport {\n DELETE_FILE,\n DeleteFileMutationResponse,\n DeleteFileMutationVariables,\n LIST_FILES,\n LIST_TAGS,\n ListFilesQueryResponse,\n ListFileTagsQueryResponse\n} from \"./graphql\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport mime from \"mime\";\nimport { FileItem, FileManagerSecurityPermission } from \"./types\";\nimport { FilesRenderChildren } from \"react-butterfiles\";\n\nconst t = i18n.ns(\"app-admin/file-manager/file-details\");\n\nconst fileDetailsSidebar = css({\n \"&.mdc-drawer\": {\n width: 360\n }\n});\n\ndeclare global {\n // eslint-disable-next-line\n namespace JSX {\n interface IntrinsicElements {\n \"li-title\": {\n children?: React.ReactNode;\n };\n\n \"li-content\": {\n children?: React.ReactNode;\n };\n }\n }\n}\n\nconst style: any = {\n wrapper: css({\n height: \"100vh\",\n overflowY: \"auto\"\n }),\n header: css({\n textAlign: \"center\",\n marginBottom: 24,\n paddingTop: 16,\n \"& span\": {\n textTransform: \"capitalize\",\n color: \"var(--mdc-theme-on-surface)\",\n fontWeight: 600\n }\n }),\n preview: css({\n boxSizing: \"border-box\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"relative\",\n width: \"100%\",\n height: 300,\n margin: \"0 auto 24px\",\n img: {\n objectFit: \"contain\",\n maxHeight: 300,\n maxWidth: 300,\n width: \"100%\",\n position: \"static\",\n transform: \"none\"\n },\n \"&.dark\": {\n backgroundColor: \"var(--mdc-theme-background)\"\n }\n }),\n download: css({\n textAlign: \"center\",\n margin: \"0 auto\",\n width: \"100%\",\n \"& .icon--active\": {\n \"&.mdc-icon-button\": {\n color: \"var(--mdc-theme-text-on-primary)\"\n }\n }\n }),\n list: css({\n textAlign: \"left\",\n color: \"var(--mdc-theme-on-surface)\",\n li: {\n padding: \"12px 16px\",\n lineHeight: \"22px\",\n \"li-title\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n minHeight: 48,\n \"& .list-item__title\": {\n fontWeight: 600\n },\n \"& .list-item__icon\": {\n marginRight: 24\n },\n \"& .list-item__content\": {\n flex: \"1 0 200px\"\n }\n },\n \"li-content\": {\n width: \"100%\",\n display: \"block\",\n \"& .list-item__truncate\": {\n display: \"block\",\n width: \"100%\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\"\n }\n }\n }\n }),\n drawerContent: css({\n \"&.mdc-drawer__content\": {\n height: \"auto\",\n overflowY: \"inherit\"\n }\n })\n};\ninterface FileDetailsProps {\n canEdit: (item: any) => boolean;\n file: FileItem;\n uploadFile: (files: FileItem[] | FileItem) => Promise<number | null>;\n validateFiles: FilesRenderChildren[\"validateFiles\"];\n [key: string]: any;\n}\n\nconst isImage = (file: FileItem) => {\n const fileType = mime.getType(file && file.name);\n\n if (fileType && typeof fileType === \"string\") {\n return fileType.includes(\"image\");\n }\n\n return false;\n};\n\nconst FileDetails: React.FC<FileDetailsProps> = props => {\n const { file, uploadFile, validateFiles } = props;\n\n const filePlugin = getFileTypePlugin(file);\n const actions: React.FC[] =\n get(filePlugin, \"fileDetails.actions\") || get(filePlugin, \"actions\") || [];\n\n const { hideFileDetails, queryParams } = useFileManager();\n const [darkImageBackground, setDarkImageBackground] = useState(false);\n\n const { identity, getPermission } = useSecurity();\n const fmFilePermission = useMemo((): FileManagerSecurityPermission | null => {\n return getPermission(\"fm.file\");\n }, [identity]);\n const canDelete = useCallback(\n item => {\n // Bail out early if no access\n if (!fmFilePermission) {\n return false;\n }\n if (fmFilePermission.own) {\n const identityId = identity ? identity.id || identity.login : null;\n if (!identityId) {\n return false;\n }\n return get(item, \"createdBy.id\") === identityId;\n }\n if (typeof fmFilePermission.rwd === \"string\") {\n return fmFilePermission.rwd.includes(\"d\");\n }\n return true;\n },\n [fmFilePermission]\n );\n\n useHotkeys({\n zIndex: 55,\n disabled: !file,\n keys: {\n esc: hideFileDetails\n }\n });\n\n const [deleteFile] = useMutation<DeleteFileMutationResponse, DeleteFileMutationVariables>(\n DELETE_FILE,\n {\n update: cache => {\n // 1. Update files list cache\n let data = cloneDeep(\n cache.readQuery<ListFilesQueryResponse>({\n query: LIST_FILES,\n variables: queryParams\n })\n );\n if (!data) {\n data = {\n fileManager: {\n listFiles: {\n data: [],\n error: null,\n meta: {\n hasMoreItems: false,\n cursor: null,\n totalItem: 0\n }\n }\n }\n };\n }\n const filteredList = data.fileManager.listFiles.data.filter(\n (item: FileItem) => item.id !== file.id\n );\n const selectedFile = data.fileManager.listFiles.data.find(\n (item: FileItem) => item.id === file.id\n );\n\n cache.writeQuery({\n query: LIST_FILES,\n variables: queryParams,\n data: set(data, \"fileManager.listFiles.data\", filteredList)\n });\n // 2. Update \"ListTags\" cache\n if (!selectedFile || Array.isArray(selectedFile.tags) === false) {\n return;\n }\n const tagCountMap: Record<string, number> = {};\n // Prepare \"tag\" count map\n data.fileManager.listFiles.data.forEach((file: FileItem) => {\n if (!Array.isArray(file.tags)) {\n return;\n }\n file.tags.forEach(tag => {\n if (tagCountMap[tag]) {\n tagCountMap[tag] += 1;\n } else {\n tagCountMap[tag] = 1;\n }\n });\n });\n\n // Get tags from cache\n const listTagsData = cloneDeep(\n cache.readQuery<ListFileTagsQueryResponse>({\n query: LIST_TAGS,\n variables: { where: getWhere(queryParams.scope) }\n })\n );\n // Remove selected file tags from list.\n const filteredTags = (listTagsData?.fileManager?.listTags || []).filter(\n (tag: string) => {\n if (!selectedFile.tags.includes(tag)) {\n return true;\n }\n return tagCountMap[tag] > 1;\n }\n );\n\n // Write it to cache\n cache.writeQuery({\n query: LIST_TAGS,\n variables: { where: getWhere(queryParams.scope) },\n data: set(data, \"fileManager.listTags\", filteredTags)\n });\n }\n }\n );\n const { showSnackbar } = useSnackbar();\n\n const renderDeleteImageAction = useCallback(file => {\n if (!canDelete(file)) {\n return null;\n }\n const fileDeleteConfirmationProps = {\n title: t`Delete file`,\n message: file && (\n <span>\n {t`You're about to delete file {name}. Are you sure you want to continue?`({\n name: file.name\n })}\n </span>\n )\n };\n return (\n <ConfirmationDialog\n {...fileDeleteConfirmationProps}\n data-testid={\"fm-delete-file-confirmation-dialog\"}\n style={{ zIndex: 100 }}\n >\n {({ showConfirmation }) => {\n return (\n <Tooltip\n content={\n isImage(file) ? (\n <span>{t`Delete image`}</span>\n ) : (\n <span>{t`Delete file`}</span>\n )\n }\n placement={\"bottom\"}\n >\n <IconButton\n data-testid={\"fm-delete-file-button\"}\n icon={<DeleteIcon style={{ margin: \"0 8px 0 0\" }} />}\n onClick={() =>\n showConfirmation(async () => {\n await deleteFile({\n variables: {\n id: file.id\n }\n });\n showSnackbar(t`File deleted successfully.`);\n })\n }\n />\n </Tooltip>\n );\n }}\n </ConfirmationDialog>\n );\n }, []);\n\n const fileTypeIcon = useMemo(() => {\n if (file && typeof file.type === \"string\") {\n return file.type.includes(\"image\") ? <ImageIcon /> : <FileIcon />;\n }\n return <ImageIcon />;\n }, [file]);\n\n return (\n <Drawer\n className={fileDetailsSidebar}\n dir=\"rtl\"\n modal\n open={Boolean(file)}\n onClose={hideFileDetails}\n data-testid={\"fm.file-details.drawer\"}\n >\n {file && (\n <div className={style.wrapper} dir=\"ltr\">\n <div className={style.header}>\n <Typography use={\"headline5\"}>{t`File details`}</Typography>\n </div>\n <div\n className={classNames(style.preview, {\n dark: darkImageBackground\n })}\n >\n {filePlugin &&\n filePlugin.render({\n /**\n * TODO: @ts-refactor\n * Figure out which type is the file\n */\n // @ts-ignore\n file,\n uploadFile,\n validateFiles\n })}\n </div>\n <div className={style.download}>\n <>\n <Tooltip content={<span>{t`Copy URL`}</span>} placement={\"bottom\"}>\n <IconButton\n onClick={() => {\n navigator.clipboard.writeText(file.src);\n showSnackbar(t`URL copied successfully.`);\n }}\n icon={<CopyContentIcon style={{ margin: \"0 8px 0 0\" }} />}\n />\n </Tooltip>\n\n {actions.map((Component: React.FC, index: number) => (\n <Component key={index} {...props} />\n ))}\n {renderDeleteImageAction(file)}\n {/* Render background switcher */}\n <Tooltip content={t`Toggle background`} placement={\"bottom\"}>\n <IconButton\n icon={<HighlightIcon />}\n onClick={() => setDarkImageBackground(!darkImageBackground)}\n className={classNames({ \"icon--active\": darkImageBackground })}\n />\n </Tooltip>\n </>\n </div>\n <DrawerContent dir=\"ltr\" className={style.drawerContent}>\n <ul className={style.list}>\n <li>\n <Name {...props} />\n </li>\n <li>\n <li-title>\n <Icon className={\"list-item__icon\"} icon={fileTypeIcon} />\n <div>\n <Typography use={\"subtitle1\"}>{file.type}</Typography>{\" \"}\n {\" - \"}\n <Typography use={\"subtitle1\"}>\n {bytes.format(file.size, { unitSeparator: \" \" })}\n </Typography>\n </div>\n </li-title>\n </li>\n <li>\n <li-title>\n <Icon className={\"list-item__icon\"} icon={<CalendarIcon />} />\n <div>\n <Typography use={\"subtitle1\"}>\n {dayjs(file.createdOn).format(\"DD MMM YYYY [at] HH:mm\")}\n </Typography>\n </div>\n </li-title>\n </li>\n <li>\n <Tags key={props.file.id} {...props} />\n </li>\n </ul>\n </DrawerContent>\n </div>\n )}\n </Drawer>\n );\n};\n\nexport default FileDetails;\n"],"mappings":"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"}