fix to show or hide show deleted objects option based on versioning status (#2780)

This commit is contained in:
Prakash Senthil Vel
2023-05-10 23:06:49 +05:30
committed by GitHub
parent c117601e53
commit c5d4cdf1bc
2 changed files with 18 additions and 6 deletions

View File

@@ -293,6 +293,16 @@ const BrowserHandler = () => {
[bucketName, rewindEnabled, showDeleted, dispatch, onMessageCallBack]
);
useEffect(() => {
// when a bucket param changes, (i.e /browser/:bucketName), re-init e.g with KBar
if (bucketName) {
dispatch(resetMessages());
dispatch(setLoadingRecords(true));
dispatch(setLoadingObjects(true));
initWSRequest("", new Date());
}
}, [bucketName, dispatch, initWSRequest]);
useEffect(() => {
return () => {
const request: WebsocketRequest = {
@@ -333,7 +343,7 @@ const BrowserHandler = () => {
)
);
}
}, [internalPaths, rewindDate, rewindEnabled, dispatch]);
}, [bucketName, internalPaths, rewindDate, rewindEnabled, dispatch]);
// Direct file access effect / prefix
useEffect(() => {

View File

@@ -140,6 +140,7 @@ import {
import FilterObjectsSB from "../../../../ObjectBrowser/FilterObjectsSB";
import AddAccessRule from "../../../BucketDetails/AddAccessRule";
import { isVersionedMode } from "../../../../../../utils/validationFunctions";
const DeleteMultipleObjects = withSuspense(
React.lazy(() => import("./DeleteMultipleObjects"))
@@ -259,7 +260,7 @@ const ListObjects = () => {
(state: AppState) => state.objectBrowser.simplePath
);
const isVersioned = useSelector(
const versioningConfig = useSelector(
(state: AppState) => state.objectBrowser.versionInfo
);
const lockingEnabled = useSelector(
@@ -297,6 +298,7 @@ const ListObjects = () => {
const [canPreviewFile, setCanPreviewFile] = useState<boolean>(false);
const [quota, setQuota] = useState<BucketQuota | null>(null);
const isVersioningApplied = isVersionedMode(versioningConfig.status);
const bucketName = params.bucketName || "";
const pathSegment = location.pathname.split(`/browser/${bucketName}/`);
@@ -890,7 +892,7 @@ const ListObjects = () => {
selectedBucket={bucketName}
selectedObjects={selectedObjects}
closeDeleteModalAndRefresh={closeDeleteMultipleModalAndRefresh}
versioning={isVersioned}
versioning={versioningConfig}
/>
)}
{rewindSelect && (
@@ -1019,7 +1021,7 @@ const ListObjects = () => {
setRewindSelect(true);
}}
disabled={
!isVersioned ||
!isVersioningApplied ||
!hasPermission(bucketName, [
IAM_SCOPES.S3_GET_OBJECT,
IAM_SCOPES.S3_GET_ACTIONS,
@@ -1130,7 +1132,7 @@ const ListObjects = () => {
bucketName={bucketName}
internalPaths={pageTitle}
additionalOptions={
!isVersioned || rewindEnabled ? null : (
!isVersioningApplied || rewindEnabled ? null : (
<div>
<CheckboxWrapper
name={"deleted_objects"}
@@ -1181,7 +1183,7 @@ const ListObjects = () => {
internalPaths={selectedInternalPaths}
bucketName={bucketName}
onClosePanel={onClosePanel}
versioningInfo={isVersioned}
versioningInfo={versioningConfig}
locking={lockingEnabled}
/>
)}