pullbackAction<GlobalAction, GlobalEnvironment> method

Reducer<State, GlobalAction, GlobalEnvironment> pullbackAction<GlobalAction, GlobalEnvironment>({
  1. required ActionLens<GlobalAction, Action> actionLens,
  2. Environment toLocalEnvironment(
    1. GlobalEnvironment globalEnv
    )?,
})

Lifts this reducer to a global action domain while keeping the same state type. Useful when the state is shared but actions differ.

Implementation

Reducer<State, GlobalAction, GlobalEnvironment> pullbackAction<GlobalAction, GlobalEnvironment>({
  required ActionLens<GlobalAction, Action> actionLens,
  Environment Function(GlobalEnvironment globalEnv)? toLocalEnvironment,
}) {
  return _pullback(
    toLocalState: (state) => state,
    toGlobalState: (state, localState) => localState,
    toLocalAction: actionLens.extract,
    toGlobalAction: actionLens.embed,
    toLocalEnvironment: toLocalEnvironment ?? ((p0) => p0 as Environment),
  );
}