summaryrefslogtreecommitdiffstats
path: root/packages/gitbook-plugin-search/src/actions/search.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/gitbook-plugin-search/src/actions/search.js')
-rw-r--r--packages/gitbook-plugin-search/src/actions/search.js10
1 files changed, 9 insertions, 1 deletions
diff --git a/packages/gitbook-plugin-search/src/actions/search.js b/packages/gitbook-plugin-search/src/actions/search.js
index c71eda2..07d1311 100644
--- a/packages/gitbook-plugin-search/src/actions/search.js
+++ b/packages/gitbook-plugin-search/src/actions/search.js
@@ -17,7 +17,14 @@ const TYPES = require('./types');
*/
function query(q) {
return (dispatch, getState, { Navigation }) => {
- dispatch(Navigation.updateQuery({ q }));
+ const searchState = getState().search;
+ const currentQuery = searchState.query;
+
+ if (currentQuery && q) {
+ dispatch(Navigation.replace({ query: { q } }));
+ } else {
+ dispatch(Navigation.push({ query: { q } }));
+ }
};
}
@@ -33,6 +40,7 @@ function handleQuery(q) {
return (dispatch, getState, { Navigation }) => {
const { handlers } = getState().search;
+
dispatch({ type: TYPES.START, query: q });
return Promise.reduce(