Changed useDispatch implementation to comply with TS specification (#2110)
Signed-off-by: Benjamin Perez <benjamin@bexsoft.net>
This commit is contained in:
@@ -22,7 +22,7 @@ import useApi from "./screens/Console/Common/Hooks/useApi";
|
||||
import { ErrorResponseHandler } from "./common/types";
|
||||
import { ReplicationSite } from "./screens/Console/Configurations/SiteReplication/SiteReplication";
|
||||
import { baseUrl } from "./history";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import {
|
||||
globalSetDistributedSetup,
|
||||
operatorMode,
|
||||
@@ -31,7 +31,7 @@ import {
|
||||
userLogged,
|
||||
} from "./systemSlice";
|
||||
import { SRInfoStateType } from "./types";
|
||||
import { AppState } from "./store";
|
||||
import { AppState, useAppDispatch } from "./store";
|
||||
import { saveSessionResponse } from "./screens/Console/consoleSlice";
|
||||
|
||||
interface ProtectedRouteProps {
|
||||
@@ -39,7 +39,7 @@ interface ProtectedRouteProps {
|
||||
}
|
||||
|
||||
const ProtectedRoute = ({ Component }: ProtectedRouteProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const isOperatorMode = useSelector(selOpMode);
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -58,6 +58,7 @@ import ServiceAccountPolicy from "./ServiceAccountPolicy";
|
||||
import { setErrorSnackMessage, setSnackBarMessage } from "../../../systemSlice";
|
||||
import makeStyles from "@mui/styles/makeStyles";
|
||||
import { selFeatures } from "../consoleSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const DeleteServiceAccount = withSuspense(
|
||||
React.lazy(() => import("./DeleteServiceAccount"))
|
||||
@@ -78,7 +79,7 @@ const useStyles = makeStyles((theme: Theme) =>
|
||||
);
|
||||
|
||||
const Account = () => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const classes = useStyles();
|
||||
|
||||
@@ -48,8 +48,9 @@ import CredentialsPrompt from "../Common/CredentialsPrompt/CredentialsPrompt";
|
||||
import SectionTitle from "../Common/SectionTitle";
|
||||
import { getRandomString } from "../../../screens/Console/Tenants/utils";
|
||||
import PanelTitle from "../Common/PanelTitle/PanelTitle";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface IAddServiceAccountProps {
|
||||
classes: any;
|
||||
@@ -75,7 +76,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const AddServiceAccount = ({ classes }: IAddServiceAccountProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const [addSending, setAddSending] = useState<boolean>(false);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -36,6 +36,7 @@ import { ChangePasswordIcon } from "../../../icons";
|
||||
import RemoveRedEyeIcon from "@mui/icons-material/RemoveRedEye";
|
||||
import VisibilityOffIcon from "@mui/icons-material/VisibilityOff";
|
||||
import { setModalErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -56,7 +57,7 @@ const ChangePassword = ({
|
||||
open,
|
||||
closeModal,
|
||||
}: IChangePasswordProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [currentPassword, setCurrentPassword] = useState<string>("");
|
||||
const [newPassword, setNewPassword] = useState<string>("");
|
||||
const [reNewPassword, setReNewPassword] = useState<string>("");
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -35,6 +35,7 @@ import { ErrorResponseHandler } from "../../../common/types";
|
||||
import api from "../../../common/api";
|
||||
import { ChangePasswordIcon } from "../../../icons";
|
||||
import { setModalErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -60,7 +61,7 @@ const ChangeUserPassword = ({
|
||||
userName,
|
||||
closeModal,
|
||||
}: IChangeUserPasswordProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [newPassword, setNewPassword] = useState<string>("");
|
||||
const [reNewPassword, setReNewPassword] = useState<string>("");
|
||||
const [loading, setLoading] = useState<boolean>(false);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -27,6 +27,7 @@ import ConfirmDialog from "../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmDeleteIcon } from "../../../icons";
|
||||
import { encodeURLString } from "../../../common/utils";
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -50,7 +51,7 @@ const DeleteServiceAccount = ({
|
||||
deleteOpen,
|
||||
selectedServiceAccount,
|
||||
}: IDeleteServiceAccountProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const onDelSuccess = () => closeDeleteModalAndRefresh(true);
|
||||
const onDelError = (err: ErrorResponseHandler) =>
|
||||
dispatch(setErrorSnackMessage(err));
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Button } from "@mui/material";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -34,6 +34,7 @@ import { ChangeAccessPolicyIcon } from "../../../icons";
|
||||
import CodeMirrorWrapper from "../Common/FormComponents/CodeMirrorWrapper/CodeMirrorWrapper";
|
||||
import { encodeURLString } from "../../../common/utils";
|
||||
import { setModalErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -68,7 +69,7 @@ const ServiceAccountPolicy = ({
|
||||
selectedAccessKey,
|
||||
closeModalAndRefresh,
|
||||
}: IServiceAccountPolicyProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
const [policyDefinition, setPolicyDefinition] = useState<string>("");
|
||||
useEffect(() => {
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { useNavigate, useParams } from "react-router-dom";
|
||||
import { Paper } from "@mui/material";
|
||||
import Tabs from "@mui/material/Tabs";
|
||||
@@ -40,6 +40,7 @@ import {
|
||||
import { encodeURLString } from "../../../../common/utils";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { selBucketDetailsLoading } from "./bucketDetailsSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
function a11yProps(index: any) {
|
||||
return {
|
||||
@@ -49,7 +50,7 @@ function a11yProps(index: any) {
|
||||
}
|
||||
|
||||
const AccessDetails = () => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
const params = useParams();
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { useParams } from "react-router-dom";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -45,6 +45,7 @@ import RBIconButton from "./SummaryItems/RBIconButton";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import makeStyles from "@mui/styles/makeStyles";
|
||||
import { selBucketDetailsLoading } from "./bucketDetailsSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const AddAccessRuleModal = withSuspense(
|
||||
React.lazy(() => import("./AddAccessRule"))
|
||||
@@ -75,7 +76,7 @@ const useStyles = makeStyles((theme: Theme) =>
|
||||
);
|
||||
|
||||
const AccessRule = () => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const classes = useStyles();
|
||||
const params = useParams();
|
||||
|
||||
|
||||
@@ -25,12 +25,13 @@ import {
|
||||
formFieldStyles,
|
||||
modalStyleUtils,
|
||||
} from "../../Common/FormComponents/common/styleLibrary";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import api from "../../../../common/api";
|
||||
import { ErrorResponseHandler } from "../../../../common/types";
|
||||
import SelectWrapper from "../../Common/FormComponents/SelectWrapper/SelectWrapper";
|
||||
import { AddAccessRuleIcon } from "../../../../icons";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IAddAccessRule {
|
||||
classes: any;
|
||||
@@ -51,7 +52,7 @@ const AddAccessRule = ({
|
||||
classes,
|
||||
bucket,
|
||||
}: IAddAccessRule) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const [prefix, setPrefix] = useState("");
|
||||
const [selectedAccess, setSelectedAccess] = useState<any>("readonly");
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Button, Grid } from "@mui/material";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -31,6 +31,7 @@ import ModalWrapper from "../../Common/ModalWrapper/ModalWrapper";
|
||||
import api from "../../../../common/api";
|
||||
import { AddNewTagIcon } from "../../../../icons";
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IBucketTagModal {
|
||||
modalOpen: boolean;
|
||||
@@ -56,7 +57,7 @@ const AddBucketTagModal = ({
|
||||
|
||||
classes,
|
||||
}: IBucketTagModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [newKey, setNewKey] = useState<string>("");
|
||||
const [newLabel, setNewLabel] = useState<string>("");
|
||||
const [isSending, setIsSending] = useState<boolean>(false);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { ChangeEvent, useCallback, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import Grid from "@mui/material/Grid";
|
||||
import { Button } from "@mui/material";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
@@ -40,6 +40,7 @@ import InputBoxWrapper from "../../Common/FormComponents/InputBoxWrapper/InputBo
|
||||
import AutocompleteWrapper from "../../Common/FormComponents/AutocompleteWrapper/AutocompleteWrapper";
|
||||
import { EventSubscriptionIcon } from "../../../../icons";
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -65,7 +66,7 @@ const AddEvent = ({
|
||||
selectedBucket,
|
||||
closeModalAndRefresh,
|
||||
}: IAddEventProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [addLoading, setAddLoading] = useState<boolean>(false);
|
||||
const [prefix, setPrefix] = useState<string>("");
|
||||
const [suffix, setSuffix] = useState<string>("");
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import get from "lodash/get";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -53,6 +53,7 @@ import InputUnitMenu from "../../Common/FormComponents/InputUnitMenu/InputUnitMe
|
||||
import { BucketVersioning } from "../types";
|
||||
import FormSwitchWrapper from "../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper";
|
||||
import { selDistSet, setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IReplicationModal {
|
||||
open: boolean;
|
||||
@@ -98,7 +99,7 @@ const AddLifecycleModal = ({
|
||||
classes,
|
||||
bucketName,
|
||||
}: IReplicationModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const distributedSetup = useSelector(selDistSet);
|
||||
const [loadingTiers, setLoadingTiers] = useState<boolean>(true);
|
||||
const [tiersList, setTiersList] = useState<ITiersDropDown[]>([]);
|
||||
|
||||
@@ -39,8 +39,9 @@ import { getBytes, k8sScalarUnitsExcluding } from "../../../../common/utils";
|
||||
import QueryMultiSelector from "../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector";
|
||||
import { BucketReplicationIcon } from "../../../../icons";
|
||||
import InputUnitMenu from "../../Common/FormComponents/InputUnitMenu/InputUnitMenu";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IReplicationModal {
|
||||
open: boolean;
|
||||
@@ -86,7 +87,7 @@ const AddReplicationModal = ({
|
||||
|
||||
setReplicationRules,
|
||||
}: IReplicationModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [addLoading, setAddLoading] = useState<boolean>(false);
|
||||
const [priority, setPriority] = useState<string>("1");
|
||||
const [accessKey, setAccessKey] = useState<string>("");
|
||||
|
||||
@@ -15,14 +15,14 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { useNavigate, useParams } from "react-router-dom";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import { Grid, IconButton, Tooltip } from "@mui/material";
|
||||
import get from "lodash/get";
|
||||
import { AppState } from "../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../store";
|
||||
import { containerForHeader } from "../../Common/FormComponents/common/styleLibrary";
|
||||
|
||||
import ListObjects from "../ListBuckets/Objects/ListObjects/ListObjects";
|
||||
@@ -50,7 +50,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const BrowserHandler = () => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
const params = useParams();
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ import {
|
||||
useNavigate,
|
||||
useParams,
|
||||
} from "react-router-dom";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -67,6 +67,7 @@ import {
|
||||
setBucketDetailsLoad,
|
||||
setBucketInfo,
|
||||
} from "./bucketDetailsSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const BucketsIcon = React.lazy(() => import("../../../../icons/BucketsIcon"));
|
||||
const FolderIcon = React.lazy(() => import("../../../../icons/FolderIcon"));
|
||||
@@ -117,7 +118,7 @@ interface IBucketDetailsProps {
|
||||
}
|
||||
|
||||
const BucketDetails = ({ classes }: IBucketDetailsProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
const params = useParams();
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { useParams } from "react-router-dom";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -45,6 +45,7 @@ import withSuspense from "../../Common/Components/withSuspense";
|
||||
import RBIconButton from "./SummaryItems/RBIconButton";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { selBucketDetailsLoading } from "./bucketDetailsSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const DeleteEvent = withSuspense(React.lazy(() => import("./DeleteEvent")));
|
||||
const AddEvent = withSuspense(React.lazy(() => import("./AddEvent")));
|
||||
@@ -63,7 +64,7 @@ interface IBucketEventsProps {
|
||||
}
|
||||
|
||||
const BucketEventsPanel = ({ classes }: IBucketEventsProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const params = useParams();
|
||||
|
||||
const loadingBucket = useSelector(selBucketDetailsLoading);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -47,6 +47,7 @@ import EditReplicationModal from "./EditReplicationModal";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { selBucketDetailsLoading } from "./bucketDetailsSlice";
|
||||
import { useParams } from "react-router-dom";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const AddReplicationModal = withSuspense(
|
||||
React.lazy(() => import("./AddReplicationModal"))
|
||||
@@ -69,7 +70,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const BucketReplicationPanel = ({ classes }: IBucketReplicationProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const params = useParams();
|
||||
|
||||
const loadingBucket = useSelector(selBucketDetailsLoading);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { useParams } from "react-router-dom";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -60,6 +60,7 @@ import {
|
||||
selBucketDetailsLoading,
|
||||
setBucketDetailsLoad,
|
||||
} from "./bucketDetailsSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const SetAccessPolicy = withSuspense(
|
||||
React.lazy(() => import("./SetAccessPolicy"))
|
||||
@@ -97,7 +98,7 @@ interface IBucketSummaryProps {
|
||||
}
|
||||
|
||||
const BucketSummary = ({ classes }: IBucketSummaryProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const params = useParams();
|
||||
|
||||
const loadingBucket = useSelector(selBucketDetailsLoading);
|
||||
|
||||
@@ -20,12 +20,13 @@ import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import { modalBasic } from "../../Common/FormComponents/common/styleLibrary";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { ErrorResponseHandler } from "../../../../common/types";
|
||||
import useApi from "../../Common/Hooks/useApi";
|
||||
import ConfirmDialog from "../../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmDeleteIcon } from "../../../../icons";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IDeleteAccessRule {
|
||||
modalOpen: boolean;
|
||||
@@ -45,7 +46,7 @@ const DeleteAccessRule = ({
|
||||
bucket,
|
||||
toDelete,
|
||||
}: IDeleteAccessRule) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const onDelSuccess = () => onClose();
|
||||
const onDelError = (err: ErrorResponseHandler) =>
|
||||
dispatch(setErrorSnackMessage(err));
|
||||
|
||||
@@ -25,8 +25,9 @@ import { ErrorResponseHandler } from "../../../../common/types";
|
||||
import { ConfirmDeleteIcon } from "../../../../icons";
|
||||
import ConfirmDialog from "../../Common/ModalWrapper/ConfirmDialog";
|
||||
import api from "../../../../common/api";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IDeleteLifecycleRule {
|
||||
deleteOpen: boolean;
|
||||
@@ -46,7 +47,7 @@ const DeleteBucketLifecycleRule = ({
|
||||
bucket,
|
||||
id,
|
||||
}: IDeleteLifecycleRule) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [deletingRule, setDeletingRule] = useState<boolean>(false);
|
||||
|
||||
useEffect(() => {
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { DialogContentText } from "@mui/material";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -26,6 +26,7 @@ import useApi from "../../Common/Hooks/useApi";
|
||||
import ConfirmDialog from "../../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmDeleteIcon } from "../../../../icons";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IDeleteBucketTagModal {
|
||||
deleteOpen: boolean;
|
||||
@@ -49,7 +50,7 @@ const DeleteBucketTagModal = ({
|
||||
bucketName,
|
||||
classes,
|
||||
}: IDeleteBucketTagModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [tagKey, tagLabel] = selectedTag;
|
||||
|
||||
const onDelSuccess = () => onCloseAndUpdate(true);
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
import React from "react";
|
||||
import get from "lodash/get";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { DialogContentText } from "@mui/material";
|
||||
import { BucketEvent } from "../types";
|
||||
|
||||
@@ -25,6 +25,7 @@ import useApi from "../../Common/Hooks/useApi";
|
||||
import ConfirmDialog from "../../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmDeleteIcon } from "../../../../icons";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IDeleteEventProps {
|
||||
closeDeleteModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -39,7 +40,7 @@ const DeleteEvent = ({
|
||||
selectedBucket,
|
||||
bucketEvent,
|
||||
}: IDeleteEventProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const onDelSuccess = () => closeDeleteModalAndRefresh(true);
|
||||
const onDelError = (err: ErrorResponseHandler) =>
|
||||
dispatch(setErrorSnackMessage(err));
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { DialogContentText } from "@mui/material";
|
||||
|
||||
import { ErrorResponseHandler } from "../../../../common/types";
|
||||
@@ -26,6 +26,7 @@ import Grid from "@mui/material/Grid";
|
||||
import InputBoxWrapper from "../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper";
|
||||
import WarningMessage from "../../Common/WarningMessage/WarningMessage";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IDeleteReplicationProps {
|
||||
closeDeleteModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -48,7 +49,7 @@ const DeleteReplicationRule = ({
|
||||
allSelected,
|
||||
deleteSelectedRules = false,
|
||||
}: IDeleteReplicationProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [confirmationText, setConfirmationText] = useState<string>("");
|
||||
|
||||
const onDelSuccess = () => closeDeleteModalAndRefresh(true);
|
||||
|
||||
@@ -24,12 +24,13 @@ import {
|
||||
modalStyleUtils,
|
||||
spacingUtils,
|
||||
} from "../../Common/FormComponents/common/styleLibrary";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import api from "../../../../common/api";
|
||||
import { ErrorResponseHandler } from "../../../../common/types";
|
||||
import SelectWrapper from "../../Common/FormComponents/SelectWrapper/SelectWrapper";
|
||||
import { AddAccessRuleIcon } from "../../../../icons";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IEditAccessRule {
|
||||
classes: any;
|
||||
@@ -54,7 +55,7 @@ const EditAccessRule = ({
|
||||
toEdit,
|
||||
initial,
|
||||
}: IEditAccessRule) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [selectedAccess, setSelectedAccess] = useState<any>(initial);
|
||||
|
||||
const accessOptions = [
|
||||
|
||||
@@ -51,8 +51,9 @@ import FormSwitchWrapper from "../../Common/FormComponents/FormSwitchWrapper/For
|
||||
import QueryMultiSelector from "../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector";
|
||||
import SelectWrapper from "../../Common/FormComponents/SelectWrapper/SelectWrapper";
|
||||
import RadioGroupSelector from "../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -95,7 +96,7 @@ const EditLifecycleConfiguration = ({
|
||||
lifecycleRule,
|
||||
open,
|
||||
}: IAddUserContentProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loadingTiers, setLoadingTiers] = useState<boolean>(true);
|
||||
const [addLoading, setAddLoading] = useState<boolean>(false);
|
||||
const [tags, setTags] = useState<string>("");
|
||||
|
||||
@@ -31,13 +31,13 @@ import {
|
||||
spacingUtils,
|
||||
} from "../../Common/FormComponents/common/styleLibrary";
|
||||
import { BucketReplicationRule } from "../types";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import api from "../../../../common/api";
|
||||
import { ErrorResponseHandler } from "../../../../common/types";
|
||||
import PredefinedList from "../../Common/FormComponents/PredefinedList/PredefinedList";
|
||||
import FormSwitchWrapper from "../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper";
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IEditReplicationModal {
|
||||
closeModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -74,7 +74,7 @@ const EditReplicationModal = ({
|
||||
bucketName,
|
||||
ruleID,
|
||||
}: IEditReplicationModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [editLoading, setEditLoading] = useState<boolean>(true);
|
||||
const [saveEdit, setSaveEdit] = useState<boolean>(false);
|
||||
const [priority, setPriority] = useState<string>("1");
|
||||
|
||||
@@ -31,8 +31,9 @@ import ModalWrapper from "../../Common/ModalWrapper/ModalWrapper";
|
||||
import InputBoxWrapper from "../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper";
|
||||
import SelectWrapper from "../../Common/FormComponents/SelectWrapper/SelectWrapper";
|
||||
import { BucketEncryptionIcon } from "../../../../icons";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -56,7 +57,7 @@ const EnableBucketEncryption = ({
|
||||
selectedBucket,
|
||||
closeModalAndRefresh,
|
||||
}: IEnableBucketEncryptionProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(false);
|
||||
const [kmsKeyID, setKmsKeyID] = useState<string>("");
|
||||
const [encryptionType, setEncryptionType] = useState<string>("disabled");
|
||||
|
||||
@@ -38,8 +38,9 @@ import ModalWrapper from "../../Common/ModalWrapper/ModalWrapper";
|
||||
import api from "../../../../common/api";
|
||||
import { BucketQuotaIcon } from "../../../../icons";
|
||||
import InputUnitMenu from "../../Common/FormComponents/InputUnitMenu/InputUnitMenu";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -64,7 +65,7 @@ const EnableQuota = ({
|
||||
selectedBucket,
|
||||
closeModalAndRefresh,
|
||||
}: IEnableQuotaProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(false);
|
||||
const [quotaEnabled, setQuotaEnabled] = useState<boolean>(false);
|
||||
const [quotaSize, setQuotaSize] = useState<string>("1");
|
||||
|
||||
@@ -21,8 +21,9 @@ import api from "../../../../common/api";
|
||||
import { ErrorResponseHandler } from "../../../../common/types";
|
||||
import ConfirmDialog from "../../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmModalIcon } from "../../../../icons";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IVersioningEventProps {
|
||||
closeVersioningModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -37,7 +38,7 @@ const EnableVersioningModal = ({
|
||||
selectedBucket,
|
||||
versioningCurrentState,
|
||||
}: IVersioningEventProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [versioningLoading, setVersioningLoading] = useState<boolean>(false);
|
||||
|
||||
const enableVersioning = () => {
|
||||
|
||||
@@ -32,8 +32,9 @@ import ModalWrapper from "../../Common/ModalWrapper/ModalWrapper";
|
||||
import SelectWrapper from "../../Common/FormComponents/SelectWrapper/SelectWrapper";
|
||||
import { ChangeAccessPolicyIcon } from "../../../../icons";
|
||||
import CodeMirrorWrapper from "../../Common/FormComponents/CodeMirrorWrapper/CodeMirrorWrapper";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -72,7 +73,7 @@ const SetAccessPolicy = ({
|
||||
actualDefinition,
|
||||
closeModalAndRefresh,
|
||||
}: ISetAccessPolicyProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [addLoading, setAddLoading] = useState<boolean>(false);
|
||||
const [accessPolicy, setAccessPolicy] = useState<string>("");
|
||||
const [policyDefinition, setPolicyDefinition] = useState<string>("");
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Button, LinearProgress } from "@mui/material";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -38,6 +38,7 @@ import RadioGroupSelector from "../../Common/FormComponents/RadioGroupSelector/R
|
||||
import InputBoxWrapper from "../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper";
|
||||
import Loader from "../../Common/Loader/Loader";
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -60,7 +61,7 @@ const SetRetentionConfig = ({
|
||||
bucketName,
|
||||
closeModalAndRefresh,
|
||||
}: ISetRetentionConfigProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [addLoading, setAddLoading] = useState<boolean>(false);
|
||||
const [loadingForm, setLoadingForm] = useState<boolean>(true);
|
||||
const [retentionMode, setRetentionMode] = useState<string>("compliance");
|
||||
|
||||
@@ -26,8 +26,9 @@ import CloseIcon from "@mui/icons-material/Close";
|
||||
import AddIcon from "@mui/icons-material/Add";
|
||||
import withSuspense from "../../../Common/Components/withSuspense";
|
||||
import Loader from "../../../Common/Loader/Loader";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setErrorSnackMessage } from "../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
const AddBucketTagModal = withSuspense(
|
||||
React.lazy(() => import("../AddBucketTagModal"))
|
||||
@@ -41,7 +42,7 @@ type BucketTagProps = {
|
||||
};
|
||||
|
||||
const BucketTags = ({ bucketName }: BucketTagProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const [tags, setTags] = useState<any>(null);
|
||||
const [tagModalOpen, setTagModalOpen] = useState<boolean>(false);
|
||||
|
||||
@@ -24,8 +24,8 @@ import { containerForHeader } from "../../../Common/FormComponents/common/styleL
|
||||
import InputBoxWrapper from "../../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper";
|
||||
import RadioGroupSelector from "../../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector";
|
||||
import { k8sScalarUnitsExcluding } from "../../../../../common/utils";
|
||||
import { AppState } from "../../../../../store";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { AppState, useAppDispatch } from "../../../../../store";
|
||||
import { useSelector } from "react-redux";
|
||||
import FormSwitchWrapper from "../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper";
|
||||
import PageHeader from "../../../Common/PageHeader/PageHeader";
|
||||
import BackLink from "../../../../../common/BackLink";
|
||||
@@ -103,7 +103,7 @@ interface IsetProps {
|
||||
}
|
||||
|
||||
const AddBucket = ({ classes }: IsetProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const versioningEnabled = useSelector(
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
import React from "react";
|
||||
import { setName } from "./addBucketsSlice";
|
||||
import InputBoxWrapper from "../../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { AppState } from "../../../../../store";
|
||||
import { useSelector } from "react-redux";
|
||||
import { AppState, useAppDispatch } from "../../../../../store";
|
||||
|
||||
const AddBucketName = () => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const bucketName = useSelector((state: AppState) => state.addBucket.name);
|
||||
return (
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -47,6 +47,7 @@ import {
|
||||
} from "../../Configurations/TiersConfiguration/types";
|
||||
import { MultiBucketResult } from "../types";
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IBulkReplicationModal {
|
||||
open: boolean;
|
||||
@@ -83,7 +84,7 @@ const AddBulkReplicationModal = ({
|
||||
classes,
|
||||
buckets,
|
||||
}: IBulkReplicationModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [addLoading, setAddLoading] = useState<boolean>(false);
|
||||
const [loadingTiers, setLoadingTiers] = useState<boolean>(true);
|
||||
const [tiersList, setTiersList] = useState<ITiersDropDown[]>([]);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -42,6 +42,7 @@ import { getBytes, k8sScalarUnitsExcluding } from "../../../../common/utils";
|
||||
import { ErrorResponseHandler } from "../../../../common/types";
|
||||
import InputUnitMenu from "../../Common/FormComponents/InputUnitMenu/InputUnitMenu";
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IBulkReplicationModal {
|
||||
open: boolean;
|
||||
@@ -78,7 +79,7 @@ const AddBulkReplicationModal = ({
|
||||
classes,
|
||||
buckets,
|
||||
}: IBulkReplicationModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [bucketsToAlter, setBucketsToAlter] = useState<string[]>([]);
|
||||
const [addLoading, setAddLoading] = useState<boolean>(false);
|
||||
const [externalLoading, setExternalLoading] = useState<boolean>(false);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { DialogContentText } from "@mui/material";
|
||||
|
||||
import { ErrorResponseHandler } from "../../../../common/types";
|
||||
@@ -23,6 +23,7 @@ import useApi from "../../Common/Hooks/useApi";
|
||||
import ConfirmDialog from "../../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmDeleteIcon } from "../../../../icons";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IDeleteBucketProps {
|
||||
closeDeleteModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -35,7 +36,7 @@ const DeleteBucket = ({
|
||||
deleteOpen,
|
||||
selectedBucket,
|
||||
}: IDeleteBucketProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const onDelSuccess = () => closeDeleteModalAndRefresh(true);
|
||||
const onDelError = (err: ErrorResponseHandler) =>
|
||||
dispatch(setErrorSnackMessage(err));
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -56,6 +56,7 @@ import RBIconButton from "../BucketDetails/SummaryItems/RBIconButton";
|
||||
import BulkLifecycleModal from "./BulkLifecycleModal";
|
||||
import hasPermission from "../../../../common/SecureComponent/accessControl";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -87,7 +88,7 @@ interface IListBucketsProps {
|
||||
}
|
||||
|
||||
const ListBuckets = ({ classes }: IListBucketsProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const [records, setRecords] = useState<Bucket[]>([]);
|
||||
|
||||
@@ -26,12 +26,12 @@ import {
|
||||
formFieldStyles,
|
||||
modalStyleUtils,
|
||||
} from "../../../../Common/FormComponents/common/styleLibrary";
|
||||
import { connect, useDispatch } from "react-redux";
|
||||
import { connect } from "react-redux";
|
||||
import { encodeURLString } from "../../../../../../common/utils";
|
||||
|
||||
import { BucketObjectItem } from "./types";
|
||||
import { CreateNewPathIcon } from "../../../../../../icons";
|
||||
import { AppState } from "../../../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../../../store";
|
||||
import { setModalErrorSnackMessage } from "../../../../../../systemSlice";
|
||||
|
||||
interface ICreatePath {
|
||||
@@ -59,7 +59,7 @@ const CreatePathModal = ({
|
||||
existingFiles,
|
||||
simplePath,
|
||||
}: ICreatePath) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const [pathUrl, setPathUrl] = useState("");
|
||||
|
||||
@@ -22,8 +22,9 @@ import useApi from "../../../../Common/Hooks/useApi";
|
||||
import ConfirmDialog from "../../../../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmDeleteIcon } from "../../../../../../icons";
|
||||
import FormSwitchWrapper from "../../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setErrorSnackMessage } from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
interface IDeleteObjectProps {
|
||||
closeDeleteModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -42,7 +43,7 @@ const DeleteObject = ({
|
||||
|
||||
versioning,
|
||||
}: IDeleteObjectProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const onDelSuccess = () => closeDeleteModalAndRefresh(true);
|
||||
const onDelError = (err: ErrorResponseHandler) =>
|
||||
dispatch(setErrorSnackMessage(err));
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { DialogContentText } from "@mui/material";
|
||||
import Grid from "@mui/material/Grid";
|
||||
import { ErrorResponseHandler } from "../../../../../../common/types";
|
||||
@@ -25,6 +25,7 @@ import ConfirmDialog from "../../../../Common/ModalWrapper/ConfirmDialog";
|
||||
import api from "../../../../../../common/api";
|
||||
import InputBoxWrapper from "../../../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper";
|
||||
import { setErrorSnackMessage } from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
interface IDeleteNonCurrentProps {
|
||||
closeDeleteModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -39,7 +40,7 @@ const DeleteNonCurrentVersions = ({
|
||||
selectedBucket,
|
||||
selectedObject,
|
||||
}: IDeleteNonCurrentProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [deleteLoading, setDeleteLoading] = useState<boolean>(false);
|
||||
const [typeConfirm, setTypeConfirm] = useState<string>("");
|
||||
|
||||
|
||||
@@ -23,8 +23,9 @@ import ConfirmDialog from "../../../../Common/ModalWrapper/ConfirmDialog";
|
||||
import useApi from "../../../../Common/Hooks/useApi";
|
||||
import { ConfirmDeleteIcon } from "../../../../../../icons";
|
||||
import FormSwitchWrapper from "../../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setErrorSnackMessage } from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
interface IDeleteObjectProps {
|
||||
closeDeleteModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -45,7 +46,7 @@ const DeleteObject = ({
|
||||
versioning,
|
||||
selectedVersion = "",
|
||||
}: IDeleteObjectProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const onDelSuccess = () => closeDeleteModalAndRefresh(true);
|
||||
const onDelError = (err: ErrorResponseHandler) =>
|
||||
dispatch(setErrorSnackMessage(err));
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import {
|
||||
decodeURLString,
|
||||
@@ -40,6 +40,7 @@ import { PasswordKeyIcon } from "../../../../../../icons";
|
||||
import { Box, DialogContentText } from "@mui/material";
|
||||
import KeyRevealer from "../../../../Tools/KeyRevealer";
|
||||
import { setErrorSnackMessage } from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -63,7 +64,7 @@ const InspectObject = ({
|
||||
inspectPath,
|
||||
volumeName,
|
||||
}: IInspectObjectProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const onClose = () => closeInspectModalAndRefresh(false);
|
||||
const [isEncrypt, setIsEncrypt] = useState<boolean>(true);
|
||||
const [decryptionKey, setDecryptionKey] = useState<string>("");
|
||||
|
||||
@@ -22,7 +22,7 @@ import React, {
|
||||
useRef,
|
||||
useState,
|
||||
} from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { useNavigate, useParams } from "react-router-dom";
|
||||
import { useDropzone } from "react-dropzone";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
@@ -66,7 +66,7 @@ import { ErrorResponseHandler } from "../../../../../../common/types";
|
||||
|
||||
import ScreenTitle from "../../../../Common/ScreenTitle/ScreenTitle";
|
||||
|
||||
import { AppState } from "../../../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../../../store";
|
||||
import PageLayout from "../../../../Common/Layout/PageLayout";
|
||||
|
||||
import { IAM_SCOPES } from "../../../../../../common/SecureComponent/permissions";
|
||||
@@ -270,7 +270,7 @@ const defLoading = <Typography component="h3">Loading...</Typography>;
|
||||
|
||||
const ListObjects = () => {
|
||||
const classes = useStyles();
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const params = useParams();
|
||||
const navigate = useNavigate();
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { Box, Button } from "@mui/material";
|
||||
import { withStyles } from "@mui/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -41,7 +41,7 @@ import {
|
||||
} from "../../../../../../common/utils";
|
||||
import { IAM_SCOPES } from "../../../../../../common/SecureComponent/permissions";
|
||||
|
||||
import { AppState } from "../../../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../../../store";
|
||||
import {
|
||||
DeleteIcon,
|
||||
DownloadIcon,
|
||||
@@ -158,7 +158,7 @@ const ObjectDetailPanel = ({
|
||||
|
||||
onClosePanel,
|
||||
}: IObjectDetailPanelProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const distributedSetup = useSelector(selDistSet);
|
||||
const versionsMode = useSelector(
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { Button, LinearProgress } from "@mui/material";
|
||||
import Grid from "@mui/material/Grid";
|
||||
import ModalWrapper from "../../../../Common/ModalWrapper/ModalWrapper";
|
||||
import DateTimePickerWrapper from "../../../../Common/FormComponents/DateTimePickerWrapper/DateTimePickerWrapper";
|
||||
import FormSwitchWrapper from "../../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper";
|
||||
import { AppState } from "../../../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../../../store";
|
||||
import {
|
||||
resetRewind,
|
||||
setRewindEnable,
|
||||
@@ -38,7 +38,7 @@ const RewindEnable = ({
|
||||
open,
|
||||
bucketName,
|
||||
}: IRewindEnable) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const rewindEnabled = useSelector(
|
||||
(state: AppState) => state.objectBrowser.rewind.rewindEnabled
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { DialogContentText } from "@mui/material";
|
||||
|
||||
import { ErrorResponseHandler } from "../../../../../../common/types";
|
||||
@@ -23,6 +23,7 @@ import ConfirmDialog from "../../../../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmDeleteIcon } from "../../../../../../icons";
|
||||
import api from "../../../../../../common/api";
|
||||
import { setErrorSnackMessage } from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
interface IDeleteSelectedVersionsProps {
|
||||
closeDeleteModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -39,7 +40,7 @@ const DeleteObject = ({
|
||||
selectedVersions,
|
||||
selectedObject,
|
||||
}: IDeleteSelectedVersionsProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [deleteLoading, setDeleteLoading] = useState<boolean>(false);
|
||||
|
||||
const onClose = () => closeDeleteModalAndRefresh(false);
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
import React, { useState } from "react";
|
||||
import { DialogContentText } from "@mui/material";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import { modalBasic } from "../../../../Common/FormComponents/common/styleLibrary";
|
||||
@@ -28,6 +28,7 @@ import api from "../../../../../../common/api";
|
||||
import ConfirmDialog from "../../../../Common/ModalWrapper/ConfirmDialog";
|
||||
import RecoverIcon from "../../../../../../icons/RecoverIcon";
|
||||
import { setErrorSnackMessage } from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
interface IRestoreFileVersion {
|
||||
classes: any;
|
||||
@@ -51,7 +52,7 @@ const RestoreFileVersion = ({
|
||||
restoreOpen,
|
||||
onCloseAndUpdate,
|
||||
}: IRestoreFileVersion) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [restoreLoading, setRestoreLoading] = useState<boolean>(false);
|
||||
|
||||
const restoreVersion = () => {
|
||||
|
||||
@@ -33,8 +33,9 @@ import ModalWrapper from "../../../../Common/ModalWrapper/ModalWrapper";
|
||||
import FormSwitchWrapper from "../../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper";
|
||||
import api from "../../../../../../common/api";
|
||||
import { encodeURLString } from "../../../../../../common/utils";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setModalErrorSnackMessage } from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -60,7 +61,7 @@ const SetLegalHoldModal = ({
|
||||
bucketName,
|
||||
actualInfo,
|
||||
}: ISetRetentionProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [legalHoldEnabled, setLegalHoldEnabled] = useState<boolean>(false);
|
||||
const [isSaving, setIsSaving] = useState<boolean>(false);
|
||||
const versionId = actualInfo.version_id;
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useRef, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -37,6 +37,7 @@ import DateSelector from "../../../../Common/FormComponents/DateSelector/DateSel
|
||||
import api from "../../../../../../common/api";
|
||||
import { encodeURLString } from "../../../../../../common/utils";
|
||||
import { setModalErrorSnackMessage } from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -81,7 +82,7 @@ const SetRetention = ({
|
||||
objectInfo,
|
||||
bucketName,
|
||||
}: ISetRetentionProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [statusEnabled, setStatusEnabled] = useState<boolean>(true);
|
||||
const [type, setType] = useState<string>("");
|
||||
const [date, setDate] = useState<string>("");
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import get from "lodash/get";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -42,6 +42,7 @@ import {
|
||||
setModalErrorSnackMessage,
|
||||
setModalSnackMessage,
|
||||
} from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
const CopyIcon = React.lazy(() => import("../../../../../../icons/CopyIcon"));
|
||||
|
||||
@@ -94,7 +95,7 @@ const ShareFile = ({
|
||||
bucketName,
|
||||
dataObject,
|
||||
}: IShareFileProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const distributedSetup = useSelector(selDistSet);
|
||||
const [shareURL, setShareURL] = useState<string>("");
|
||||
const [isLoadingVersion, setIsLoadingVersion] = useState<boolean>(true);
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
import React, { Fragment, useState } from "react";
|
||||
import get from "lodash/get";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { Box, Button, Grid } from "@mui/material";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -45,6 +45,7 @@ import {
|
||||
selDistSet,
|
||||
setModalErrorSnackMessage,
|
||||
} from "../../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../../store";
|
||||
|
||||
interface ITagModal {
|
||||
modalOpen: boolean;
|
||||
@@ -99,7 +100,7 @@ const AddTagModal = ({
|
||||
actualInfo,
|
||||
classes,
|
||||
}: ITagModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const distributedSetup = useSelector(selDistSet);
|
||||
const [newKey, setNewKey] = useState<string>("");
|
||||
const [newLabel, setNewLabel] = useState<string>("");
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import get from "lodash/get";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { withStyles } from "@mui/styles";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -47,7 +47,7 @@ import {
|
||||
import ScreenTitle from "../../../../Common/ScreenTitle/ScreenTitle";
|
||||
import RestoreFileVersion from "./RestoreFileVersion";
|
||||
|
||||
import { AppState } from "../../../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../../../store";
|
||||
import {
|
||||
DeleteIcon,
|
||||
DeleteNonCurrentIcon,
|
||||
@@ -162,7 +162,7 @@ const VersionsNavigator = ({
|
||||
internalPaths,
|
||||
bucketName,
|
||||
}: IVersionsNavigatorProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const searchVersions = useSelector(
|
||||
(state: AppState) => state.objectBrowser.searchVersions
|
||||
|
||||
@@ -15,9 +15,9 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useCallback, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import get from "lodash/get";
|
||||
import { AppState } from "../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../store";
|
||||
import { Box } from "@mui/material";
|
||||
import { AlertCloseIcon } from "../../../../icons";
|
||||
import { Portal } from "@mui/base";
|
||||
@@ -38,7 +38,7 @@ const stopHideTimer = () => {
|
||||
};
|
||||
|
||||
const MainError = ({ isModal = false }: IMainErrorProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const snackBar = useSelector((state: AppState) => {
|
||||
return isModal ? state.system.modalSnackBar : state.system.snackBar;
|
||||
});
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import IconButton from "@mui/material/IconButton";
|
||||
import Snackbar from "@mui/material/Snackbar";
|
||||
import { Dialog, DialogContent, DialogTitle } from "@mui/material";
|
||||
@@ -25,7 +25,7 @@ import {
|
||||
deleteDialogStyles,
|
||||
snackBarCommon,
|
||||
} from "../FormComponents/common/styleLibrary";
|
||||
import { AppState } from "../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../store";
|
||||
import CloseIcon from "@mui/icons-material/Close";
|
||||
import MainError from "../MainError/MainError";
|
||||
import { setModalSnackMessage } from "../../../../systemSlice";
|
||||
@@ -65,7 +65,7 @@ const ModalWrapper = ({
|
||||
noContentPadding,
|
||||
titleIcon = null,
|
||||
}: IModalProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [openSnackbar, setOpenSnackbar] = useState<boolean>(false);
|
||||
|
||||
const modalSnackMessage = useSelector(
|
||||
|
||||
@@ -16,11 +16,11 @@
|
||||
|
||||
import React, { Fragment } from "react";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import { IconButton, Tooltip } from "@mui/material";
|
||||
import { AppState } from "../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../store";
|
||||
import { RemoveAllIcon } from "../../../../icons";
|
||||
import ObjectHandled from "./ObjectHandled";
|
||||
import {
|
||||
@@ -86,7 +86,7 @@ interface IObjectManager {
|
||||
}
|
||||
|
||||
const ObjectManager = ({ classes }: IObjectManager) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const objects = useSelector(
|
||||
(state: AppState) => state.objectBrowser.objectManager.objectsToManage
|
||||
|
||||
@@ -16,12 +16,12 @@
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import Grid from "@mui/material/Grid";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import IconButton from "@mui/material/IconButton";
|
||||
import { AppState } from "../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../store";
|
||||
import OperatorLogo from "../../../../icons/OperatorLogo";
|
||||
import ConsoleLogo from "../../../../icons/ConsoleLogo";
|
||||
|
||||
@@ -101,7 +101,7 @@ const PageHeader = ({
|
||||
actions,
|
||||
middleComponent,
|
||||
}: IPageHeader) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const sidebarOpen = useSelector(
|
||||
(state: AppState) => state.system.sidebarOpen
|
||||
|
||||
@@ -18,7 +18,7 @@ import React, { Fragment, useEffect, useState } from "react";
|
||||
import Grid from "@mui/material/Grid";
|
||||
import { Box, Button, LinearProgress } from "@mui/material";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import RBIconButton from "../../Buckets/BucketDetails/SummaryItems/RBIconButton";
|
||||
import useApi from "../../Common/Hooks/useApi";
|
||||
import { AddIcon, ClustersIcon, RemoveIcon } from "../../../../icons";
|
||||
@@ -33,6 +33,7 @@ import {
|
||||
setErrorSnackMessage,
|
||||
setSnackBarMessage,
|
||||
} from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
type SiteInputRow = {
|
||||
name: string;
|
||||
@@ -55,7 +56,7 @@ const isValidEndPoint = (ep: string) => {
|
||||
}
|
||||
};
|
||||
const AddReplicationSites = () => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const [existingSites, setExistingSites] = useState<SiteInputRow[]>([]);
|
||||
|
||||
@@ -26,7 +26,7 @@ import ConfirmDialog from "../../Common/ModalWrapper/ConfirmDialog";
|
||||
import InputBoxWrapper from "../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper";
|
||||
import Grid from "@mui/material/Grid";
|
||||
import useApi from "../../Common/Hooks/useApi";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import ModalWrapper from "../../Common/ModalWrapper/ModalWrapper";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
@@ -40,6 +40,7 @@ import {
|
||||
setErrorSnackMessage,
|
||||
setSnackBarMessage,
|
||||
} from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -59,7 +60,7 @@ const ReplicationSites = ({
|
||||
onRefresh: () => void;
|
||||
classes: any;
|
||||
}) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [deleteSiteKey, setIsDeleteSiteKey] = useState<string>("");
|
||||
const [editSite, setEditSite] = useState<any>(null);
|
||||
const [editEndPointName, setEditEndPointName] = useState<string>("");
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Box, DialogContentText, Grid } from "@mui/material";
|
||||
import PageHeader from "../../Common/PageHeader/PageHeader";
|
||||
import PageLayout from "../../Common/Layout/PageLayout";
|
||||
@@ -40,6 +40,7 @@ import {
|
||||
setSnackBarMessage,
|
||||
} from "../../../../systemSlice";
|
||||
import AButton from "../../Common/AButton/AButton";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
export type ReplicationSite = {
|
||||
deploymentID: string;
|
||||
@@ -49,7 +50,7 @@ export type ReplicationSite = {
|
||||
};
|
||||
|
||||
const SiteReplication = () => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const [sites, setSites] = useState([]);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useCallback, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { useNavigate, useParams } from "react-router-dom";
|
||||
import get from "lodash/get";
|
||||
import Grid from "@mui/material/Grid";
|
||||
@@ -47,6 +47,7 @@ import { IAM_PAGES } from "../../../../common/SecureComponent/permissions";
|
||||
|
||||
import RegionSelectWrapper from "./RegionSelectWrapper";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -82,7 +83,7 @@ const AddTierConfiguration = ({
|
||||
classes,
|
||||
history,
|
||||
}: IAddNotificationEndpointProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
const params = useParams();
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import get from "lodash/get";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -56,6 +56,7 @@ import { tierTypes } from "./utils";
|
||||
import RBIconButton from "../../Buckets/BucketDetails/SummaryItems/RBIconButton";
|
||||
import { selDistSet, setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const UpdateTierCredentialsModal = withSuspense(
|
||||
React.lazy(() => import("./UpdateTierCredentialsModal"))
|
||||
@@ -94,7 +95,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const ListTiersConfiguration = ({ classes }: IListTiersConfig) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const distributedSetup = useSelector(selDistSet);
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import get from "lodash/get";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -35,6 +35,7 @@ import { ErrorResponseHandler } from "../../../../common/types";
|
||||
import ModalWrapper from "../../Common/ModalWrapper/ModalWrapper";
|
||||
import { LockIcon } from "../../../../icons";
|
||||
import { setModalErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface ITierCredentialsModal {
|
||||
open: boolean;
|
||||
@@ -58,7 +59,7 @@ const UpdateTierCredentialsModal = ({
|
||||
classes,
|
||||
tierData,
|
||||
}: ITierCredentialsModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [savingTiers, setSavingTiers] = useState<boolean>(false);
|
||||
const [accessKey, setAccessKey] = useState<string>("");
|
||||
const [secretKey, setSecretKey] = useState<string>("");
|
||||
|
||||
@@ -29,8 +29,8 @@ import { Button, LinearProgress } from "@mui/material";
|
||||
import CssBaseline from "@mui/material/CssBaseline";
|
||||
import Snackbar from "@mui/material/Snackbar";
|
||||
import { Navigate, Route, Routes, useLocation } from "react-router-dom";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { AppState } from "../../store";
|
||||
import { useSelector } from "react-redux";
|
||||
import { AppState, useAppDispatch } from "../../store";
|
||||
import { snackBarCommon } from "./Common/FormComponents/common/styleLibrary";
|
||||
import { ErrorResponseHandler } from "../../common/types";
|
||||
|
||||
@@ -179,7 +179,7 @@ interface IConsoleProps {
|
||||
}
|
||||
|
||||
const Console = ({ classes }: IConsoleProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const { pathname = "" } = useLocation();
|
||||
const open = useSelector((state: AppState) => state.system.sidebarOpen);
|
||||
const session = useSelector(selSession);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useCallback, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import get from "lodash/get";
|
||||
import PrDashboard from "./Prometheus/PrDashboard";
|
||||
import PageHeader from "../Common/PageHeader/PageHeader";
|
||||
@@ -31,6 +31,7 @@ import { Usage } from "./types";
|
||||
import { ErrorResponseHandler } from "../../../common/types";
|
||||
import BasicDashboard from "./BasicDashboard/BasicDashboard";
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface IDashboardSimple {
|
||||
classes: any;
|
||||
@@ -42,7 +43,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const Dashboard = ({ classes }: IDashboardSimple) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
const [basicResult, setBasicResult] = useState<Usage | null>(null);
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useCallback, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import Grid from "@mui/material/Grid";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
@@ -35,7 +35,7 @@ import api from "../../../../common/api";
|
||||
import TabSelector from "../../Common/TabSelector/TabSelector";
|
||||
import { componentToUse } from "./widgetUtils";
|
||||
import ZoomWidget from "./ZoomWidget";
|
||||
import { AppState } from "../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../store";
|
||||
import DateRangeSelector from "../../Common/FormComponents/DateRangeSelector/DateRangeSelector";
|
||||
import {
|
||||
DLayoutColumnProps,
|
||||
@@ -67,7 +67,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const PrDashboard = ({ apiPrefix = "admin" }: IPrDashboard) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const zoomOpen = useSelector(
|
||||
(state: AppState) => state.dashboard.zoom.openZoom
|
||||
);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import {
|
||||
Bar,
|
||||
BarChart,
|
||||
@@ -41,6 +41,7 @@ import { useTheme } from "@mui/styles";
|
||||
import Loader from "../../../Common/Loader/Loader";
|
||||
import ExpandGraphLink from "./ExpandGraphLink";
|
||||
import { setErrorSnackMessage } from "../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
interface IBarChartWidget {
|
||||
classes: any;
|
||||
@@ -90,7 +91,7 @@ const BarChartWidget = ({
|
||||
apiPrefix,
|
||||
zoomActivated = false,
|
||||
}: IBarChartWidget) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
const [data, setData] = useState<any>([]);
|
||||
const [result, setResult] = useState<IDashboardPanel | null>(null);
|
||||
|
||||
@@ -20,7 +20,6 @@ import { Box } from "@mui/material";
|
||||
import api from "../../../../../common/api";
|
||||
import { widgetDetailsToPanel } from "../utils";
|
||||
import { ErrorResponseHandler } from "../../../../../common/types";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import {
|
||||
calculateBytes,
|
||||
@@ -31,6 +30,7 @@ import { Cell, Pie, PieChart } from "recharts";
|
||||
import { ReportedUsageIcon } from "../../../../../icons";
|
||||
import Loader from "../../../Common/Loader/Loader";
|
||||
import { setErrorSnackMessage } from "../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
const CapacityItem = ({
|
||||
value,
|
||||
@@ -45,7 +45,7 @@ const CapacityItem = ({
|
||||
propLoading: boolean;
|
||||
apiPrefix: string;
|
||||
}) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
|
||||
const [totalUsableFree, setTotalUsableFree] = useState<number>(0);
|
||||
|
||||
@@ -21,8 +21,9 @@ import { widgetDetailsToPanel } from "../utils";
|
||||
import { ErrorResponseHandler } from "../../../../../common/types";
|
||||
import { IDashboardPanel } from "../types";
|
||||
import Loader from "../../../Common/Loader/Loader";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setErrorSnackMessage } from "../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
const EntityStateStatItem = ({
|
||||
panelItem,
|
||||
@@ -39,7 +40,7 @@ const EntityStateStatItem = ({
|
||||
apiPrefix: string;
|
||||
statLabel: any;
|
||||
}) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
const [data, setData] = useState<string>("");
|
||||
|
||||
|
||||
@@ -18,11 +18,12 @@ import React from "react";
|
||||
import ZoomOutMapIcon from "@mui/icons-material/ZoomOutMap";
|
||||
import { Box } from "@mui/material";
|
||||
import { IDashboardPanel } from "../types";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { openZoomPage } from "../../dashboardSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
const ExpandGraphLink = ({ panelItem }: { panelItem: IDashboardPanel }) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
return (
|
||||
<Box
|
||||
sx={{
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import {
|
||||
Area,
|
||||
AreaChart,
|
||||
@@ -41,6 +41,7 @@ import { useTheme } from "@mui/styles";
|
||||
import Loader from "../../../Common/Loader/Loader";
|
||||
import ExpandGraphLink from "./ExpandGraphLink";
|
||||
import { setErrorSnackMessage } from "../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
interface ILinearGraphWidget {
|
||||
classes: any;
|
||||
@@ -107,7 +108,7 @@ const LinearGraphWidget = ({
|
||||
xAxisFormatter = (item: string) => item,
|
||||
zoomActivated = false,
|
||||
}: ILinearGraphWidget) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
const [data, setData] = useState<object[]>([]);
|
||||
const [dataMax, setDataMax] = useState<number>(0);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -30,6 +30,7 @@ import get from "lodash/get";
|
||||
import api from "../../../../../common/api";
|
||||
import Loader from "../../../Common/Loader/Loader";
|
||||
import { setErrorSnackMessage } from "../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
interface IPieChartWidget {
|
||||
classes: any;
|
||||
@@ -77,7 +78,7 @@ const PieChartWidget = ({
|
||||
|
||||
apiPrefix,
|
||||
}: IPieChartWidget) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
const [dataInner, setDataInner] = useState<object[]>([]);
|
||||
const [dataOuter, setDataOuter] = useState<object[]>([]);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { connect, useDispatch } from "react-redux";
|
||||
import { connect } from "react-redux";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -26,6 +26,7 @@ import { IDashboardPanel } from "../types";
|
||||
import { ErrorResponseHandler } from "../../../../../common/types";
|
||||
import Loader from "../../../Common/Loader/Loader";
|
||||
import { setErrorSnackMessage } from "../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
interface ISimpleWidget {
|
||||
classes: any;
|
||||
@@ -74,7 +75,7 @@ const SimpleWidget = ({
|
||||
apiPrefix,
|
||||
renderFn,
|
||||
}: ISimpleWidget) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
const [data, setData] = useState<string>("");
|
||||
|
||||
|
||||
@@ -15,8 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { connect, useDispatch } from "react-redux";
|
||||
|
||||
import { connect } from "react-redux";
|
||||
import { IDashboardPanel } from "../types";
|
||||
import { widgetDetailsToPanel } from "../utils";
|
||||
import { ErrorResponseHandler } from "../../../../../common/types";
|
||||
@@ -26,6 +25,7 @@ import DashboardItemBox from "../../DashboardItemBox";
|
||||
import BucketsCountItem from "./BucketsCountItem";
|
||||
import ObjectsCountItem from "./ObjectsCountItem";
|
||||
import { setErrorSnackMessage } from "../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
interface ISingleRepWidget {
|
||||
title: string;
|
||||
@@ -48,7 +48,7 @@ const SingleRepWidget = ({
|
||||
|
||||
apiPrefix,
|
||||
}: ISingleRepWidget) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
const [result, setResult] = useState<IDashboardPanel | null>(null);
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { connect, useDispatch } from "react-redux";
|
||||
import { connect } from "react-redux";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -24,9 +24,9 @@ import Loader from "../../../Common/Loader/Loader";
|
||||
import { widgetCommon } from "../../../Common/FormComponents/common/styleLibrary";
|
||||
import { splitSizeMetric, widgetDetailsToPanel } from "../utils";
|
||||
import { IDashboardPanel } from "../types";
|
||||
|
||||
import { ErrorResponseHandler } from "../../../../../common/types";
|
||||
import { setErrorSnackMessage } from "../../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../../store";
|
||||
|
||||
interface ISingleValueWidget {
|
||||
title: string;
|
||||
@@ -81,7 +81,7 @@ const SingleValueWidget = ({
|
||||
apiPrefix,
|
||||
renderFn,
|
||||
}: ISingleValueWidget) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
const [data, setData] = useState<string>("");
|
||||
|
||||
|
||||
@@ -15,11 +15,12 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import ModalWrapper from "../../Common/ModalWrapper/ModalWrapper";
|
||||
import { IDashboardPanel } from "./types";
|
||||
import { componentToUse } from "./widgetUtils";
|
||||
import { closeZoomPage } from "../dashboardSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface IZoomWidget {
|
||||
widgetRender: number;
|
||||
@@ -37,7 +38,7 @@ const ZoomWidget = ({
|
||||
timeEnd,
|
||||
apiPrefix,
|
||||
}: IZoomWidget) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
if (!value) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ import { Button } from "@mui/material";
|
||||
import api from "../../../common/api";
|
||||
import { ErrorResponseHandler } from "../../../common/types";
|
||||
|
||||
import { useDispatch } from "react-redux";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import {
|
||||
@@ -19,6 +18,7 @@ import withStyles from "@mui/styles/withStyles";
|
||||
import { AddMembersToGroupIcon } from "../../../icons";
|
||||
import { encodeURLString } from "../../../common/utils";
|
||||
import { setModalErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
type UserPickerModalProps = {
|
||||
classes?: any;
|
||||
@@ -53,7 +53,7 @@ const AddGroupMember = ({
|
||||
open,
|
||||
onClose,
|
||||
}: UserPickerModalProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [selectedUsers, setSelectedUsers] = useState(preSelectedUsers);
|
||||
|
||||
function addMembersToGroup() {
|
||||
|
||||
@@ -31,7 +31,7 @@ import InputBoxWrapper from "../Common/FormComponents/InputBoxWrapper/InputBoxWr
|
||||
import AddGroupHelpBox from "./AddGroupHelpBox";
|
||||
import UsersSelectors from "./UsersSelectors";
|
||||
import BackLink from "../../../common/BackLink";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { CreateGroupIcon } from "../../../icons";
|
||||
import { IAM_PAGES } from "../../../common/SecureComponent/permissions";
|
||||
import { ErrorResponseHandler } from "../../../../src/common/types";
|
||||
@@ -39,6 +39,7 @@ import api from "../../../../src/common/api";
|
||||
|
||||
import FormLayout from "../Common/FormLayout";
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface IAddGroupProps {
|
||||
classes: any;
|
||||
@@ -64,7 +65,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const AddGroupScreen = ({ classes }: IAddGroupProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
const [groupName, setGroupName] = useState<string>("");
|
||||
const [saving, isSaving] = useState<boolean>(false);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { DialogContentText } from "@mui/material";
|
||||
|
||||
import { ErrorResponseHandler } from "../../../common/types";
|
||||
@@ -24,6 +24,7 @@ import useApi from "../Common/Hooks/useApi";
|
||||
import { ConfirmDeleteIcon } from "../../../icons";
|
||||
import { encodeURLString } from "../../../common/utils";
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface IDeleteGroup {
|
||||
selectedGroups: string[];
|
||||
@@ -36,7 +37,7 @@ const DeleteGroup = ({
|
||||
deleteOpen,
|
||||
closeDeleteModalAndRefresh,
|
||||
}: IDeleteGroup) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const onDelSuccess = () => closeDeleteModalAndRefresh(true);
|
||||
const onDelError = (err: ErrorResponseHandler) => {
|
||||
dispatch(setErrorSnackMessage(err));
|
||||
|
||||
@@ -58,8 +58,9 @@ import {
|
||||
import withSuspense from "../Common/Components/withSuspense";
|
||||
import RBIconButton from "../Buckets/BucketDetails/SummaryItems/RBIconButton";
|
||||
import { encodeURLString } from "../../../common/utils";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const DeleteGroup = withSuspense(React.lazy(() => import("./DeleteGroup")));
|
||||
const SetPolicy = withSuspense(
|
||||
@@ -87,7 +88,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const Groups = ({ classes }: IGroupsProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const [deleteOpen, setDeleteOpen] = useState<boolean>(false);
|
||||
|
||||
@@ -10,7 +10,6 @@ import {
|
||||
tableStyles,
|
||||
} from "../Common/FormComponents/common/styleLibrary";
|
||||
|
||||
import { useDispatch } from "react-redux";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import { Grid } from "@mui/material";
|
||||
import ScreenTitle from "../Common/ScreenTitle/ScreenTitle";
|
||||
@@ -44,6 +43,7 @@ import GroupDetailsHeader from "./GroupDetailsHeader";
|
||||
import RBIconButton from "../Buckets/BucketDetails/SummaryItems/RBIconButton";
|
||||
import { decodeURLString, encodeURLString } from "../../../common/utils";
|
||||
import { setModalErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -107,7 +107,7 @@ export const formatPolicy = (policy: string = ""): string[] => {
|
||||
};
|
||||
|
||||
const GroupsDetails = ({ classes }: IGroupDetailsProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
const params = useParams();
|
||||
|
||||
|
||||
@@ -34,8 +34,9 @@ import { ErrorResponseHandler } from "../../../common/types";
|
||||
import api from "../../../common/api";
|
||||
import TableWrapper from "../Common/TableWrapper/TableWrapper";
|
||||
import SearchBox from "../Common/SearchBox";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { setModalErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface IGroupsProps {
|
||||
classes: any;
|
||||
@@ -83,7 +84,7 @@ const UsersSelectors = ({
|
||||
setSelectedUsers,
|
||||
editMode = false,
|
||||
}: IGroupsProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
//Local States
|
||||
const [records, setRecords] = useState<any[]>([]);
|
||||
const [loading, isLoading] = useState<boolean>(false);
|
||||
|
||||
@@ -19,8 +19,8 @@ import {
|
||||
IMessageEvent,
|
||||
w3cwebsocket as W3CWebSocket,
|
||||
} from "websocket";
|
||||
import { AppState } from "../../../store";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { AppState, useAppDispatch } from "../../../store";
|
||||
import { useSelector } from "react-redux";
|
||||
import {
|
||||
DiagStatError,
|
||||
DiagStatInProgress,
|
||||
@@ -96,7 +96,7 @@ interface IHealthInfo {
|
||||
}
|
||||
|
||||
const HealthInfo = ({ classes }: IHealthInfo) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const message = useSelector((state: AppState) => state.healthInfo.message);
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -45,6 +45,7 @@ import LockOutlinedIcon from "@mui/icons-material/LockOutlined";
|
||||
import RadioGroupSelector from "../Common/FormComponents/RadioGroupSelector/RadioGroupSelector";
|
||||
import Link from "@mui/material/Link";
|
||||
import { setModalErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -82,7 +83,7 @@ interface IActivationModal {
|
||||
}
|
||||
|
||||
const ActivationModal = ({ classes, open, closeModal }: IActivationModal) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [license, setLicense] = useState<string>("");
|
||||
const [subnetPassword, setSubnetPassword] = useState<string>("");
|
||||
const [subnetEmail, setSubnetEmail] = useState<string>("");
|
||||
|
||||
@@ -18,7 +18,7 @@ import { IMessageEvent, w3cwebsocket as W3CWebSocket } from "websocket";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import {
|
||||
Button,
|
||||
FormControl,
|
||||
@@ -31,7 +31,7 @@ import {
|
||||
import moment from "moment/moment";
|
||||
import { ErrorResponseHandler } from "../../../../../src/common/types";
|
||||
import api from "../../../../../src/common/api";
|
||||
import { AppState } from "../../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../../store";
|
||||
|
||||
import { LogMessage } from "../types";
|
||||
import { wsProtocol } from "../../../../utils/wsUtils";
|
||||
@@ -108,7 +108,7 @@ const SelectStyled = withStyles((theme: Theme) =>
|
||||
var c: any = null;
|
||||
|
||||
const ErrorLogs = () => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const classes = useStyles();
|
||||
|
||||
const messages = useSelector((state: AppState) => state.logs.logMessages);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useCallback, useEffect, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import get from "lodash/get";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -48,6 +48,7 @@ import { SearchIcon } from "../../../../icons";
|
||||
import MissingIntegration from "../../Common/MissingIntegration/MissingIntegration";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { selFeatures } from "../../consoleSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
interface ILogSearchProps {
|
||||
classes: any;
|
||||
@@ -120,7 +121,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const LogsSearchMain = ({ classes }: ILogSearchProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const features = useSelector(selFeatures);
|
||||
|
||||
const [loading, setLoading] = useState<boolean>(true);
|
||||
|
||||
@@ -15,14 +15,14 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import { Drawer } from "@mui/material";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import clsx from "clsx";
|
||||
import { AppState } from "../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../store";
|
||||
|
||||
import { ErrorResponseHandler } from "../../../common/types";
|
||||
import { clearSession } from "../../../common/utils";
|
||||
@@ -90,7 +90,7 @@ interface IMenuProps {
|
||||
}
|
||||
|
||||
const Menu = ({ classes }: IMenuProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const features = useSelector(selFeatures);
|
||||
|
||||
@@ -21,10 +21,10 @@ import { Box, IconButton } from "@mui/material";
|
||||
import { ChevronLeft } from "@mui/icons-material";
|
||||
import MenuIcon from "@mui/icons-material/Menu";
|
||||
import LicensedConsoleLogo from "../Common/Components/LicensedConsoleLogo";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import useApi from "../Common/Hooks/useApi";
|
||||
import { setLicenseInfo } from "../../../systemSlice";
|
||||
import { AppState } from "../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../store";
|
||||
|
||||
type MenuToggleProps = {
|
||||
isOpen: boolean;
|
||||
@@ -33,7 +33,7 @@ type MenuToggleProps = {
|
||||
const MenuToggle = ({ isOpen, onToggle }: MenuToggleProps) => {
|
||||
const stateClsName = isOpen ? "wide" : "mini";
|
||||
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const licenseInfo = useSelector(
|
||||
(state: AppState) => state?.system?.licenseInfo
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useCallback, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import get from "lodash/get";
|
||||
import Grid from "@mui/material/Grid";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
@@ -49,6 +49,7 @@ import {
|
||||
setServerNeedsRestart,
|
||||
} from "../../../systemSlice";
|
||||
import { useNavigate, useParams } from "react-router-dom";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const ConfMySql = withSuspense(
|
||||
React.lazy(() => import("./CustomForms/ConfMySql"))
|
||||
@@ -114,7 +115,7 @@ const AddNotificationEndpoint = ({
|
||||
saveAndRefresh,
|
||||
classes,
|
||||
}: IAddNotificationEndpointProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
const params = useParams();
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useCallback, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import get from "lodash/get";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
@@ -44,6 +44,7 @@ import {
|
||||
setErrorSnackMessage,
|
||||
setServerNeedsRestart,
|
||||
} from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -67,7 +68,7 @@ const EditConfiguration = ({
|
||||
classes,
|
||||
className = "",
|
||||
}: IAddNotificationEndpointProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
//Local States
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { DialogContentText, LinearProgress } from "@mui/material";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -27,6 +27,7 @@ import api from "../../../../common/api";
|
||||
import ConfirmDialog from "../../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmDeleteIcon } from "../../../../icons";
|
||||
import { setErrorSnackMessage } from "../../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../../store";
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
@@ -52,7 +53,7 @@ const ResetConfigurationModal = ({
|
||||
closeResetModalAndRefresh,
|
||||
resetOpen,
|
||||
}: IResetConfiguration) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const [resetLoading, setResetLoading] = useState<boolean>(false);
|
||||
|
||||
useEffect(() => {
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -50,6 +50,7 @@ import SearchBox from "../Common/SearchBox";
|
||||
import RBIconButton from "../Buckets/BucketDetails/SummaryItems/RBIconButton";
|
||||
import { IAM_PAGES } from "../../../common/SecureComponent/permissions";
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface IListNotificationEndpoints {
|
||||
classes: any;
|
||||
@@ -80,7 +81,7 @@ const styles = (theme: Theme) =>
|
||||
});
|
||||
|
||||
const ListNotificationEndpoints = ({ classes }: IListNotificationEndpoints) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
//Local States
|
||||
const [records, setRecords] = useState<TransformedEndpointItem[]>([]);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useState } from "react";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import CopyToClipboard from "react-copy-to-clipboard";
|
||||
import Grid from "@mui/material/Grid";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -31,7 +31,7 @@ import { IAM_SCOPES } from "../../../common/SecureComponent/permissions";
|
||||
import { BucketObjectItem } from "../Buckets/ListBuckets/Objects/ListObjects/types";
|
||||
import withSuspense from "../Common/Components/withSuspense";
|
||||
import { setSnackBarMessage } from "../../../systemSlice";
|
||||
import { AppState } from "../../../store";
|
||||
import { AppState, useAppDispatch } from "../../../store";
|
||||
import { setVersionsModeEnabled } from "./objectBrowserSlice";
|
||||
import RBIconButton from "../Buckets/BucketDetails/SummaryItems/RBIconButton";
|
||||
|
||||
@@ -66,7 +66,7 @@ const BrowserBreadcrumbs = ({
|
||||
hidePathButton,
|
||||
additionalOptions,
|
||||
}: IObjectBrowser) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const rewindEnabled = useSelector(
|
||||
|
||||
@@ -15,13 +15,6 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useState } from "react";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
import {
|
||||
formFieldStyles,
|
||||
modalStyleUtils,
|
||||
} from "../Common/FormComponents/common/styleLibrary";
|
||||
import Grid from "@mui/material/Grid";
|
||||
import { Box, Button } from "@mui/material";
|
||||
import PageHeader from "../Common/PageHeader/PageHeader";
|
||||
@@ -30,40 +23,17 @@ import InputBoxWrapper from "../Common/FormComponents/InputBoxWrapper/InputBoxWr
|
||||
import AddPolicyHelpBox from "./AddPolicyHelpBox";
|
||||
import CodeMirrorWrapper from "../Common/FormComponents/CodeMirrorWrapper/CodeMirrorWrapper";
|
||||
import BackLink from "../../../common/BackLink";
|
||||
import { useDispatch } from "react-redux";
|
||||
import { AddAccessRuleIcon } from "../../../icons";
|
||||
import { IAM_PAGES } from "../../../common/SecureComponent/permissions";
|
||||
import { ErrorResponseHandler } from "../../../../src/common/types";
|
||||
import { ErrorResponseHandler } from "../../../common/types";
|
||||
import api from "../../../../src/common/api";
|
||||
import FormLayout from "../Common/FormLayout";
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface IAddPolicyProps {
|
||||
classes: any;
|
||||
}
|
||||
|
||||
const styles = (theme: Theme) =>
|
||||
createStyles({
|
||||
bottomContainer: {
|
||||
display: "flex",
|
||||
flexGrow: 1,
|
||||
alignItems: "center",
|
||||
margin: "auto",
|
||||
justifyContent: "center",
|
||||
"& div": {
|
||||
width: 150,
|
||||
"@media (max-width: 900px)": {
|
||||
flexFlow: "column",
|
||||
},
|
||||
},
|
||||
},
|
||||
...formFieldStyles,
|
||||
...modalStyleUtils,
|
||||
});
|
||||
|
||||
const AddPolicyScreen = ({ classes }: IAddPolicyProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const AddPolicyScreen = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const [addLoading, setAddLoading] = useState<boolean>(false);
|
||||
@@ -185,4 +155,4 @@ const AddPolicyScreen = ({ classes }: IAddPolicyProps) => {
|
||||
);
|
||||
};
|
||||
|
||||
export default withStyles(styles)(AddPolicyScreen);
|
||||
export default AddPolicyScreen;
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { DialogContentText } from "@mui/material";
|
||||
import { ErrorResponseHandler } from "../../../common/types";
|
||||
import useApi from "../Common/Hooks/useApi";
|
||||
@@ -23,6 +23,7 @@ import ConfirmDialog from "../Common/ModalWrapper/ConfirmDialog";
|
||||
import { ConfirmDeleteIcon } from "../../../icons";
|
||||
import { encodeURLString } from "../../../common/utils";
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface IDeletePolicyProps {
|
||||
closeDeleteModalAndRefresh: (refresh: boolean) => void;
|
||||
@@ -35,7 +36,7 @@ const DeletePolicy = ({
|
||||
deleteOpen,
|
||||
selectedPolicy,
|
||||
}: IDeletePolicyProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const onDelSuccess = () => closeDeleteModalAndRefresh(true);
|
||||
const onDelError = (err: ErrorResponseHandler) =>
|
||||
dispatch(setErrorSnackMessage(err));
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { useNavigate } from "react-router-dom";
|
||||
import get from "lodash/get";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
@@ -52,6 +52,7 @@ import withSuspense from "../Common/Components/withSuspense";
|
||||
import RBIconButton from "../Buckets/BucketDetails/SummaryItems/RBIconButton";
|
||||
import { encodeURLString } from "../../../common/utils";
|
||||
import { setErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const DeletePolicy = withSuspense(React.lazy(() => import("./DeletePolicy")));
|
||||
|
||||
@@ -71,7 +72,7 @@ interface IPoliciesProps {
|
||||
}
|
||||
|
||||
const ListPolicies = ({ classes }: IPoliciesProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const [records, setRecords] = useState<Policy[]>([]);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
import React, { Fragment, useEffect, useState } from "react";
|
||||
import { IAMPolicy, IAMStatement, Policy } from "./types";
|
||||
import { useDispatch, useSelector } from "react-redux";
|
||||
import { useSelector } from "react-redux";
|
||||
import { useNavigate, useParams } from "react-router-dom";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -61,6 +61,7 @@ import PolicyView from "./PolicyView";
|
||||
import { decodeURLString, encodeURLString } from "../../../common/utils";
|
||||
import { setErrorSnackMessage, setSnackBarMessage } from "../../../systemSlice";
|
||||
import { selFeatures } from "../consoleSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
const DeletePolicy = withSuspense(React.lazy(() => import("./DeletePolicy")));
|
||||
|
||||
@@ -98,7 +99,7 @@ interface IPolicyDetailsProps {
|
||||
}
|
||||
|
||||
const PolicyDetails = ({ classes }: IPolicyDetailsProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
const navigate = useNavigate();
|
||||
const params = useParams();
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useCallback, useEffect, useState } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
import withStyles from "@mui/styles/withStyles";
|
||||
@@ -35,6 +35,7 @@ import api from "../../../common/api";
|
||||
import TableWrapper from "../Common/TableWrapper/TableWrapper";
|
||||
import SearchBox from "../Common/SearchBox";
|
||||
import { setModalErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface ISelectPolicyProps {
|
||||
classes: any;
|
||||
@@ -78,7 +79,7 @@ const PolicySelectors = ({
|
||||
selectedPolicy = [],
|
||||
setSelectedPolicy,
|
||||
}: ISelectPolicyProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
// Local State
|
||||
const [records, setRecords] = useState<any[]>([]);
|
||||
const [loading, isLoading] = useState<boolean>(false);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import React, { useEffect, useState, Fragment } from "react";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
import get from "lodash/get";
|
||||
import { Theme } from "@mui/material/styles";
|
||||
import createStyles from "@mui/styles/createStyles";
|
||||
@@ -36,6 +36,7 @@ import PolicySelectors from "./PolicySelectors";
|
||||
import PredefinedList from "../Common/FormComponents/PredefinedList/PredefinedList";
|
||||
import { encodeURLString } from "../../../common/utils";
|
||||
import { setModalErrorSnackMessage } from "../../../systemSlice";
|
||||
import { useAppDispatch } from "../../../store";
|
||||
|
||||
interface ISetPolicyProps {
|
||||
classes: any;
|
||||
@@ -66,7 +67,7 @@ const SetPolicy = ({
|
||||
selectedGroups,
|
||||
open,
|
||||
}: ISetPolicyProps) => {
|
||||
const dispatch = useDispatch();
|
||||
const dispatch = useAppDispatch();
|
||||
//Local States
|
||||
const [loading, setLoading] = useState<boolean>(false);
|
||||
const [actualPolicy, setActualPolicy] = useState<string[]>([]);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user