summaryrefslogtreecommitdiffstats
path: root/packages/gitbook-core/src/reducers/navigation.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/gitbook-core/src/reducers/navigation.js')
-rw-r--r--packages/gitbook-core/src/reducers/navigation.js11
1 files changed, 9 insertions, 2 deletions
diff --git a/packages/gitbook-core/src/reducers/navigation.js b/packages/gitbook-core/src/reducers/navigation.js
index 9831cd5..439ba21 100644
--- a/packages/gitbook-core/src/reducers/navigation.js
+++ b/packages/gitbook-core/src/reducers/navigation.js
@@ -1,11 +1,13 @@
-const { Record } = require('immutable');
+const { Record, List } = require('immutable');
const ACTION_TYPES = require('../actions/TYPES');
const NavigationState = Record({
// Are we loading a new page
loading: Boolean(false),
// Did we fail loading a page?
- error: null
+ error: null,
+ // Listener for history changes
+ listeners: List()
});
function reduceNavigation(state, action) {
@@ -28,6 +30,11 @@ function reduceNavigation(state, action) {
error: action.error
});
+ case ACTION_TYPES.NAVIGATION_LISTEN:
+ return state.merge({
+ listeners: state.listeners.push(action.listener)
+ });
+
default:
return state;