Skip to content

Commit

Permalink
[#8620] Platform: minor changes.
Browse files Browse the repository at this point in the history
  • Loading branch information
nishantSharma459 committed May 26, 2021
1 parent aa058a2 commit 4ab0e06
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,6 @@ import YBInfoTip from '../../common/descriptors/YBInfoTip';
const required = (value) => value ? undefined : 'This field is required.';

class AwsStorageConfiguration extends Component {
state = {
iamRoleEnabled: false
};

iamInstanceToggle = (event) => {
this.setState({ iamRoleEnabled: event.target.checked });
};

disabledInputFields = (config, isEdited, iamRoleEnabled = false) => {
if (
((!isEmptyObject(config) && isEdited) || (isEmptyObject(config) && !isEdited)) &&
Expand Down Expand Up @@ -49,9 +41,10 @@ class AwsStorageConfiguration extends Component {
deleteStorageConfig,
showDeleteStorageConfig,
enableEdit,
onEditConfig
onEditConfig,
iamRoleEnabled,
iamInstanceToggle
} = this.props;
const { iamRoleEnabled } = this.state;
const s3Config = customerConfigs.data.find((config) => config.name === 'S3');
const config = s3Config ? s3Config.data : {};

Expand All @@ -66,7 +59,7 @@ class AwsStorageConfiguration extends Component {
<Field
name="IAM_INSTANCE_PROFILE"
component={YBToggle}
onToggle={this.iamInstanceToggle}
onToggle={iamInstanceToggle}
isReadOnly={this.disabledInputFields(s3Config, enableEdit)}
subLabel="Whether to use instance's IAM role for S3 backup."
/>
Expand Down
24 changes: 20 additions & 4 deletions managed/ui/src/components/config/Storage/StorageConfiguration.js
Original file line number Diff line number Diff line change
Expand Up @@ -92,12 +92,18 @@ class StorageConfiguration extends Component {
super(props);

this.state = {
enableEdit: false
enableEdit: false,
iamRoleEnabled: false
};
}

iamInstanceToggle = (event) => {
this.setState({ iamRoleEnabled: event.target.checked });
};


getConfigByType = (name, customerConfigs) => {
return customerConfigs.data.find((config) => config.name.toLowerCase() === name);
return customerConfigs?.data?.find((config) => config.name.toLowerCase() === name);
};

wrapFields = (configFields, configName, configControls) => {
Expand Down Expand Up @@ -205,6 +211,11 @@ class StorageConfiguration extends Component {
};

deleteStorageConfig = (configUUID) => {
this.setState({
enableEdit: false,
iamRoleEnabled: !this.state.iamRoleEnabled
});

this.props.deleteCustomerConfig(configUUID).then(() => {
this.props.reset(); // reset form to initial values
this.props.fetchCustomerConfigs();
Expand Down Expand Up @@ -232,7 +243,10 @@ class StorageConfiguration extends Component {
*/
disableEditFields = () => {
this.props.reset();
this.setState({ enableEdit: false });
this.setState({
enableEdit: false,
iamRoleEnabled: !this.state.iamRoleEnabled
});
};

/**
Expand Down Expand Up @@ -325,7 +339,7 @@ class StorageConfiguration extends Component {
customerConfigs,
initialValues
} = this.props;
const { enableEdit } = this.state;
const { enableEdit, iamRoleEnabled } = this.state;
const activeTab = this.props.activeTab || Object.keys(storageConfigTypes)[0].toLowerCase();
const config = this.getConfigByType(activeTab, customerConfigs);

Expand All @@ -348,6 +362,8 @@ class StorageConfiguration extends Component {
<AwsStorageConfiguration
{...this.props}
deleteStorageConfig={this.deleteStorageConfig}
iamRoleEnabled={iamRoleEnabled}
iamInstanceToggle={this.iamInstanceToggle}
enableEdit={enableEdit}
onEditConfig={this.onEditConfig}
/>
Expand Down

0 comments on commit 4ab0e06

Please sign in to comment.