INNER CODE UNIT · JavaScript

createMigration

zulip/zulip-mobile · src/redux-persist-migrate/index.js:20

export default function createMigration(
  manifest: {| [string]: (PartialState) => PartialState |},
  reducerKey: string,
): StoreEnhancer<State, Action, Dispatch<Action>> {
  const migratePayload = createMigrationFunction(manifest, reducerKey);

  const migrationDispatch = next => (action: Action) => {
    if (action.type === REHYDRATE) {
      return next({ ...action, payload: migratePayload(action.payload) });
    }
    return next(action);
  };

  return next => (reducer, initialState) => {
    const store = next(reducer, initialState);
    return {
      ...store,
      dispatch: migrationDispatch(store.dispatch),

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…