@webiny/app-admin 0.0.0-mt-1

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 (357) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +21 -0
  3. package/assets/icons/add-18px.svg +3 -0
  4. package/assets/icons/arrow_drop_down-24px.svg +4 -0
  5. package/assets/icons/attach_file_black_24dp.svg +1 -0
  6. package/assets/icons/baseline-menu-24px.svg +4 -0
  7. package/assets/icons/baseline-notification_important-24px.svg +4 -0
  8. package/assets/icons/baseline-security-24px.svg +4 -0
  9. package/assets/icons/filter-24px.svg +8 -0
  10. package/assets/icons/github-brands.svg +1 -0
  11. package/assets/icons/highlight-24px.svg +1 -0
  12. package/assets/icons/icon-community.svg +16 -0
  13. package/assets/icons/icon-documentation.svg +16 -0
  14. package/assets/icons/info.svg +1 -0
  15. package/assets/icons/insert_drive_file-24px.svg +1 -0
  16. package/assets/icons/insert_photo-24px.svg +1 -0
  17. package/assets/icons/label-24px.svg +1 -0
  18. package/assets/icons/round-account_circle-24px.svg +1 -0
  19. package/assets/icons/round-add-24px.svg +16 -0
  20. package/assets/icons/round-arrow_drop_down-24px.svg +1 -0
  21. package/assets/icons/round-chevron_right-24px.svg +12 -0
  22. package/assets/icons/round-feedback-24px.svg +54 -0
  23. package/assets/icons/round-help-24px.svg +1 -0
  24. package/assets/icons/round-invert_colors-24px.svg +52 -0
  25. package/assets/icons/round-keyboard_arrow_down-24px.svg +16 -0
  26. package/assets/icons/round-keyboard_arrow_up-24px.svg +16 -0
  27. package/assets/icons/round-lock_open-24px.svg +60 -0
  28. package/assets/icons/round-more_vert-24px.svg +12 -0
  29. package/assets/icons/round-open_in_new-24px.svg +44 -0
  30. package/assets/icons/round-settings-24px.svg +4 -0
  31. package/assets/icons/search-24px.svg +20 -0
  32. package/assets/icons/slack-logo.svg +1 -0
  33. package/assets/icons/today-24px.svg +1 -0
  34. package/assets/icons/touch_app.svg +1 -0
  35. package/assets/images/arr.png +0 -0
  36. package/assets/images/arr_2.png +0 -0
  37. package/assets/images/header_bg.jpg +0 -0
  38. package/assets/images/icons.png +0 -0
  39. package/assets/images/icons_retina.png +0 -0
  40. package/assets/images/logo.png +0 -0
  41. package/assets/images/logo_orange.png +0 -0
  42. package/assets/images/public/bg-login.png +0 -0
  43. package/assets/images/public/favicon.ico +0 -0
  44. package/assets/images/public/logo_orange.png +0 -0
  45. package/assets/images/public/preloader_2.png +0 -0
  46. package/assets/images/swich.png +0 -0
  47. package/assets/images/table_img.jpg +0 -0
  48. package/assets/images/webiny-logo.svg +20 -0
  49. package/assets/images/webiny-orange-logo.svg +20 -0
  50. package/components/AdminLayout.d.ts +7 -0
  51. package/components/AdminLayout.js +35 -0
  52. package/components/AppInstaller/Sidebar.d.ts +7 -0
  53. package/components/AppInstaller/Sidebar.js +158 -0
  54. package/components/AppInstaller/assets/sign-in-divider.svg +19 -0
  55. package/components/AppInstaller/index.d.ts +5 -0
  56. package/components/AppInstaller/index.js +134 -0
  57. package/components/AppInstaller/styled.d.ts +7 -0
  58. package/components/AppInstaller/styled.js +73 -0
  59. package/components/AppInstaller/useInstaller.d.ts +11 -0
  60. package/components/AppInstaller/useInstaller.js +279 -0
  61. package/components/EmptyView.d.ts +8 -0
  62. package/components/EmptyView.js +56 -0
  63. package/components/FileManager/BottomInfoBar/SupportedFileTypes.d.ts +5 -0
  64. package/components/FileManager/BottomInfoBar/SupportedFileTypes.js +35 -0
  65. package/components/FileManager/BottomInfoBar/UploadStatus.d.ts +5 -0
  66. package/components/FileManager/BottomInfoBar/UploadStatus.js +47 -0
  67. package/components/FileManager/BottomInfoBar.d.ts +3 -0
  68. package/components/FileManager/BottomInfoBar.js +42 -0
  69. package/components/FileManager/DropFilesHere.d.ts +8 -0
  70. package/components/FileManager/DropFilesHere.js +58 -0
  71. package/components/FileManager/File.d.ts +18 -0
  72. package/components/FileManager/File.js +129 -0
  73. package/components/FileManager/FileDetails/Name.d.ts +6 -0
  74. package/components/FileManager/FileDetails/Name.js +113 -0
  75. package/components/FileManager/FileDetails/Tags.d.ts +6 -0
  76. package/components/FileManager/FileDetails/Tags.js +241 -0
  77. package/components/FileManager/FileDetails.d.ts +23 -0
  78. package/components/FileManager/FileDetails.js +392 -0
  79. package/components/FileManager/FileManagerContext.d.ts +23 -0
  80. package/components/FileManager/FileManagerContext.js +174 -0
  81. package/components/FileManager/FileManagerView.d.ts +23 -0
  82. package/components/FileManager/FileManagerView.js +632 -0
  83. package/components/FileManager/LeftSidebar.d.ts +8 -0
  84. package/components/FileManager/LeftSidebar.js +95 -0
  85. package/components/FileManager/NoPermissionView.d.ts +3 -0
  86. package/components/FileManager/NoPermissionView.js +70 -0
  87. package/components/FileManager/NoResults.d.ts +2 -0
  88. package/components/FileManager/NoResults.js +13 -0
  89. package/components/FileManager/getFileTypePlugin.d.ts +1 -0
  90. package/components/FileManager/getFileTypePlugin.js +27 -0
  91. package/components/FileManager/getFileUploader.d.ts +2 -0
  92. package/components/FileManager/getFileUploader.js +10 -0
  93. package/components/FileManager/graphql.d.ts +6 -0
  94. package/components/FileManager/graphql.js +17 -0
  95. package/components/FileManager/icons/content_copy-black-24px.svg +1 -0
  96. package/components/FileManager/icons/delete.svg +12 -0
  97. package/components/FileManager/icons/privacy_tip-24px.svg +10 -0
  98. package/components/FileManager/icons/round-check_box-24px.svg +4 -0
  99. package/components/FileManager/icons/round-check_box_outline_blank-24px.svg +4 -0
  100. package/components/FileManager/icons/round-cloud_download-24px.svg +4 -0
  101. package/components/FileManager/icons/round-cloud_upload-24px.svg +4 -0
  102. package/components/FileManager/icons/round-description-24px.svg +4 -0
  103. package/components/FileManager/icons/round-edit-24px.svg +4 -0
  104. package/components/FileManager/icons/round-info-24px.svg +4 -0
  105. package/components/FileManager/icons/round-label-24px.svg +4 -0
  106. package/components/FileManager/icons/round-more_vert-24px.svg +4 -0
  107. package/components/FileManager/icons/round-search-24px.svg +20 -0
  108. package/components/FileManager/outputFileSelectionError.d.ts +2 -0
  109. package/components/FileManager/outputFileSelectionError.js +39 -0
  110. package/components/FileManager.d.ts +18 -0
  111. package/components/FileManager.js +133 -0
  112. package/components/FloatingActionButton.d.ts +3 -0
  113. package/components/FloatingActionButton.js +17 -0
  114. package/components/MultiImageUpload.d.ts +4 -0
  115. package/components/MultiImageUpload.js +20 -0
  116. package/components/OverlayLayout/OverlayLayout.d.ts +25 -0
  117. package/components/OverlayLayout/OverlayLayout.js +159 -0
  118. package/components/OverlayLayout/icons/close.svg +13 -0
  119. package/components/OverlayLayout/icons/navigate_before.svg +16 -0
  120. package/components/OverlayLayout/index.d.ts +1 -0
  121. package/components/OverlayLayout/index.js +1 -0
  122. package/components/Permissions/Permissions.d.ts +7 -0
  123. package/components/Permissions/Permissions.js +37 -0
  124. package/components/Permissions/StyledComponents.d.ts +6 -0
  125. package/components/Permissions/StyledComponents.js +19 -0
  126. package/components/Permissions/index.d.ts +2 -0
  127. package/components/Permissions/index.js +2 -0
  128. package/components/RichTextEditor/RichTextEditor.d.ts +3 -0
  129. package/components/RichTextEditor/RichTextEditor.js +15 -0
  130. package/components/RichTextEditor/index.d.ts +2 -0
  131. package/components/RichTextEditor/index.js +2 -0
  132. package/components/RichTextEditor/styles.scss +64 -0
  133. package/components/RichTextEditor/tools/header/index.d.ts +228 -0
  134. package/components/RichTextEditor/tools/header/index.js +731 -0
  135. package/components/RichTextEditor/tools/header/styles.scss +48 -0
  136. package/components/RichTextEditor/tools/image/index.d.ts +97 -0
  137. package/components/RichTextEditor/tools/image/index.js +257 -0
  138. package/components/RichTextEditor/tools/image/styles.scss +90 -0
  139. package/components/RichTextEditor/tools/image/svgs.d.ts +6 -0
  140. package/components/RichTextEditor/tools/image/svgs.js +5 -0
  141. package/components/RichTextEditor/tools/image/tunes.d.ts +58 -0
  142. package/components/RichTextEditor/tools/image/tunes.js +134 -0
  143. package/components/RichTextEditor/tools/image/ui.d.ts +111 -0
  144. package/components/RichTextEditor/tools/image/ui.js +281 -0
  145. package/components/RichTextEditor/tools/paragraph/index.d.ts +211 -0
  146. package/components/RichTextEditor/tools/paragraph/index.js +520 -0
  147. package/components/RichTextEditor/tools/paragraph/styles.scss +29 -0
  148. package/components/RichTextEditor/tools/textColor/index.d.ts +58 -0
  149. package/components/RichTextEditor/tools/textColor/index.js +232 -0
  150. package/components/RichTextEditor/tools/textColor/styles.scss +21 -0
  151. package/components/RichTextEditor/tools/utils.d.ts +19 -0
  152. package/components/RichTextEditor/tools/utils.js +24 -0
  153. package/components/SearchUI.d.ts +8 -0
  154. package/components/SearchUI.js +59 -0
  155. package/components/SimpleForm/SimpleForm.d.ts +21 -0
  156. package/components/SimpleForm/SimpleForm.js +75 -0
  157. package/components/SimpleForm/index.d.ts +1 -0
  158. package/components/SimpleForm/index.js +1 -0
  159. package/components/SimpleUI/InputField.d.ts +9 -0
  160. package/components/SimpleUI/InputField.js +97 -0
  161. package/components/SingleImageUpload.d.ts +25 -0
  162. package/components/SingleImageUpload.js +102 -0
  163. package/components/SplitView/SplitView.d.ts +10 -0
  164. package/components/SplitView/SplitView.js +76 -0
  165. package/components/SplitView/index.d.ts +1 -0
  166. package/components/SplitView/index.js +1 -0
  167. package/components/index.d.ts +1 -0
  168. package/components/index.js +1 -0
  169. package/hooks/useConfirmationDialog.d.ts +10 -0
  170. package/hooks/useConfirmationDialog.js +47 -0
  171. package/hooks/useDialog.d.ts +5 -0
  172. package/hooks/useDialog.js +27 -0
  173. package/hooks/useSnackbar.d.ts +4 -0
  174. package/hooks/useSnackbar.js +25 -0
  175. package/package.json +101 -0
  176. package/plugins/FileManagerFileTypePlugin.d.ts +33 -0
  177. package/plugins/FileManagerFileTypePlugin.js +46 -0
  178. package/plugins/MenuPlugin.d.ts +20 -0
  179. package/plugins/MenuPlugin.js +41 -0
  180. package/plugins/PermissionRendererPlugin.d.ts +22 -0
  181. package/plugins/PermissionRendererPlugin.js +41 -0
  182. package/plugins/fileManager/fileDefault.d.ts +3 -0
  183. package/plugins/fileManager/fileDefault.js +20 -0
  184. package/plugins/fileManager/fileImage/DeleteAction.d.ts +3 -0
  185. package/plugins/fileManager/fileImage/DeleteAction.js +62 -0
  186. package/plugins/fileManager/fileImage/EditAction.d.ts +9 -0
  187. package/plugins/fileManager/fileImage/EditAction.js +143 -0
  188. package/plugins/fileManager/fileImage/index.d.ts +3 -0
  189. package/plugins/fileManager/fileImage/index.js +29 -0
  190. package/plugins/fileManager/icons/edit.svg +17 -0
  191. package/plugins/fileManager/icons/round-description-24px.svg +1 -0
  192. package/plugins/fileManager/index.d.ts +2 -0
  193. package/plugins/fileManager/index.js +3 -0
  194. package/plugins/globalSearch/SearchBar.d.ts +3 -0
  195. package/plugins/globalSearch/SearchBar.js +241 -0
  196. package/plugins/globalSearch/SearchBarDropdown.d.ts +5 -0
  197. package/plugins/globalSearch/SearchBarDropdown.js +82 -0
  198. package/plugins/globalSearch/icons/round-search-24px.svg +20 -0
  199. package/plugins/globalSearch/index.d.ts +8 -0
  200. package/plugins/globalSearch/index.js +30 -0
  201. package/plugins/globalSearch/styled.d.ts +9 -0
  202. package/plugins/globalSearch/styled.js +115 -0
  203. package/plugins/index.d.ts +6 -0
  204. package/plugins/index.js +8 -0
  205. package/plugins/logo/Logo.d.ts +22 -0
  206. package/plugins/logo/Logo.js +108 -0
  207. package/plugins/logo/index.d.ts +5 -0
  208. package/plugins/logo/index.js +32 -0
  209. package/plugins/menu/documentation.d.ts +4 -0
  210. package/plugins/menu/documentation.js +16 -0
  211. package/plugins/menu/fileManager.d.ts +4 -0
  212. package/plugins/menu/fileManager.js +64 -0
  213. package/plugins/menu/index.d.ts +6 -0
  214. package/plugins/menu/index.js +24 -0
  215. package/plugins/menu/renderers/MenuGroupRenderer.d.ts +7 -0
  216. package/plugins/menu/renderers/MenuGroupRenderer.js +126 -0
  217. package/plugins/menu/renderers/MenuLinkRenderer.d.ts +7 -0
  218. package/plugins/menu/renderers/MenuLinkRenderer.js +52 -0
  219. package/plugins/menu/renderers/MenuSectionItemRenderer.d.ts +7 -0
  220. package/plugins/menu/renderers/MenuSectionItemRenderer.js +77 -0
  221. package/plugins/menu/renderers/MenuSectionRenderer.d.ts +7 -0
  222. package/plugins/menu/renderers/MenuSectionRenderer.js +51 -0
  223. package/plugins/menu/slack.d.ts +4 -0
  224. package/plugins/menu/slack.js +16 -0
  225. package/plugins/menu/source.d.ts +4 -0
  226. package/plugins/menu/source.js +16 -0
  227. package/plugins/uiLayoutRenderer/index.d.ts +3 -0
  228. package/plugins/uiLayoutRenderer/index.js +63 -0
  229. package/plugins/userMenu/UserMenuElement.d.ts +7 -0
  230. package/plugins/userMenu/UserMenuElement.js +43 -0
  231. package/plugins/userMenu/UserMenuRenderer.d.ts +6 -0
  232. package/plugins/userMenu/UserMenuRenderer.js +47 -0
  233. package/plugins/userMenu/index.d.ts +4 -0
  234. package/plugins/userMenu/index.js +16 -0
  235. package/styles/material-theme-assignments.scss +333 -0
  236. package/styles/material.scss +74 -0
  237. package/styles/theme.scss +43 -0
  238. package/styles.scss +2 -0
  239. package/types.d.ts +100 -0
  240. package/types.js +1 -0
  241. package/ui/UIElement.d.ts +2 -0
  242. package/ui/UIElement.js +1 -0
  243. package/ui/UILayout.d.ts +1 -0
  244. package/ui/UILayout.js +1 -0
  245. package/ui/UIRenderer.d.ts +2 -0
  246. package/ui/UIRenderer.js +1 -0
  247. package/ui/UIView.d.ts +2 -0
  248. package/ui/UIView.js +1 -0
  249. package/ui/elements/AccordionElement.d.ts +27 -0
  250. package/ui/elements/AccordionElement.js +86 -0
  251. package/ui/elements/ButtonElement.d.ts +24 -0
  252. package/ui/elements/ButtonElement.js +78 -0
  253. package/ui/elements/ButtonGroupElement.d.ts +6 -0
  254. package/ui/elements/ButtonGroupElement.js +48 -0
  255. package/ui/elements/GenericElement.d.ts +1 -0
  256. package/ui/elements/GenericElement.js +1 -0
  257. package/ui/elements/LabelElement.d.ts +16 -0
  258. package/ui/elements/LabelElement.js +47 -0
  259. package/ui/elements/NavigationMenuElement.d.ts +32 -0
  260. package/ui/elements/NavigationMenuElement.js +158 -0
  261. package/ui/elements/PanelElement.d.ts +3 -0
  262. package/ui/elements/PanelElement.js +17 -0
  263. package/ui/elements/PlaceholderElement.d.ts +5 -0
  264. package/ui/elements/PlaceholderElement.js +30 -0
  265. package/ui/elements/SmallButtonElement.d.ts +6 -0
  266. package/ui/elements/SmallButtonElement.js +47 -0
  267. package/ui/elements/TypographyElement.d.ts +13 -0
  268. package/ui/elements/TypographyElement.js +49 -0
  269. package/ui/elements/ViewElement.d.ts +1 -0
  270. package/ui/elements/ViewElement.js +1 -0
  271. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.d.ts +6 -0
  272. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js +44 -0
  273. package/ui/elements/form/DynamicFieldsetElement.d.ts +42 -0
  274. package/ui/elements/form/DynamicFieldsetElement.js +127 -0
  275. package/ui/elements/form/FileManagerElement/EmptyStateElement.d.ts +4 -0
  276. package/ui/elements/form/FileManagerElement/EmptyStateElement.js +24 -0
  277. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.d.ts +7 -0
  278. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +72 -0
  279. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.d.ts +13 -0
  280. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +95 -0
  281. package/ui/elements/form/FileManagerElement/styled.d.ts +14 -0
  282. package/ui/elements/form/FileManagerElement/styled.js +106 -0
  283. package/ui/elements/form/FileManagerElement.d.ts +24 -0
  284. package/ui/elements/form/FileManagerElement.js +91 -0
  285. package/ui/elements/form/FormElement.d.ts +21 -0
  286. package/ui/elements/form/FormElement.js +45 -0
  287. package/ui/elements/form/FormFieldElement.d.ts +55 -0
  288. package/ui/elements/form/FormFieldElement.js +183 -0
  289. package/ui/elements/form/HiddenElement.d.ts +6 -0
  290. package/ui/elements/form/HiddenElement.js +49 -0
  291. package/ui/elements/form/InputElement.d.ts +6 -0
  292. package/ui/elements/form/InputElement.js +55 -0
  293. package/ui/elements/form/PasswordElement.d.ts +6 -0
  294. package/ui/elements/form/PasswordElement.js +50 -0
  295. package/ui/elements/form/README.md +2 -0
  296. package/ui/elements/form/SelectElement.d.ts +15 -0
  297. package/ui/elements/form/SelectElement.js +71 -0
  298. package/ui/elements/form/TextareaElement.d.ts +15 -0
  299. package/ui/elements/form/TextareaElement.js +56 -0
  300. package/ui/views/AdminView/ContentElement.d.ts +4 -0
  301. package/ui/views/AdminView/ContentElement.js +62 -0
  302. package/ui/views/AdminView/HeaderElement.d.ts +13 -0
  303. package/ui/views/AdminView/HeaderElement.js +111 -0
  304. package/ui/views/AdminView/HeaderSectionCenterElement.d.ts +6 -0
  305. package/ui/views/AdminView/HeaderSectionCenterElement.js +42 -0
  306. package/ui/views/AdminView/HeaderSectionLeftElement.d.ts +6 -0
  307. package/ui/views/AdminView/HeaderSectionLeftElement.js +42 -0
  308. package/ui/views/AdminView/HeaderSectionRightElement.d.ts +6 -0
  309. package/ui/views/AdminView/HeaderSectionRightElement.js +42 -0
  310. package/ui/views/AdminView/components/Dialog.d.ts +2 -0
  311. package/ui/views/AdminView/components/Dialog.js +40 -0
  312. package/ui/views/AdminView/components/Hamburger.d.ts +3 -0
  313. package/ui/views/AdminView/components/Hamburger.js +25 -0
  314. package/ui/views/AdminView/components/Snackbar.d.ts +3 -0
  315. package/ui/views/AdminView/components/Snackbar.js +28 -0
  316. package/ui/views/AdminView.d.ts +12 -0
  317. package/ui/views/AdminView.js +90 -0
  318. package/ui/views/FormView/FormContainerElement.d.ts +12 -0
  319. package/ui/views/FormView/FormContainerElement.js +51 -0
  320. package/ui/views/FormView/FormContentElement.d.ts +3 -0
  321. package/ui/views/FormView/FormContentElement.js +17 -0
  322. package/ui/views/FormView/FormFooterElement.d.ts +6 -0
  323. package/ui/views/FormView/FormFooterElement.js +49 -0
  324. package/ui/views/FormView/FormHeaderElement.d.ts +14 -0
  325. package/ui/views/FormView/FormHeaderElement.js +81 -0
  326. package/ui/views/FormView.d.ts +40 -0
  327. package/ui/views/FormView.js +160 -0
  328. package/ui/views/NavigationView/ContentElement.d.ts +10 -0
  329. package/ui/views/NavigationView/ContentElement.js +86 -0
  330. package/ui/views/NavigationView/FooterElement.d.ts +13 -0
  331. package/ui/views/NavigationView/FooterElement.js +57 -0
  332. package/ui/views/NavigationView/HeaderElement.d.ts +16 -0
  333. package/ui/views/NavigationView/HeaderElement.js +66 -0
  334. package/ui/views/NavigationView/NavigationViewRenderer.d.ts +6 -0
  335. package/ui/views/NavigationView/NavigationViewRenderer.js +38 -0
  336. package/ui/views/NavigationView/Styled.d.ts +7 -0
  337. package/ui/views/NavigationView/Styled.js +47 -0
  338. package/ui/views/NavigationView/legacyMenu.d.ts +22 -0
  339. package/ui/views/NavigationView/legacyMenu.js +1 -0
  340. package/ui/views/NavigationView/useNavigation.d.ts +6 -0
  341. package/ui/views/NavigationView/useNavigation.js +22 -0
  342. package/ui/views/NavigationView.d.ts +26 -0
  343. package/ui/views/NavigationView.js +204 -0
  344. package/ui/views/OverlayView/ContentElement.d.ts +6 -0
  345. package/ui/views/OverlayView/ContentElement.js +42 -0
  346. package/ui/views/OverlayView/HeaderElement.d.ts +24 -0
  347. package/ui/views/OverlayView/HeaderElement.js +115 -0
  348. package/ui/views/OverlayView/HeaderTitleElement.d.ts +13 -0
  349. package/ui/views/OverlayView/HeaderTitleElement.js +54 -0
  350. package/ui/views/OverlayView/useOverlayView.d.ts +6 -0
  351. package/ui/views/OverlayView/useOverlayView.js +38 -0
  352. package/ui/views/OverlayView.d.ts +31 -0
  353. package/ui/views/OverlayView.js +176 -0
  354. package/ui/views/SplitView/SplitViewPanelElement.d.ts +11 -0
  355. package/ui/views/SplitView/SplitViewPanelElement.js +72 -0
  356. package/ui/views/SplitView.d.ts +21 -0
  357. package/ui/views/SplitView.js +142 -0
