From d85b69375179c23e08760357c52c1e82642b9fca Mon Sep 17 00:00:00 2001 From: Lenin Alevski Date: Mon, 20 Sep 2021 08:42:50 -0700 Subject: [PATCH] Add share action to listed objects (#1052) Signed-off-by: Lenin Alevski --- .../Objects/ListObjects/ListObjects.tsx | 34 ++++++++++++++++--- .../BasicDashboard/ServerInfoCard.tsx | 2 -- .../Prometheus/Widgets/SimpleWidget.tsx | 4 +-- 3 files changed, 32 insertions(+), 8 deletions(-) diff --git a/portal-ui/src/screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx b/portal-ui/src/screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx index 55644a0f7..cbcb96b28 100644 --- a/portal-ui/src/screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx +++ b/portal-ui/src/screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx @@ -96,6 +96,7 @@ import { FileXlsIcon, FileZipIcon, } from "../../../../../../icons"; +import ShareFile from "../ObjectDetails/ShareFile"; const commonIcon = { backgroundRepeat: "no-repeat", @@ -263,6 +264,7 @@ const ListObjects = ({ const [selectedPreview, setSelectedPreview] = useState( null ); + const [shareFileModalOpen, setShareFileModalOpen] = useState(false); const internalPaths = get(match.params, "subpaths", ""); const bucketName = match.params["bucketName"]; @@ -628,10 +630,19 @@ const ListObjects = ({ const openPreview = (fileObject: BucketObject) => { setSelectedPreview(fileObject); - setPreviewOpen(true); }; + const openShare = (fileObject: BucketObject) => { + setSelectedPreview(fileObject); + setShareFileModalOpen(true); + }; + + const closeShareModal = () => { + setShareFileModalOpen(false); + setSelectedPreview(null); + }; + const tableActions = [ { type: "view", onClick: openPath, sendOnlyId: true }, { @@ -640,6 +651,11 @@ const ListObjects = ({ disableButtonFunction: (item: string) => extensionPreview(item) === "none", }, + { + type: "share", + onClick: openShare, + disableButtonFunction: (item: string) => item.endsWith("/"), + }, { type: "download", onClick: downloadObject, @@ -788,13 +804,11 @@ const ListObjects = ({ const rewindCloseModal = (refresh: boolean) => { setRewindSelect(false); - - if (refresh) { - } }; const closePreviewWindow = () => { setPreviewOpen(false); + setSelectedPreview(null); }; const selectListObjects = (e: React.ChangeEvent) => { @@ -873,6 +887,18 @@ const ListObjects = ({ return ( + {shareFileModalOpen && selectedPreview && ( + + )} {deleteOpen && ( createStyles({ ...commonDashboardInfocard, diff --git a/portal-ui/src/screens/Console/Dashboard/Prometheus/Widgets/SimpleWidget.tsx b/portal-ui/src/screens/Console/Dashboard/Prometheus/Widgets/SimpleWidget.tsx index c36ad27fd..2bf60af2b 100644 --- a/portal-ui/src/screens/Console/Dashboard/Prometheus/Widgets/SimpleWidget.tsx +++ b/portal-ui/src/screens/Console/Dashboard/Prometheus/Widgets/SimpleWidget.tsx @@ -43,8 +43,8 @@ const styles = (theme: Theme) => marginRight: 10, }, widgetValue: { - marginRight: 25, - } + marginRight: 25, + }, }); const SimpleWidget = ({ classes, iconWidget, label, value }: ISimpleWidget) => {