mirror of
https://github.com/apache/superset.git
synced 2026-04-20 00:24:38 +00:00
fix(sqllab): per-tab hide left bar (#13288)
* fix (sqllab): per-tab hide left bar * Load state when switching tabs
This commit is contained in:
@@ -60,6 +60,7 @@ export const QUERY_EDITOR_SET_SELECTED_TEXT = 'QUERY_EDITOR_SET_SELECTED_TEXT';
|
||||
export const QUERY_EDITOR_SET_FUNCTION_NAMES =
|
||||
'QUERY_EDITOR_SET_FUNCTION_NAMES';
|
||||
export const QUERY_EDITOR_PERSIST_HEIGHT = 'QUERY_EDITOR_PERSIST_HEIGHT';
|
||||
export const QUERY_EDITOR_TOGGLE_LEFT_BAR = 'QUERY_EDITOR_TOGGLE_LEFT_BAR';
|
||||
export const MIGRATE_QUERY_EDITOR = 'MIGRATE_QUERY_EDITOR';
|
||||
export const MIGRATE_TAB_HISTORY = 'MIGRATE_TAB_HISTORY';
|
||||
export const MIGRATE_TABLE = 'MIGRATE_TABLE';
|
||||
@@ -637,6 +638,7 @@ export function switchQueryEditor(queryEditor, displayLimit) {
|
||||
errors: [],
|
||||
completed: false,
|
||||
},
|
||||
hideLeftBar: json.hide_left_bar,
|
||||
};
|
||||
dispatch(loadQueryEditor(loadedQueryEditor));
|
||||
dispatch(setTables(json.table_schemas || []));
|
||||
@@ -663,6 +665,36 @@ export function setActiveSouthPaneTab(tabId) {
|
||||
return { type: SET_ACTIVE_SOUTHPANE_TAB, tabId };
|
||||
}
|
||||
|
||||
export function toggleLeftBar(queryEditor) {
|
||||
const hideLeftBar = !queryEditor.hideLeftBar;
|
||||
return function (dispatch) {
|
||||
const sync = isFeatureEnabled(FeatureFlag.SQLLAB_BACKEND_PERSISTENCE)
|
||||
? SupersetClient.put({
|
||||
endpoint: encodeURI(`/tabstateview/${queryEditor.id}`),
|
||||
postPayload: { hide_left_bar: hideLeftBar },
|
||||
})
|
||||
: Promise.resolve();
|
||||
|
||||
return sync
|
||||
.then(() =>
|
||||
dispatch({
|
||||
type: QUERY_EDITOR_TOGGLE_LEFT_BAR,
|
||||
queryEditor,
|
||||
hideLeftBar,
|
||||
}),
|
||||
)
|
||||
.catch(() =>
|
||||
dispatch(
|
||||
addDangerToast(
|
||||
t(
|
||||
'An error occurred while hiding the left bar. Please contact your administrator.',
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
export function removeQueryEditor(queryEditor) {
|
||||
return function (dispatch) {
|
||||
const sync = isFeatureEnabled(FeatureFlag.SQLLAB_BACKEND_PERSISTENCE)
|
||||
|
||||
Reference in New Issue
Block a user