Web: Files: AutoBackup: Optimization modules.
This commit is contained in:
parent
853d2280b6
commit
879a027055
@ -3,9 +3,9 @@ import TextInput from "@appserver/components/text-input";
|
|||||||
|
|
||||||
const bucketInput = "bucket";
|
const bucketInput = "bucket";
|
||||||
const regionInput = "region";
|
const regionInput = "region";
|
||||||
const urlInput = "serviceUrl";
|
const urlInput = "serviceurl";
|
||||||
const forcePathStyleInput = "forcePathStyle";
|
const forcePathStyleInput = "forcepathstyle";
|
||||||
const httpInput = "useHttp";
|
const httpInput = "usehttp";
|
||||||
const sseInput = "sse";
|
const sseInput = "sse";
|
||||||
class AmazonSettings extends React.Component {
|
class AmazonSettings extends React.Component {
|
||||||
static formNames = () => {
|
static formNames = () => {
|
||||||
@ -80,7 +80,7 @@ class AmazonSettings extends React.Component {
|
|||||||
name={urlInput}
|
name={urlInput}
|
||||||
className="backup_text-input"
|
className="backup_text-input"
|
||||||
scale
|
scale
|
||||||
value={formSettings.serviceUrl}
|
value={formSettings.serviceurl}
|
||||||
onChange={onChange}
|
onChange={onChange}
|
||||||
isDisabled={isLoadingData || isLoading || this.isDisabled}
|
isDisabled={isLoadingData || isLoading || this.isDisabled}
|
||||||
placeholder={this.serviceUrlPlaceholder || ""}
|
placeholder={this.serviceUrlPlaceholder || ""}
|
||||||
@ -90,7 +90,7 @@ class AmazonSettings extends React.Component {
|
|||||||
name={forcePathStyleInput}
|
name={forcePathStyleInput}
|
||||||
className="backup_text-input"
|
className="backup_text-input"
|
||||||
scale
|
scale
|
||||||
value={formSettings.forcePathStyle}
|
value={formSettings.forcepathstyle}
|
||||||
onChange={onChange}
|
onChange={onChange}
|
||||||
isDisabled={isLoadingData || isLoading || this.isDisabled}
|
isDisabled={isLoadingData || isLoading || this.isDisabled}
|
||||||
placeholder={this.forcePathStylePlaceholder || ""}
|
placeholder={this.forcePathStylePlaceholder || ""}
|
||||||
@ -100,7 +100,7 @@ class AmazonSettings extends React.Component {
|
|||||||
name={httpInput}
|
name={httpInput}
|
||||||
className="backup_text-input"
|
className="backup_text-input"
|
||||||
scale
|
scale
|
||||||
value={formSettings.useHttp}
|
value={formSettings.usehttp}
|
||||||
onChange={onChange}
|
onChange={onChange}
|
||||||
isDisabled={isLoadingData || isLoading || this.isDisabled}
|
isDisabled={isLoadingData || isLoading || this.isDisabled}
|
||||||
placeholder={this.useHttpPlaceholder || ""}
|
placeholder={this.useHttpPlaceholder || ""}
|
||||||
|
@ -3,7 +3,7 @@ import { withTranslation } from "react-i18next";
|
|||||||
import SelectFolderInput from "files/SelectFolderInput";
|
import SelectFolderInput from "files/SelectFolderInput";
|
||||||
import ScheduleComponent from "./ScheduleComponent";
|
import ScheduleComponent from "./ScheduleComponent";
|
||||||
|
|
||||||
class DocumentsModule extends React.Component {
|
class DocumentsModule extends React.PureComponent {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
super(props);
|
super(props);
|
||||||
|
|
||||||
@ -30,7 +30,6 @@ class DocumentsModule extends React.Component {
|
|||||||
onSelectFolder,
|
onSelectFolder,
|
||||||
isError,
|
isError,
|
||||||
isLoadingData,
|
isLoadingData,
|
||||||
onSetLoadingData,
|
|
||||||
isReset,
|
isReset,
|
||||||
isThirdPartyDefault,
|
isThirdPartyDefault,
|
||||||
defaultSelectedFolder,
|
defaultSelectedFolder,
|
||||||
@ -47,7 +46,6 @@ class DocumentsModule extends React.Component {
|
|||||||
onClickInput={this.onClickInput}
|
onClickInput={this.onClickInput}
|
||||||
isPanelVisible={isPanelVisible}
|
isPanelVisible={isPanelVisible}
|
||||||
isError={isError}
|
isError={isError}
|
||||||
onSetLoadingData={onSetLoadingData}
|
|
||||||
foldersType="common"
|
foldersType="common"
|
||||||
withoutProvider
|
withoutProvider
|
||||||
isSavingProcess={isLoadingData}
|
isSavingProcess={isLoadingData}
|
||||||
|
@ -3,7 +3,7 @@ import { withTranslation } from "react-i18next";
|
|||||||
import SelectFolderInput from "files/SelectFolderInput";
|
import SelectFolderInput from "files/SelectFolderInput";
|
||||||
import ScheduleComponent from "./ScheduleComponent";
|
import ScheduleComponent from "./ScheduleComponent";
|
||||||
|
|
||||||
class ThirdPartyModule extends React.Component {
|
class ThirdPartyModule extends React.PureComponent {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
super(props);
|
super(props);
|
||||||
|
|
||||||
@ -30,7 +30,6 @@ class ThirdPartyModule extends React.Component {
|
|||||||
onSelectFolder,
|
onSelectFolder,
|
||||||
isError,
|
isError,
|
||||||
isLoadingData,
|
isLoadingData,
|
||||||
onSetLoadingData,
|
|
||||||
isReset,
|
isReset,
|
||||||
isThirdPartyDefault,
|
isThirdPartyDefault,
|
||||||
defaultSelectedFolder,
|
defaultSelectedFolder,
|
||||||
@ -47,7 +46,6 @@ class ThirdPartyModule extends React.Component {
|
|||||||
onClickInput={this.onClickInput}
|
onClickInput={this.onClickInput}
|
||||||
isPanelVisible={isPanelVisible}
|
isPanelVisible={isPanelVisible}
|
||||||
isError={isError}
|
isError={isError}
|
||||||
onSetLoadingData={onSetLoadingData}
|
|
||||||
foldersType="third-party"
|
foldersType="third-party"
|
||||||
isSavingProcess={isLoadingData}
|
isSavingProcess={isLoadingData}
|
||||||
id={passedId}
|
id={passedId}
|
||||||
|
@ -14,6 +14,7 @@ let googleStorageId = ThirdPartyStorages.GoogleId;
|
|||||||
class ThirdPartyStorageModule extends React.PureComponent {
|
class ThirdPartyStorageModule extends React.PureComponent {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
super(props);
|
super(props);
|
||||||
|
const { storageInfo } = this.props;
|
||||||
|
|
||||||
this.state = {
|
this.state = {
|
||||||
availableOptions: [],
|
availableOptions: [],
|
||||||
@ -21,15 +22,18 @@ class ThirdPartyStorageModule extends React.PureComponent {
|
|||||||
selectedStorage: "",
|
selectedStorage: "",
|
||||||
defaultSelectedStorage: "",
|
defaultSelectedStorage: "",
|
||||||
selectedId: "",
|
selectedId: "",
|
||||||
isLoading: false,
|
|
||||||
};
|
};
|
||||||
}
|
|
||||||
componentDidMount() {
|
|
||||||
const { storageInfo } = this.props;
|
|
||||||
|
|
||||||
storageInfo && this.getOptions(storageInfo);
|
storageInfo && this.getOptions(storageInfo);
|
||||||
|
this._isMount = false;
|
||||||
|
}
|
||||||
|
componentDidMount() {
|
||||||
|
this._isMount = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
componentWillUnmount() {
|
||||||
|
this._isMount = false;
|
||||||
|
}
|
||||||
componentDidUpdate(prevProps) {
|
componentDidUpdate(prevProps) {
|
||||||
const { isSuccessSave, isReset, storageInfo } = this.props;
|
const { isSuccessSave, isReset, storageInfo } = this.props;
|
||||||
const {
|
const {
|
||||||
@ -61,67 +65,86 @@ class ThirdPartyStorageModule extends React.PureComponent {
|
|||||||
let options = [];
|
let options = [];
|
||||||
let availableStorage = {};
|
let availableStorage = {};
|
||||||
|
|
||||||
|
let newState = {};
|
||||||
|
|
||||||
for (let item = 0; item < storageBackup.length; item++) {
|
for (let item = 0; item < storageBackup.length; item++) {
|
||||||
let obj = {
|
const backupElem = storageBackup[item];
|
||||||
[storageBackup[item].id]: {
|
|
||||||
isSet: storageBackup[item].isSet,
|
const { isSet, properties, title, id, current } = backupElem;
|
||||||
properties: storageBackup[item].properties,
|
|
||||||
title: storageBackup[item].title,
|
let tempObj = {
|
||||||
id: storageBackup[item].id,
|
[id]: {
|
||||||
|
isSet: isSet,
|
||||||
|
properties: properties,
|
||||||
|
title: title,
|
||||||
|
id: id,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
let titleObj = {
|
let titleObj = {
|
||||||
key: storageBackup[item].id,
|
key: id,
|
||||||
label: storageBackup[item].title,
|
label: title,
|
||||||
disabled: false,
|
disabled: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
options.push(titleObj);
|
options.push(titleObj);
|
||||||
|
availableStorage = { ...availableStorage, ...tempObj };
|
||||||
|
|
||||||
availableStorage = { ...availableStorage, ...obj };
|
if (current) {
|
||||||
|
|
||||||
if (storageBackup[item].current) {
|
|
||||||
isSetDefaultIdStorage = true;
|
isSetDefaultIdStorage = true;
|
||||||
onSetStorageId(storageBackup[item].id);
|
onSetStorageId(id);
|
||||||
this.setState({
|
|
||||||
selectedStorage: storageBackup[item].title,
|
newState = {
|
||||||
defaultSelectedStorage: storageBackup[item].title,
|
selectedStorage: title,
|
||||||
selectedId: storageBackup[item].id,
|
defaultSelectedStorage: title,
|
||||||
defaultSelectedId: storageBackup[item].id,
|
selectedId: id,
|
||||||
});
|
defaultSelectedId: id,
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isFirstSet && storageBackup[item].isSet) {
|
if (!isFirstSet && isSet) {
|
||||||
isFirstSet = true;
|
isFirstSet = true;
|
||||||
firstSetId = storageBackup[item].id;
|
firstSetId = id;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isSetDefaultIdStorage && !isFirstSet) {
|
if (!isSetDefaultIdStorage && !isFirstSet) {
|
||||||
onSetStorageId(availableStorage[googleStorageId].id);
|
const currentStorage = availableStorage[googleStorageId];
|
||||||
this.setState({
|
const { id, title } = currentStorage;
|
||||||
selectedStorage: availableStorage[googleStorageId].title,
|
|
||||||
defaultSelectedStorage: availableStorage[googleStorageId].title,
|
onSetStorageId(id);
|
||||||
selectedId: availableStorage[googleStorageId].id,
|
|
||||||
defaultSelectedId: availableStorage[googleStorageId].id,
|
newState = {
|
||||||
});
|
selectedStorage: title,
|
||||||
|
defaultSelectedStorage: title,
|
||||||
|
selectedId: id,
|
||||||
|
defaultSelectedId: id,
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isSetDefaultIdStorage && isFirstSet) {
|
if (!isSetDefaultIdStorage && isFirstSet) {
|
||||||
onSetStorageId(availableStorage[firstSetId].id);
|
const currentStorage = availableStorage[firstSetId];
|
||||||
|
const { id, title } = currentStorage;
|
||||||
|
|
||||||
this.setState({
|
onSetStorageId(id);
|
||||||
selectedStorage: availableStorage[firstSetId].title,
|
|
||||||
defaultSelectedStorage: availableStorage[firstSetId].title,
|
newState = {
|
||||||
selectedId: availableStorage[firstSetId].id,
|
selectedStorage: title,
|
||||||
defaultSelectedId: availableStorage[firstSetId].id,
|
defaultSelectedStorage: title,
|
||||||
});
|
selectedId: id,
|
||||||
|
defaultSelectedId: id,
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
this.setState({
|
newState = {
|
||||||
|
...newState,
|
||||||
availableOptions: options,
|
availableOptions: options,
|
||||||
availableStorage: availableStorage,
|
availableStorage: availableStorage,
|
||||||
isLoading: false,
|
};
|
||||||
});
|
|
||||||
|
this._isMount
|
||||||
|
? this.setState({ ...newState })
|
||||||
|
: (this.state = { ...newState });
|
||||||
};
|
};
|
||||||
|
|
||||||
checkChanges = () => {
|
checkChanges = () => {
|
||||||
@ -160,7 +183,6 @@ class ThirdPartyStorageModule extends React.PureComponent {
|
|||||||
availableOptions,
|
availableOptions,
|
||||||
availableStorage,
|
availableStorage,
|
||||||
selectedStorage,
|
selectedStorage,
|
||||||
isLoading,
|
|
||||||
selectedId,
|
selectedId,
|
||||||
} = this.state;
|
} = this.state;
|
||||||
|
|
||||||
@ -180,7 +202,7 @@ class ThirdPartyStorageModule extends React.PureComponent {
|
|||||||
options={availableOptions}
|
options={availableOptions}
|
||||||
selectedOption={{ key: 0, label: selectedStorage }}
|
selectedOption={{ key: 0, label: selectedStorage }}
|
||||||
onSelect={this.onSelect}
|
onSelect={this.onSelect}
|
||||||
isDisabled={isLoadingData || isLoading}
|
isDisabled={isLoadingData}
|
||||||
noBorder={false}
|
noBorder={false}
|
||||||
scaled
|
scaled
|
||||||
scaledOptions
|
scaledOptions
|
||||||
@ -188,19 +210,19 @@ class ThirdPartyStorageModule extends React.PureComponent {
|
|||||||
className="backup_combo"
|
className="backup_combo"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
{selectedId === GoogleId && !isLoading && (
|
{selectedId === GoogleId && (
|
||||||
<GoogleCloudStorage {...rest} {...commonProps} />
|
<GoogleCloudStorage {...rest} {...commonProps} />
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{selectedId === RackspaceId && !isLoading && (
|
{selectedId === RackspaceId && (
|
||||||
<RackspaceStorage {...rest} {...commonProps} />
|
<RackspaceStorage {...rest} {...commonProps} />
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{selectedId === SelectelId && !isLoading && (
|
{selectedId === SelectelId && (
|
||||||
<SelectelStorage {...rest} {...commonProps} />
|
<SelectelStorage {...rest} {...commonProps} />
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{selectedId === AmazonId && !isLoading && (
|
{selectedId === AmazonId && (
|
||||||
<AmazonStorage {...rest} {...commonProps} />
|
<AmazonStorage {...rest} {...commonProps} />
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user