diff options
Diffstat (limited to 'packages/gitbook-plugin-search/src/actions/search.js')
-rw-r--r-- | packages/gitbook-plugin-search/src/actions/search.js | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/packages/gitbook-plugin-search/src/actions/search.js b/packages/gitbook-plugin-search/src/actions/search.js index e9852cc..dc3293b 100644 --- a/packages/gitbook-plugin-search/src/actions/search.js +++ b/packages/gitbook-plugin-search/src/actions/search.js @@ -8,8 +8,12 @@ const TYPES = require('./types'); * @return {Action} */ function query(q) { + if (!q) { + return clear(); + } + return (dispatch, getState) => { - const handlers = getState().search; + const { handlers } = getState().search; dispatch({ type: TYPES.UPDATE_QUERY, query: q }); @@ -24,6 +28,14 @@ function query(q) { } /** + * Clear the whole search + * @return {Action} + */ +function clear() { + return { type: TYPES.CLEAR }; +} + +/** * Register a search handler * @param {String} name * @param {Function} handler @@ -43,6 +55,7 @@ function unregisterHandler(name) { } module.exports = { + clear, query, registerHandler, unregisterHandler |