@equinor/fusion-observable
Version:
13 lines • 616 B
JavaScript
import { actionMapper } from './action-mapper';
import { createReducer } from './create-reducer';
import { FlowSubject } from './FlowSubject';
export function createState(actions, reducer_or_builder) {
const reducer = typeof reducer_or_builder === 'function'
? reducer_or_builder
: createReducer(reducer_or_builder.initial, (builder) => reducer_or_builder.builder(builder, actions));
const subject = new FlowSubject(reducer);
const dispatch = actionMapper(actions, subject);
return { actions, dispatch, subject };
}
export default createState;
//# sourceMappingURL=create-state.js.map