use-typed-reducer 3.2.4 → 3.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +5 -1
- package/dist/index.es.js +5 -1
- package/dist/index.js +5 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -23,6 +23,10 @@ declare type MapReducerReturn<State extends {}, Fns extends FnMap<State>> = {
|
|
|
23
23
|
export declare const useMutable: <T extends {}>(state: T) => MutableRefObject<T>;
|
|
24
24
|
export declare const dispatchCallback: <Prev extends unknown, T extends Prev | ((prev: Prev) => Prev)>(prev: Prev, setter: T) => any;
|
|
25
25
|
export declare type DispatchCallback<T extends any> = T | ((prev: T) => T);
|
|
26
|
-
export declare const useReducer: <State extends {}, Reducers extends (getState: (
|
|
26
|
+
export declare const useReducer: <State extends {}, Reducers extends (getState: (() => State) & {
|
|
27
|
+
getState: () => State;
|
|
28
|
+
getProps: () => Props;
|
|
29
|
+
initialState: State;
|
|
30
|
+
}, getProps: () => Props, initialState: State) => MappedReducers<State, FnMap<State>>, Props extends {}, Middlewares extends ((state: State, key: keyof ReturnType<Reducers>) => State)[]>(initialState: State, reducer: Reducers, props?: Props | undefined, middlewares?: Middlewares | undefined) => readonly [state: State, dispatchers: MapReducerReturn<State, ReturnType<Reducers>>];
|
|
27
31
|
export declare const createReducer: <State extends {} = {}, Props extends {} = {}>() => <Reducer extends (getState: () => State, getProps: () => Props, initialState: State) => MappedReducers<State, FnMap<State>>>(reducer: Reducer) => Reducer;
|
|
28
32
|
export default useTypedReducer;
|
package/dist/index.es.js
CHANGED
|
@@ -132,7 +132,11 @@ var useReducer = function (initialState, reducer, props, middlewares) {
|
|
|
132
132
|
var middleware = useMutable(middlewares !== null && middlewares !== void 0 ? middlewares : []);
|
|
133
133
|
var savedInitialState = useRef(initialState);
|
|
134
134
|
var dispatchers = useMemo(function () {
|
|
135
|
-
var reducers = mutableReducer.current(function () { return mutableState.current; },
|
|
135
|
+
var reducers = mutableReducer.current(Object.assign(function () { return mutableState.current; }, {
|
|
136
|
+
getState: function () { return mutableState.current; },
|
|
137
|
+
getProps: function () { return mutableProps.current; },
|
|
138
|
+
initialState: savedInitialState.current
|
|
139
|
+
}), function () { var _a; return (_a = mutableProps.current) !== null && _a !== void 0 ? _a : {}; }, savedInitialState.current);
|
|
136
140
|
return entries(reducers).reduce(function (acc, _a) {
|
|
137
141
|
var _b;
|
|
138
142
|
var _c = __read(_a, 2), name = _c[0], dispatch = _c[1];
|
package/dist/index.js
CHANGED
|
@@ -136,7 +136,11 @@ var useReducer = function (initialState, reducer, props, middlewares) {
|
|
|
136
136
|
var middleware = useMutable(middlewares !== null && middlewares !== void 0 ? middlewares : []);
|
|
137
137
|
var savedInitialState = react.useRef(initialState);
|
|
138
138
|
var dispatchers = react.useMemo(function () {
|
|
139
|
-
var reducers = mutableReducer.current(function () { return mutableState.current; },
|
|
139
|
+
var reducers = mutableReducer.current(Object.assign(function () { return mutableState.current; }, {
|
|
140
|
+
getState: function () { return mutableState.current; },
|
|
141
|
+
getProps: function () { return mutableProps.current; },
|
|
142
|
+
initialState: savedInitialState.current
|
|
143
|
+
}), function () { var _a; return (_a = mutableProps.current) !== null && _a !== void 0 ? _a : {}; }, savedInitialState.current);
|
|
140
144
|
return entries(reducers).reduce(function (acc, _a) {
|
|
141
145
|
var _b;
|
|
142
146
|
var _c = __read(_a, 2), name = _c[0], dispatch = _c[1];
|