@@ -0,0 +1,95 @@
1
+ import React from "react";
2
+ import { useQuery } from "@apollo/react-hooks";
3
+ import get from "lodash/get";
4
+ import sortBy from "lodash/sortBy";
5
+ import { css } from "emotion";
6
+ import styled from "@emotion/styled";
7
+ import { Icon } from "@webiny/ui/Icon";
8
+ import { ReactComponent as TagIcon } from "@svgr/webpack!./icons/round-label-24px.svg";
9
+ import { LIST_TAGS } from "./graphql";
10
+ var style = {
11
+ leftDrawer: /*#__PURE__*/css({
12
+ float: "left",
13
+ display: "inline-block",
14
+ width: 250,
15
+ height: "100%",
16
+ backgroundColor: "var(--mdc-theme-surface)",
17
+ padding: 10
18
+ }, "label:leftDrawer;"),
19
+ noTagged: /*#__PURE__*/css({
20
+ paddingTop: 100,
21
+ textAlign: "center",
22
+ color: "var(--mdc-theme-on-surface)"
23
+ }, "label:noTagged;")
24
+ };
25
+ var TagList = /*#__PURE__*/styled("div", {
26
+ target: "e1tgxgqn0",
27
+ label: "TagList"
28
+ })({
29
+ display: "flex",
30
+ flexDirection: "column"
31
+ });
32
+ var Tag = /*#__PURE__*/styled("div", {
33
+ target: "e1tgxgqn1",
34
+ label: "Tag"
35
+ })({
36
+ display: "flex",
37
+ flexDirection: "row",
38
+ height: 40,
39
+ alignItems: "center",
40
+ cursor: "pointer",
41
+ paddingLeft: 15,
42
+ color: "var(--mdc-theme-on-surface)",
43
+ svg: {
44
+ color: "var(--mdc-theme-on-surface)",
45
+ marginRight: 10
46
+ },
47
+ "&:hover": {
48
+ backgroundColor: "var(--mdc-theme-background)"
49
+ },
50
+ "&.active": {
51
+ svg: {
52
+ color: "var(--mdc-theme-secondary)"
53
+ }
54
+ }
55
+ });
56
+
57
+ function LeftSidebar(_ref) {
58
+ var toggleTag = _ref.toggleTag,
59
+ tags = _ref.queryParams.tags;
60
+ var activeTags = Array.isArray(tags) ? tags : [];
61
+
62
+ var _useQuery = useQuery(LIST_TAGS),
63
+ data = _useQuery.data;
64
+
65
+ var list = get(data, "fileManager.listTags") || [];
66
+
67
+ if (list.length === 0) {
68
+ return /*#__PURE__*/React.createElement("div", {
69
+ className: style.leftDrawer,
70
+ "data-testid": "fm.left-drawer.empty-tag"
71
+ }, /*#__PURE__*/React.createElement("div", {
72
+ className: style.noTagged
73
+ }, "Once you tag an image, the tag will be displayed here."));
74
+ } // Sort "tags" list in "ASC" order.
75
+
76
+
77
+ var tagList = sortBy(list);
78
+ return /*#__PURE__*/React.createElement("div", {
79
+ className: style.leftDrawer
80
+ }, /*#__PURE__*/React.createElement(TagList, {
81
+ "data-testid": "fm.left-drawer.tag-list"
82
+ }, tagList.map(function (item, index) {
83
+ return /*#__PURE__*/React.createElement(Tag, {
84
+ className: activeTags.includes(item) && "active",
85
+ key: item + index,
86
+ onClick: function onClick() {
87
+ return toggleTag(item);
88
+ }
89
+ }, /*#__PURE__*/React.createElement(Icon, {
90
+ icon: /*#__PURE__*/React.createElement(TagIcon, null)
91
+ }), " ", item);
92
+ })));
93
+ }
94
+
95
+ export default LeftSidebar;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare const NoPermissionView: () => JSX.Element;
3
+ export default NoPermissionView;
@@ -0,0 +1,70 @@
1
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
2
+
3
+ var _templateObject, _templateObject2;
4
+
5
+ import React from "react";
6
+ import { css } from "emotion";
7
+ import { Icon } from "@webiny/ui/Icon";
8
+ import { i18n } from "@webiny/app/i18n";
9
+ import { ReactComponent as PermissionIcon } from "@svgr/webpack!./icons/privacy_tip-24px.svg";
10
+ import { Typography } from "@webiny/ui/Typography";
11
+ var t = i18n.ns("app-admin/file-manager/file-manager-view/no-permission");
12
+ var styles = /*#__PURE__*/css({
13
+ margin: "0 auto",
14
+ paddingTop: 0,
15
+ height: "100%",
16
+ zIndex: 2,
17
+ width: "100%",
18
+ position: "absolute",
19
+ backgroundColor: "transparent",
20
+ "& .outer-container": {
21
+ textAlign: "center",
22
+ width: 300,
23
+ height: 300,
24
+ backgroundColor: "var(--mdc-theme-surface)",
25
+ borderRadius: "50%",
26
+ position: "absolute",
27
+ left: "50%",
28
+ top: "50%",
29
+ transform: "translateX(-50%) translateY(-100%)",
30
+ "& .inner-container": {
31
+ display: "flex",
32
+ flexDirection: "column",
33
+ alignItems: "center",
34
+ paddingTop: 35,
35
+ width: 300,
36
+ color: "var(--mdc-theme-on-surface)",
37
+ "svg.mdc-button__icon": {
38
+ width: 100,
39
+ display: "inline-block",
40
+ color: "var(--mdc-theme-on-surface)"
41
+ },
42
+ "& .title": {
43
+ marginTop: 8
44
+ },
45
+ "& .body": {
46
+ color: "var(--mdc-theme-text-secondary-on-background)"
47
+ }
48
+ }
49
+ }
50
+ }, "label:styles;");
51
+
52
+ var NoPermissionView = function NoPermissionView() {
53
+ return /*#__PURE__*/React.createElement("div", {
54
+ className: styles
55
+ }, /*#__PURE__*/React.createElement("div", {
56
+ className: "outer-container"
57
+ }, /*#__PURE__*/React.createElement("div", {
58
+ className: "inner-container"
59
+ }, /*#__PURE__*/React.createElement(Icon, {
60
+ icon: /*#__PURE__*/React.createElement(PermissionIcon, null)
61
+ }), /*#__PURE__*/React.createElement(Typography, {
62
+ className: "title",
63
+ use: "subtitle1"
64
+ }, t(_templateObject || (_templateObject = _taggedTemplateLiteral(["Permission needed"])))), /*#__PURE__*/React.createElement(Typography, {
65
+ className: "body",
66
+ use: "body2"
67
+ }, t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["You're missing required permission to access files. Please contact the administrator."])))))));
68
+ };
69
+
70
+ export default NoPermissionView;
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export default function DropFilesHere(): JSX.Element;
@@ -0,0 +1,13 @@
1
+ import React from "react";
2
+ import { css } from "emotion";
3
+ var styles = /*#__PURE__*/css({
4
+ padding: "100px 0px",
5
+ textAlign: "center",
6
+ position: "absolute",
7
+ width: "100%"
8
+ }, "label:styles;");
9
+ export default function DropFilesHere() {
10
+ return /*#__PURE__*/React.createElement("div", {
11
+ className: styles
12
+ }, /*#__PURE__*/React.createElement("div", null, "No results found."));
13
+ }
@@ -0,0 +1 @@
1
+ export default function getFileTypePlugin(file: any): any;
@@ -0,0 +1,27 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
+ import invariant from "invariant";
3
+ import minimatch from "minimatch";
4
+ import { plugins } from "@webiny/plugins";
5
+ import { FileManagerFileTypePlugin } from "../../plugins/FileManagerFileTypePlugin";
6
+ export default function getFileTypePlugin(file) {
7
+ if (!file) {
8
+ return null;
9
+ }
10
+
11
+ var fileTypePlugins = [].concat(_toConsumableArray(plugins.byType("admin-file-manager-file-type")), _toConsumableArray(plugins.byType(FileManagerFileTypePlugin.type)));
12
+ var plugin = null;
13
+
14
+ for (var i = 0; i < fileTypePlugins.length; i++) {
15
+ // We don't want to include the global wildcard in this check.
16
+ var types = fileTypePlugins[i].types;
17
+
18
+ if (types.find(function (t) {
19
+ return minimatch(file.type, t);
20
+ })) {
21
+ plugin = fileTypePlugins[i];
22
+ }
23
+ }
24
+
25
+ invariant(plugin, "Missing plugin to handle \"".concat(file.type, "\"!"));
26
+ return plugin;
27
+ }
@@ -0,0 +1,2 @@
1
+ declare const _default: () => (file: File, options: import("@webiny/app/types").UploadOptions) => Promise<any>;
2
+ export default _default;
@@ -0,0 +1,10 @@
1
+ import { plugins } from "@webiny/plugins";
2
+ export default (function () {
3
+ var fileStoragePlugin = plugins.byName("app-file-manager-storage");
4
+
5
+ if (!fileStoragePlugin) {
6
+ throw Error('Missing plugin: "app-file-manager-storage".');
7
+ }
8
+
9
+ return fileStoragePlugin.upload;
10
+ });
@@ -0,0 +1,6 @@
1
+ export declare const LIST_FILES: import("graphql").DocumentNode;
2
+ export declare const LIST_TAGS: import("graphql").DocumentNode;
3
+ export declare const CREATE_FILE: import("graphql").DocumentNode;
4
+ export declare const UPDATE_FILE: import("graphql").DocumentNode;
5
+ export declare const DELETE_FILE: import("graphql").DocumentNode;
6
+ export declare const GET_FILE_SETTINGS: import("graphql").DocumentNode;
@@ -0,0 +1,17 @@
1
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
2
+
3
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
4
+
5
+ import gql from "graphql-tag";
6
+ var FILE_FIELDS =
7
+ /* GraphQL */
8
+ "\n {\n __typename\n id\n name\n key\n src\n size\n type\n tags\n createdOn\n createdBy {\n id\n }\n }\n";
9
+ var ERROR_FIELDS =
10
+ /* GraphQL */
11
+ "\n {\n code\n message\n data\n }\n";
12
+ export var LIST_FILES = gql(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n query ListFiles($types: [String], $tags: [String], $limit: Int, $search: String, $after: String) {\n fileManager {\n listFiles(types: $types, limit: $limit, search: $search, tags: $tags, after: $after) {\n data ", "\n meta {\n cursor\n totalCount\n }\n }\n }\n }\n"])), FILE_FIELDS);
13
+ export var LIST_TAGS = gql(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n query ListTags {\n fileManager {\n listTags\n }\n }\n"])));
14
+ export var CREATE_FILE = gql(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n mutation CreateFile($data: FileInput!) {\n fileManager {\n createFile(data: $data) {\n error ", "\n data ", "\n }\n }\n }\n"])), ERROR_FIELDS, FILE_FIELDS);
15
+ export var UPDATE_FILE = gql(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n mutation UpdateFile($id: ID!, $data: FileInput!) {\n fileManager {\n updateFile(id: $id, data: $data) {\n data {\n id\n src\n name\n tags\n }\n error ", "\n }\n }\n }\n"])), ERROR_FIELDS);
16
+ export var DELETE_FILE = gql(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n mutation deleteFile($id: ID!) {\n fileManager {\n deleteFile(id: $id) {\n data\n error ", "\n }\n }\n }\n"])), ERROR_FIELDS);
17
+ export var GET_FILE_SETTINGS = gql(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n query getSettings {\n fileManager {\n getSettings {\n data {\n uploadMinFileSize\n uploadMaxFileSize\n }\n error ", "\n }\n }\n }\n"])), ERROR_FIELDS);
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" viewBox="0 0 24 24" fill="black" width="24px" height="24px"><g><rect fill="none" height="24" width="24"/></g><g><path d="M15,20H5V7c0-0.55-0.45-1-1-1h0C3.45,6,3,6.45,3,7v13c0,1.1,0.9,2,2,2h10c0.55,0,1-0.45,1-1v0C16,20.45,15.55,20,15,20z M20,16V4c0-1.1-0.9-2-2-2H9C7.9,2,7,2.9,7,4v12c0,1.1,0.9,2,2,2h9C19.1,18,20,17.1,20,16z M18,16H9V4h9V16z"/></g></svg>
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="24px"
4
+ height="24px" viewBox="0 0 24 24" enable-background="new 0 0 24 24" xml:space="preserve">
5
+ <g id="Rounded">
6
+ <g id="ui_x5F_spec_x5F_header_copy_5">
7
+ </g>
8
+ <path fill="currentColor" d="M6,19c0,1.1,0.9,2,2,2h8c1.1,0,2-0.9,2-2V9c0-1.1-0.9-2-2-2H8C6.9,7,6,7.9,6,9V19z M18,4h-2.5l-0.71-0.71
9
+ C14.61,3.11,14.35,3,14.09,3H9.91C9.65,3,9.39,3.11,9.21,3.29L8.5,4H6C5.45,4,5,4.45,5,5v0c0,0.55,0.45,1,1,1h12c0.55,0,1-0.45,1-1
10
+ v0C19,4.45,18.55,4,18,4z"/>
11
+ </g>
12
+ </svg>
@@ -0,0 +1,10 @@
1
+ <svg
2
+ xmlns="http://www.w3.org/2000/svg"
3
+ viewBox="0 0 24 24"
4
+ fill="currentColor"
5
+ >
6
+ <g>
7
+ <rect fill="none" height="24" width="24" y="0"/>
8
+ <path d="M4.19,4.47C3.47,4.79,3,5.51,3,6.3V11c0,5.55,3.84,10.74,9,12c5.16-1.26,9-6.45,9-12V6.3c0-0.79-0.47-1.51-1.19-1.83 l-7-3.11c-0.52-0.23-1.11-0.23-1.62,0L4.19,4.47z M12,7L12,7c0.55,0,1,0.45,1,1v0c0,0.55-0.45,1-1,1h0c-0.55,0-1-0.45-1-1v0 C11,7.45,11.45,7,12,7z M12,11L12,11c0.55,0,1,0.45,1,1v4c0,0.55-0.45,1-1,1h0c-0.55,0-1-0.45-1-1v-4C11,11.45,11.45,11,12,11z"/>
9
+ </g>
10
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" viewBox="0 0 24 24">
2
+ <path fill="none" d="M0 0h24v24H0V0z"/>
3
+ <path fill="currentColor" d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-8.29 13.29c-.39.39-1.02.39-1.41 0L5.71 12.7c-.39-.39-.39-1.02 0-1.41.39-.39 1.02-.39 1.41 0L10 14.17l6.88-6.88c.39-.39 1.02-.39 1.41 0 .39.39.39 1.02 0 1.41l-7.58 7.59z"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" viewBox="0 0 24 24">
2
+ <path fill="none" d="M0 0h24v24H0V0z"/>
3
+ <path fill="currentColor" d="M18 19H6c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h12c.55 0 1 .45 1 1v12c0 .55-.45 1-1 1zm1-16H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" viewBox="0 0 24 24">
2
+ <path fill="none" d="M0 0h24v24H0V0z"/>
3
+ <path fill="currentColor" d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM17 13l-4.65 4.65c-.2.2-.51.2-.71 0L7 13h3V9h4v4h3z"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" viewBox="0 0 24 24">
2
+ <path fill="none" d="M0 0h24v24H0V0z"/>
3
+ <path fill="currentColor" d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l4.65-4.65c.2-.2.51-.2.71 0L17 13h-3z"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" viewBox="0 0 24 24">
2
+ <path fill="none" d="M0 0h24v24H0V0z"/>
3
+ <path fill="currentColor" d="M14.59 2.59c-.38-.38-.89-.59-1.42-.59H6c-1.1 0-2 .9-2 2v16c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8.83c0-.53-.21-1.04-.59-1.41l-4.82-4.83zM15 18H9c-.55 0-1-.45-1-1s.45-1 1-1h6c.55 0 1 .45 1 1s-.45 1-1 1zm0-4H9c-.55 0-1-.45-1-1s.45-1 1-1h6c.55 0 1 .45 1 1s-.45 1-1 1zm-2-6V3.5L18.5 9H14c-.55 0-1-.45-1-1z"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
2
+ <path fill="currentColor" d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"/>
3
+ <path d="M0 0h24v24H0z" fill="none"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" viewBox="0 0 24 24">
2
+ <path fill="none" d="M0 0h24v24H0V0z"/>
3
+ <path fill="currentColor" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 15c-.55 0-1-.45-1-1v-4c0-.55.45-1 1-1s1 .45 1 1v4c0 .55-.45 1-1 1zm1-8h-2V7h2v2z"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" viewBox="0 0 24 24">
2
+ <path fill="none" d="M0 0h24v24H0V0z"/>
3
+ <path fill="currentColor" d="M17.63 5.84C17.27 5.33 16.67 5 16 5L5 5.01C3.9 5.01 3 5.9 3 7v10c0 1.1.9 1.99 2 1.99L16 19c.67 0 1.27-.33 1.63-.84l3.96-5.58c.25-.35.25-.81 0-1.16l-3.96-5.58z"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" viewBox="0 0 24 24">
2
+ <path fill="none" d="M0 0h24v24H0V0z"/>
3
+ <path fill="currentColor" d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/>
4
+ </svg>
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="24px"
4
+ height="24px" viewBox="0 0 24 24" enable-background="new 0 0 24 24" xml:space="preserve">
5
+ <g id="Header_x2F_BG" display="none">
6
+ <rect x="-358" y="-314" display="inline" fill="#F1F1F2" width="520" height="520"/>
7
+ </g>
8
+ <g id="Bounding_Boxes">
9
+ <g id="ui_x5F_spec_x5F_header_copy_3" display="none">
10
+ </g>
11
+ <path fill="none" d="M0,0h24v24H0V0z"/>
12
+ </g>
13
+ <g id="Rounded">
14
+ <g id="ui_x5F_spec_x5F_header_copy_5" display="none">
15
+ </g>
16
+ <path fill="currentColor" d="M15.5,14h-0.79l-0.28-0.27c1.2-1.4,1.82-3.31,1.48-5.34c-0.47-2.78-2.79-5-5.59-5.34c-4.23-0.52-7.79,3.04-7.27,7.27
17
+ c0.34,2.8,2.56,5.12,5.34,5.59c2.03,0.34,3.94-0.28,5.34-1.48L14,14.71v0.79l4.25,4.25c0.41,0.41,1.08,0.41,1.49,0l0,0
18
+ c0.41-0.41,0.41-1.08,0-1.49L15.5,14z M9.5,14C7.01,14,5,11.99,5,9.5S7.01,5,9.5,5S14,7.01,14,9.5S11.99,14,9.5,14z"/>
19
+ </g>
20
+ </svg>
@@ -0,0 +1,2 @@
1
+ declare const _default: (errors: any) => string;
2
+ export default _default;
@@ -0,0 +1,39 @@
1
+ import bytes from "bytes";
2
+ export default (function (errors) {
3
+ if (errors.length > 1) {
4
+ var error = errors.find(function (error) {
5
+ return error.type === "multipleMaxCountExceeded";
6
+ });
7
+
8
+ if (error) {
9
+ return "Cannot upload more than ".concat(error.multipleMaxCount, " files at once.");
10
+ }
11
+
12
+ error = errors.find(function (error) {
13
+ return error.type === "multipleMaxSizeExceeded";
14
+ });
15
+
16
+ if (error) {
17
+ return "Cannot upload more than ".concat(bytes.format(error.multipleMaxSize), " at once.");
18
+ }
19
+
20
+ return "Multiple invalid files selected.";
21
+ }
22
+
23
+ switch (errors[0].type) {
24
+ case "unsupportedFileType":
25
+ return "Unsupported file type.";
26
+
27
+ case "maxSizeExceeded":
28
+ return "Max size exceeded.";
29
+
30
+ case "multipleMaxCountExceeded":
31
+ return "Multiple max files exceeded.";
32
+
33
+ case "multipleMaxSizeExceeded":
34
+ return "Multiple max size exceeded.";
35
+
36
+ case "multipleNotAllowed":
37
+ return "Only one file allowed.";
38
+ }
39
+ });
@@ -0,0 +1,18 @@
1
+ import * as React from "react";
2
+ declare type FileManagerProps = {
3
+ onChange?: Function;
4
+ onChangePick?: string[];
5
+ images?: boolean;
6
+ multiple?: boolean;
7
+ accept?: Array<string>;
8
+ children: ({ showFileManager: Function }: {
9
+ showFileManager: any;
10
+ }) => React.ReactNode;
11
+ maxSize?: number | string;
12
+ multipleMaxCount?: number;
13
+ multipleMaxSize?: number | string;
14
+ onClose?: Function;
15
+ onUploadCompletion?: Function;
16
+ };
17
+ export declare function FileManager({ children, ...rest }: FileManagerProps): JSX.Element;
18
+ export {};
@@ -0,0 +1,133 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
+ import _createClass from "@babel/runtime/helpers/createClass";
5
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
6
+ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
7
+ import _inherits from "@babel/runtime/helpers/inherits";
8
+ import _createSuper from "@babel/runtime/helpers/createSuper";
9
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
10
+ var _excluded = ["children"];
11
+ import * as React from "react";
12
+ import ReactDOM from "react-dom";
13
+ import FileManagerView from "./FileManager/FileManagerView";
14
+ import pick from "lodash/pick";
15
+ import { FileManagerProvider } from "./FileManager/FileManagerContext";
16
+ var useState = React.useState,
17
+ useRef = React.useRef,
18
+ useCallback = React.useCallback,
19
+ useEffect = React.useEffect;
20
+
21
+ var FileManagerPortal = /*#__PURE__*/function (_React$Component) {
22
+ _inherits(FileManagerPortal, _React$Component);
23
+
24
+ var _super = _createSuper(FileManagerPortal);
25
+
26
+ function FileManagerPortal(props) {
27
+ var _this;
28
+
29
+ _classCallCheck(this, FileManagerPortal);
30
+
31
+ _this = _super.call(this, props);
32
+
33
+ _defineProperty(_assertThisInitialized(_this), "container", void 0);
34
+
35
+ if (!window) {
36
+ return _possibleConstructorReturn(_this);
37
+ }
38
+
39
+ _this.container = window.document.getElementById("file-manager-container");
40
+
41
+ if (!_this.container) {
42
+ _this.container = document.createElement("div");
43
+
44
+ _this.container.setAttribute("id", "file-manager-container");
45
+
46
+ var container = _this.container;
47
+ document.body && document.body.appendChild(container);
48
+ }
49
+
50
+ return _this;
51
+ }
52
+
53
+ _createClass(FileManagerPortal, [{
54
+ key: "render",
55
+ value: function render() {
56
+ var _this$props = this.props,
57
+ onChange = _this$props.onChange,
58
+ onClose = _this$props.onClose,
59
+ accept = _this$props.accept,
60
+ onChangePick = _this$props.onChangePick,
61
+ multiple = _this$props.multiple,
62
+ images = _this$props.images,
63
+ maxSize = _this$props.maxSize,
64
+ multipleMaxCount = _this$props.multipleMaxCount,
65
+ multipleMaxSize = _this$props.multipleMaxSize,
66
+ onUploadCompletion = _this$props.onUploadCompletion;
67
+ var container = this.container;
68
+
69
+ var handleFileOnChange = function handleFileOnChange(files) {
70
+ var fields = Array.isArray(onChangePick) ? onChangePick : ["id", "name", "key", "src", "size", "type"];
71
+
72
+ if (Array.isArray(files)) {
73
+ onChange(files.map(function (file) {
74
+ return pick(file, fields);
75
+ }));
76
+ } else {
77
+ onChange(pick(files, fields));
78
+ }
79
+ };
80
+
81
+ var props = {
82
+ onChange: typeof onChange === "function" ? handleFileOnChange : undefined,
83
+ onClose: onClose,
84
+ accept: accept,
85
+ multiple: multiple,
86
+ maxSize: maxSize,
87
+ multipleMaxCount: multipleMaxCount,
88
+ multipleMaxSize: multipleMaxSize,
89
+ onUploadCompletion: onUploadCompletion
90
+ };
91
+
92
+ if (images) {
93
+ props.accept = ["image/jpg", "image/jpeg", "image/tiff", "image/gif", "image/png", "image/webp", "image/bmp", "image/svg+xml"];
94
+ } // Let's pass "permanent" / "persistent" / "temporary" flags as "mode" prop instead.
95
+
96
+
97
+ return /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement(FileManagerProvider, props, /*#__PURE__*/React.createElement(FileManagerView, props)), container);
98
+ }
99
+ }]);
100
+
101
+ return FileManagerPortal;
102
+ }(React.Component);
103
+
104
+ export function FileManager(_ref) {
105
+ var children = _ref.children,
106
+ rest = _objectWithoutProperties(_ref, _excluded);
107
+
108
+ var _useState = useState(false),
109
+ _useState2 = _slicedToArray(_useState, 2),
110
+ show = _useState2[0],
111
+ setShow = _useState2[1];
112
+
113
+ var onChangeRef = useRef(rest.onChange);
114
+ useEffect(function () {
115
+ onChangeRef.current = rest.onChange;
116
+ }, [rest.onChange]);
117
+ var showFileManager = useCallback(function (onChange) {
118
+ if (typeof onChange === "function") {
119
+ onChangeRef.current = onChange;
120
+ }
121
+
122
+ setShow(true);
123
+ }, []);
124
+ return /*#__PURE__*/React.createElement(React.Fragment, null, show && /*#__PURE__*/React.createElement(FileManagerPortal, Object.assign({
125
+ onClose: function onClose() {
126
+ return setShow(false);
127
+ }
128
+ }, rest, {
129
+ onChange: onChangeRef.current
130
+ })), children({
131
+ showFileManager: showFileManager
132
+ }));
133
+ }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare const FloatingActionButton: (props: any) => JSX.Element;
3
+ export { FloatingActionButton };
@@ -0,0 +1,17 @@
1
+ import * as React from "react";
2
+ import { ButtonFloating } from "@webiny/ui/Button";
3
+ import { ReactComponent as AddIcon } from "@svgr/webpack!../assets/icons/round-add-24px.svg"; // Set "styles" inline, since no customizations are possible / needed here.
4
+
5
+ var FloatingActionButton = function FloatingActionButton(props) {
6
+ return /*#__PURE__*/React.createElement("div", {
7
+ style: {
8
+ position: "absolute",
9
+ bottom: 20,
10
+ right: 20
11
+ }
12
+ }, /*#__PURE__*/React.createElement(ButtonFloating, Object.assign({}, props, {
13
+ icon: /*#__PURE__*/React.createElement(AddIcon, null)
14
+ })));
15
+ };
16
+
17
+ export { FloatingActionButton };
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ declare type Props = any;
3
+ export default function MultiImageUpload({ imagePreviewProps, ...multiImageUploadProps }: Props): JSX.Element;
4
+ export {};
@@ -0,0 +1,20 @@
1
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
+ var _excluded = ["imagePreviewProps"];
3
+ import * as React from "react";
4
+ import { Image } from "@webiny/app/components/Image";
5
+ import { MultiImageUpload as UiMultiImageUpload } from "@webiny/ui/ImageUpload"; // TODO: @adrian define props type
6
+
7
+ export default function MultiImageUpload(_ref) {
8
+ var imagePreviewProps = _ref.imagePreviewProps,
9
+ multiImageUploadProps = _objectWithoutProperties(_ref, _excluded);
10
+
11
+ return /*#__PURE__*/React.createElement(UiMultiImageUpload, Object.assign({
12
+ renderImagePreview: function renderImagePreview(renderImageProps) {
13
+ return /*#__PURE__*/React.createElement(Image, Object.assign({
14
+ transform: {
15
+ width: 300
16
+ }
17
+ }, imagePreviewProps, renderImageProps));
18
+ }
19
+ }, multiImageUploadProps));
20
+ }
@@ -0,0 +1,25 @@
1
+ import * as React from "react";
2
+ declare type OverlayLayoutProps = {
3
+ barMiddle?: React.ReactNode;
4
+ barLeft?: React.ReactNode;
5
+ barRight?: React.ReactNode;
6
+ children: React.ReactNode;
7
+ onExited?: Function;
8
+ style?: React.CSSProperties;
9
+ };
10
+ declare type State = {
11
+ isVisible: boolean;
12
+ };
13
+ export declare class OverlayLayout extends React.Component<OverlayLayoutProps, State> {
14
+ constructor(props: any);
15
+ static defaultProps: {
16
+ onExited: any;
17
+ };
18
+ state: {
19
+ isVisible: boolean;
20
+ };
21
+ hideComponent(): void;
22
+ componentWillUnmount(): void;
23
+ render(): JSX.Element;
24
+ }
25
+ export {};