Improves chart save and go button (#12125)

Resolves #11748
This commit is contained in:
Michael S. Molina
2020-12-18 18:17:31 -03:00
committed by GitHub
parent f4ce831a10
commit a6ac2c1245
3 changed files with 26 additions and 12 deletions

View File

@@ -47,6 +47,7 @@ import {
const propTypes = {
actions: PropTypes.object.isRequired,
datasource_type: PropTypes.string.isRequired,
dashboardId: PropTypes.number,
isDatasourceMetaLoading: PropTypes.bool.isRequired,
chart: chartPropShape.isRequired,
slice: PropTypes.object,
@@ -413,6 +414,7 @@ class ExploreViewContainer extends React.Component {
actions={this.props.actions}
form_data={this.props.form_data}
sliceName={this.props.sliceName}
dashboardId={this.props.dashboardId}
/>
)}
<div
@@ -508,6 +510,7 @@ function mapStateToProps(state) {
datasource: explore.datasource,
datasource_type: explore.datasource.type,
datasourceId: explore.datasource_id,
dashboardId: explore.form_data ? explore.form_data.dashboardId : undefined,
controls: explore.controls,
can_overwrite: !!explore.can_overwrite,
can_add: !!explore.can_add,

View File

@@ -38,6 +38,7 @@ const propTypes = {
alert: PropTypes.string,
slice: PropTypes.object,
datasource: PropTypes.object,
dashboardId: PropTypes.number,
};
// Session storage key for recent dashboard
@@ -64,6 +65,11 @@ class SaveModal extends React.Component {
);
let recentDashboard = sessionStorage.getItem(SK_DASHBOARD_ID);
recentDashboard = recentDashboard && parseInt(recentDashboard, 10);
if (!recentDashboard && this.props.dashboardId) {
recentDashboard = this.props.dashboardId;
}
if (
recentDashboard !== null &&
dashboardIds.indexOf(recentDashboard) !== -1
@@ -146,7 +152,8 @@ class SaveModal extends React.Component {
id="btn_modal_save_goto_dash"
buttonSize="sm"
disabled={
!this.state.newSliceName || !this.state.newDashboardName
!this.state.newSliceName ||
(!this.state.saveToDashboardId && !this.state.newDashboardName)
}
onClick={this.saveOrOverwrite.bind(this, true)}
>