Web: Restore: Refactoring.
This commit is contained in:
parent
de9f0136b8
commit
a22fb71edc
@ -20,8 +20,11 @@ import ThirdPartyResources from "./sub-components/ThirdPartyResourcesModule";
|
||||
import ThirdPartyStorages from "./sub-components/ThirdPartyStoragesModule";
|
||||
import LocalFile from "./sub-components/LocalFileModule";
|
||||
import config from "../../../../../../../../package.json";
|
||||
import { getThirdPartyCommonFolderTree } from "@appserver/common/api/files";
|
||||
import { getBackupStorage } from "@appserver/common/api/settings";
|
||||
|
||||
import {
|
||||
getBackupStorage,
|
||||
getStorageRegions,
|
||||
} from "@appserver/common/api/settings";
|
||||
import { enableRestore } from "@appserver/common/api/portal";
|
||||
import RestoreBackupLoader from "@appserver/common/components/Loaders/RestoreBackupLoader";
|
||||
|
||||
@ -67,25 +70,27 @@ class RestoreBackup extends React.Component {
|
||||
const {
|
||||
getProgress,
|
||||
t,
|
||||
setCommonThirdPartyList,
|
||||
setThirdPartyStorage,
|
||||
setStorageRegions,
|
||||
} = this.props;
|
||||
|
||||
try {
|
||||
getProgress(t);
|
||||
const [
|
||||
commonThirdPartyList,
|
||||
//commonThirdPartyList,
|
||||
backupStorage,
|
||||
isEnableRestore,
|
||||
storageRegions,
|
||||
] = await Promise.all([
|
||||
getThirdPartyCommonFolderTree(),
|
||||
// getThirdPartyCommonFolderTree(),
|
||||
getBackupStorage(),
|
||||
enableRestore(),
|
||||
getStorageRegions(),
|
||||
]);
|
||||
|
||||
setThirdPartyStorage(backupStorage);
|
||||
|
||||
commonThirdPartyList && setCommonThirdPartyList(commonThirdPartyList);
|
||||
setStorageRegions(storageRegions);
|
||||
// commonThirdPartyList && setCommonThirdPartyList(commonThirdPartyList);
|
||||
|
||||
this.setState({
|
||||
isInitialLoading: false,
|
||||
@ -310,7 +315,7 @@ class RestoreBackup extends React.Component {
|
||||
t,
|
||||
history,
|
||||
downloadingProgress,
|
||||
commonThirdPartyList,
|
||||
|
||||
buttonSize,
|
||||
theme,
|
||||
} = this.props;
|
||||
@ -341,7 +346,7 @@ class RestoreBackup extends React.Component {
|
||||
? { onClick: this.onClickBackupList }
|
||||
: {};
|
||||
|
||||
const isDisabledThirdParty = commonThirdPartyList?.length === 0;
|
||||
// const isDisabledThirdParty = commonThirdPartyList?.length === 0;
|
||||
|
||||
const isMaxProgress = downloadingProgress === 100;
|
||||
|
||||
@ -368,7 +373,7 @@ class RestoreBackup extends React.Component {
|
||||
name={"isCheckedThirdParty"}
|
||||
key={2}
|
||||
isChecked={isCheckedThirdParty}
|
||||
isDisabled={isDisabledThirdParty || !isEnableRestore}
|
||||
isDisabled={!isEnableRestore}
|
||||
{...commonRadioButtonProps}
|
||||
/>
|
||||
|
||||
@ -499,8 +504,7 @@ export default inject(({ auth, backup }) => {
|
||||
downloadingProgress,
|
||||
getProgress,
|
||||
clearProgressInterval,
|
||||
commonThirdPartyList,
|
||||
setCommonThirdPartyList,
|
||||
setStorageRegions,
|
||||
setThirdPartyStorage,
|
||||
isFormReady,
|
||||
getStorageParams,
|
||||
@ -509,16 +513,17 @@ export default inject(({ auth, backup }) => {
|
||||
const buttonSize = isTabletView ? "normal" : "small";
|
||||
|
||||
return {
|
||||
setStorageRegions,
|
||||
setThirdPartyStorage,
|
||||
buttonSize,
|
||||
|
||||
theme,
|
||||
clearProgressInterval,
|
||||
commonThirdPartyList,
|
||||
downloadingProgress,
|
||||
socketHelper,
|
||||
setCommonThirdPartyList,
|
||||
getProgress,
|
||||
isFormReady,
|
||||
|
||||
getProgress,
|
||||
getStorageParams,
|
||||
buttonSize,
|
||||
};
|
||||
})(withTranslation(["Settings", "Common"])(observer(RestoreBackup)));
|
||||
|
@ -11,11 +11,11 @@ class ThirdPartyStoragesModule extends React.PureComponent {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
availableOptions: [],
|
||||
availableStorage: "",
|
||||
comboBoxOptions: [],
|
||||
storagesInfo: {},
|
||||
|
||||
selectedStorage: "",
|
||||
selectedId: "",
|
||||
selectedStorageTitle: "",
|
||||
selectedStorageId: "",
|
||||
};
|
||||
}
|
||||
componentDidMount() {
|
||||
@ -25,48 +25,47 @@ class ThirdPartyStoragesModule extends React.PureComponent {
|
||||
const parameters = getOptions(thirdPartyStorage);
|
||||
|
||||
const {
|
||||
options,
|
||||
availableStorage,
|
||||
selectedStorage,
|
||||
selectedId,
|
||||
comboBoxOptions,
|
||||
storagesInfo,
|
||||
selectedStorageTitle,
|
||||
selectedStorageId,
|
||||
} = parameters;
|
||||
|
||||
onSetStorageId && onSetStorageId(selectedId);
|
||||
onSetStorageId && onSetStorageId(selectedStorageId);
|
||||
|
||||
this.setState({
|
||||
availableOptions: options,
|
||||
availableStorage,
|
||||
comboBoxOptions,
|
||||
storagesInfo,
|
||||
|
||||
selectedStorage,
|
||||
selectedId,
|
||||
selectedStorageTitle,
|
||||
selectedStorageId,
|
||||
});
|
||||
}
|
||||
}
|
||||
onSelect = (option) => {
|
||||
const selectedStorageId = option.key;
|
||||
const { availableStorage } = this.state;
|
||||
const { storagesInfo } = this.state;
|
||||
const { onSetStorageId } = this.props;
|
||||
const storage = availableStorage[selectedStorageId];
|
||||
const storage = storagesInfo[selectedStorageId];
|
||||
|
||||
onSetStorageId && onSetStorageId(storage.id);
|
||||
|
||||
this.setState({
|
||||
selectedStorage: storage.title,
|
||||
selectedId: storage.id,
|
||||
selectedStorageTitle: storage.title,
|
||||
selectedStorageId: storage.id,
|
||||
});
|
||||
};
|
||||
render() {
|
||||
const {
|
||||
availableOptions,
|
||||
selectedStorage,
|
||||
selectedId,
|
||||
availableStorage,
|
||||
comboBoxOptions,
|
||||
selectedStorageTitle,
|
||||
selectedStorageId,
|
||||
storagesInfo,
|
||||
} = this.state;
|
||||
const { thirdPartyStorage } = this.props;
|
||||
|
||||
const commonProps = {
|
||||
availableStorage,
|
||||
selectedId,
|
||||
selectedStorage: storagesInfo[selectedStorageId],
|
||||
};
|
||||
|
||||
const { GoogleId, RackspaceId, SelectelId, AmazonId } = ThirdPartyStorages;
|
||||
@ -74,8 +73,8 @@ class ThirdPartyStoragesModule extends React.PureComponent {
|
||||
return (
|
||||
<>
|
||||
<ComboBox
|
||||
options={availableOptions}
|
||||
selectedOption={{ key: 0, label: selectedStorage }}
|
||||
options={comboBoxOptions}
|
||||
selectedOption={{ key: 0, label: selectedStorageTitle }}
|
||||
onSelect={this.onSelect}
|
||||
isDisabled={!!!thirdPartyStorage}
|
||||
noBorder={false}
|
||||
@ -85,16 +84,16 @@ class ThirdPartyStoragesModule extends React.PureComponent {
|
||||
className="backup_combo"
|
||||
/>
|
||||
|
||||
{selectedId === GoogleId && (
|
||||
{selectedStorageId === GoogleId && (
|
||||
<GoogleCloudStorage {...commonProps} {...this.props} />
|
||||
)}
|
||||
{selectedId === RackspaceId && (
|
||||
{selectedStorageId === RackspaceId && (
|
||||
<RackspaceStorage {...commonProps} {...this.props} />
|
||||
)}
|
||||
{selectedId === SelectelId && (
|
||||
{selectedStorageId === SelectelId && (
|
||||
<SelectelStorage {...commonProps} {...this.props} />
|
||||
)}
|
||||
{selectedId === AmazonId && (
|
||||
{selectedStorageId === AmazonId && (
|
||||
<AmazonStorage {...commonProps} {...this.props} />
|
||||
)}
|
||||
</>
|
||||
|
@ -15,12 +15,12 @@ class AmazonStorage extends React.PureComponent {
|
||||
}
|
||||
|
||||
render() {
|
||||
const { t, availableStorage, selectedId } = this.props;
|
||||
const { t, selectedStorage } = this.props;
|
||||
|
||||
return (
|
||||
<>
|
||||
<AmazonSettings
|
||||
selectedStorage={availableStorage[selectedId]}
|
||||
selectedStorage={selectedStorage}
|
||||
t={t}
|
||||
isNeedFilePath
|
||||
/>
|
||||
|
@ -15,13 +15,13 @@ class GoogleCloudStorage extends React.Component {
|
||||
}
|
||||
|
||||
render() {
|
||||
const { t, availableStorage, selectedId } = this.props;
|
||||
const { t, selectedStorage } = this.props;
|
||||
|
||||
return (
|
||||
<>
|
||||
<GoogleCloudSettings
|
||||
t={t}
|
||||
selectedStorage={availableStorage[selectedId]}
|
||||
selectedStorage={selectedStorage}
|
||||
isNeedFilePath
|
||||
/>
|
||||
</>
|
||||
|
@ -15,13 +15,13 @@ class RackspaceStorage extends React.Component {
|
||||
}
|
||||
|
||||
render() {
|
||||
const { t, availableStorage, selectedId } = this.props;
|
||||
const { t, selectedStorage } = this.props;
|
||||
|
||||
return (
|
||||
<>
|
||||
<RackspaceSettings
|
||||
t={t}
|
||||
selectedStorage={availableStorage[selectedId]}
|
||||
selectedStorage={selectedStorage}
|
||||
isNeedFilePath
|
||||
/>
|
||||
</>
|
||||
|
@ -15,14 +15,14 @@ class RackspaceStorage extends React.Component {
|
||||
}
|
||||
|
||||
render() {
|
||||
const { t, availableStorage, selectedId } = this.props;
|
||||
const { t, selectedStorage } = this.props;
|
||||
|
||||
return (
|
||||
<>
|
||||
<SelectelSettings
|
||||
t={t}
|
||||
isNeedFilePath
|
||||
selectedStorage={availableStorage[selectedId]}
|
||||
selectedStorage={selectedStorage}
|
||||
/>
|
||||
</>
|
||||
);
|
||||
|
Loading…
Reference in New Issue
Block a user