Skip to content

Commit b0fb436

Browse files
committed
fix(QueryEditor): save chosen run action
1 parent a350472 commit b0fb436

File tree

4 files changed

+36
-17
lines changed

4 files changed

+36
-17
lines changed

src/containers/Tenant/QueryEditor/QueryEditor.js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import {
3333
DEFAULT_SIZE_RESULT_PANE_KEY,
3434
DEFAULT_TABLE_SETTINGS,
3535
SAVED_QUERIES_KEY,
36+
QUERY_INITIAL_RUN_ACTION_KEY,
3637
} from '../../../utils/constants';
3738
import {prepareQueryResponse} from '../../../utils/index';
3839

@@ -538,15 +539,24 @@ function QueryEditor(props) {
538539
};
539540

540541
const renderControls = () => {
541-
const {executeQuery, explainQuery, savedQueries, selectRunAction} = props;
542+
const {
543+
executeQuery,
544+
explainQuery,
545+
savedQueries,
546+
selectRunAction,
547+
setSettingValue,
548+
} = props;
542549
const {runAction} = executeQuery;
543550
const runIsDisabled = !executeQuery.input || executeQuery.loading;
544551
const runText = _.find(RUN_ACTIONS, {value: runAction}).content;
545552

546553
const menuItems = RUN_ACTIONS.map((action) => {
547554
return {
548555
text: action.content,
549-
action: () => selectRunAction(action.value),
556+
action: () => {
557+
selectRunAction(action.value);
558+
setSettingValue(QUERY_INITIAL_RUN_ACTION_KEY, action.value);
559+
},
550560
};
551561
});
552562

src/store/reducers/executeQuery.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import {createRequestActionTypes, createApiRequest} from '../utils';
22
import '../../services/api';
33
import {getValueFromLS, parseJson} from '../../utils/utils';
4-
import {QUERIES_HISTORY_KEY} from '../../utils/constants';
4+
import {QUERIES_HISTORY_KEY, QUERY_INITIAL_RUN_ACTION_KEY} from '../../utils/constants';
5+
import {readSavedSettingsValue} from './settings';
56

67
const MAXIMUM_QUERIES_IN_HISTORY = 20;
78

@@ -39,7 +40,7 @@ const initialState = {
3940
? MAXIMUM_QUERIES_IN_HISTORY - 1
4041
: queriesHistoryInitial.length - 1,
4142
},
42-
runAction: RUN_ACTIONS_VALUES.script,
43+
runAction: readSavedSettingsValue(QUERY_INITIAL_RUN_ACTION_KEY, RUN_ACTIONS_VALUES.script),
4344
monacoHotKey: null,
4445
};
4546

src/store/reducers/settings.js

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
1-
import {ALL, defaultUserSettings, SAVED_QUERIES_KEY, THEME_KEY, TENANT_INITIAL_TAB_KEY} from '../../utils/constants';
1+
import {
2+
defaultUserSettings,
3+
ALL,
4+
SAVED_QUERIES_KEY,
5+
THEME_KEY,
6+
TENANT_INITIAL_TAB_KEY,
7+
QUERY_INITIAL_RUN_ACTION_KEY,
8+
} from '../../utils/constants';
29
import '../../services/api';
310
import {getValueFromLS} from '../../utils/utils';
411

@@ -7,24 +14,24 @@ const SET_SETTING_VALUE = 'settings/SET_VALUE';
714

815
const userSettings = window.userSettings || {};
916
const systemSettings = window.systemSettings || {};
10-
const theme = window.web_version
11-
? userSettings.theme || 'light'
12-
: getValueFromLS(THEME_KEY, 'light');
13-
const savedQueries = window.web_version
14-
? userSettings[SAVED_QUERIES_KEY]
15-
: getValueFromLS(SAVED_QUERIES_KEY, '[]');
16-
const savedTenantGeneralTab = window.web_version
17-
? userSettings[TENANT_INITIAL_TAB_KEY]
18-
: getValueFromLS(TENANT_INITIAL_TAB_KEY);
17+
18+
export function readSavedSettingsValue(key, defaultValue) {
19+
const savedValue = window.web_version
20+
? userSettings[key]
21+
: getValueFromLS(key);
22+
23+
return savedValue ?? defaultValue;
24+
}
1925

2026
export const initialState = {
2127
problemFilter: ALL,
2228
userSettings: {
2329
...defaultUserSettings,
2430
...userSettings,
25-
theme,
26-
[SAVED_QUERIES_KEY]: savedQueries,
27-
[TENANT_INITIAL_TAB_KEY]: savedTenantGeneralTab,
31+
theme: readSavedSettingsValue(THEME_KEY, 'light'),
32+
[SAVED_QUERIES_KEY]: readSavedSettingsValue(SAVED_QUERIES_KEY, '[]'),
33+
[TENANT_INITIAL_TAB_KEY]: readSavedSettingsValue(TENANT_INITIAL_TAB_KEY),
34+
[QUERY_INITIAL_RUN_ACTION_KEY]: readSavedSettingsValue(QUERY_INITIAL_RUN_ACTION_KEY),
2835
},
2936
systemSettings,
3037
};

src/utils/constants.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,3 +139,4 @@ export const DEFAULT_TABLE_SETTINGS = {
139139
};
140140

141141
export const TENANT_INITIAL_TAB_KEY = 'saved_tenant_initial_tab';
142+
export const QUERY_INITIAL_RUN_ACTION_KEY = 'query_initial_run_action';

0 commit comments

Comments
 (0)