diff options
Diffstat (limited to 'packages/gitbook-plugin-search/src/actions/search.js')
-rw-r--r-- | packages/gitbook-plugin-search/src/actions/search.js | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/packages/gitbook-plugin-search/src/actions/search.js b/packages/gitbook-plugin-search/src/actions/search.js index dc3293b..fe7fdfe 100644 --- a/packages/gitbook-plugin-search/src/actions/search.js +++ b/packages/gitbook-plugin-search/src/actions/search.js @@ -17,13 +17,19 @@ function query(q) { dispatch({ type: TYPES.UPDATE_QUERY, query: q }); - return Promise.reduce(handlers, (results, handler) => { - return Promise(handler(q)) - .then(handlerResults => results.concat(handlerResults)); - }, List()) - .then(results => { - dispatch({ type: TYPES.UPDATE_RESULTS, query: q }); - }); + return Promise.reduce( + handlers.toArray(), + (results, handler) => { + return Promise.resolve(handler(q)) + .then(handlerResults => results.concat(handlerResults)); + }, + List() + ) + .then( + results => { + dispatch({ type: TYPES.UPDATE_RESULTS, query: q, results }); + } + ); }; } |