export default class Monitor {
  constructor(update) {
    this.update = update;
  }
  reducer = (state, action) => {
    if (!this.active) return undefined;
    this.lastAction = action.type;
    if (action.type === 'LOCK_CHANGES') {
      window.__REDUX_DEVTOOLS_EXTENSION_LOCKED__ = action.status;
    } else if (action.type === 'PAUSE_RECORDING') {
      this.paused = action.status;
    } else if (this.isHotReloaded()) {
      // Send new lifted state on hot-reloading
      setTimeout(this.update, 0);
    }
    return undefined;
  };
  start = (skipUpdate) => {
    this.active = true;
    if (!skipUpdate) this.update();
  };
  stop = () => {
    this.active = false;
    clearTimeout(this.waitingTimeout);
  };
  isHotReloaded = () => this.lastAction === '@@redux/INIT';
  isMonitorAction = () => this.lastAction && this.lastAction !== 'PERFORM_ACTION';
  isTimeTraveling = () => this.lastAction === 'JUMP_TO_STATE';
  isPaused = () => {
    if (this.paused) {
      if (this.lastAction !== 'BLOCKED') {
        if (!window.__REDUX_DEVTOOLS_EXTENSION_LOCKED__) this.lastAction = 'BLOCKED';
        return false;
      }
      return true;
    }
    return false;
  };
  isLocked = () => {
    if (window.__REDUX_DEVTOOLS_EXTENSION_LOCKED__) {
      if (this.lastAction !== 'BLOCKED') {
        this.lastAction = 'BLOCKED';
        return false;
      }
      return true;
    }
    return false;
  };
}

@@ -96,16 +96,21 @@
 = (state
+ = %7B%7D
 , action
@@ -141,33 +141,29 @@
 ive) return 
-undefined
+state
 ;%0A    this.l
@@ -524,17 +524,13 @@
 urn 
-undefined
+state
 ;%0A  

Revert "Don't send monitor state anymore"