Upgrading react-redux 8 to 9
Breaking8.1.3 → 9.3.1Breaking5Platform5Deprecated2New8Changed28Fixed16Other14
BreakingUpgrade verdict
4 breaking changes and 5 platform requirement changes.
In plain terms
- The old UMD script-tag builds are no longer included.
- The setting that warns about a selector returning a new object every time has a new name and now lives inside a `devModeChecks` object.
- The files shipped in the package and the package.json entry points have new names and locations, which can break setups that reference them directly.
- Most build tools will now load the ESM build by default instead of the previous main artifact.
Must act Top 5 of 11 that need code or config changes
react-redux publishes official migration guides for versions 9, 9, 9. They cover more than the release notes do.
"Migrating to RTK 2.0 and Redux 5.0" migration guide ↗**please start migrating your existing legacy Redux code to use Redux Toolkit today!** ↗Redux Toolkit 2.0 + Redux core 5.0 Migration Guide ↗Drops @babel/runtime, @types/hoist-non-react-statics, hoist-non-react-statics, react-is.
Installs 2 packages in all (was 7).
Moves @types/use-sync-external-store 0.0.3 → 0.0.6. Your build may pick other versions.
What you must change
Breaking4
Drops UMD build artifacts from the published package.
Renames the
noopCheck dev mode option to identityFunctionCheck and restructures the options object.noopCheckidentityFunctionCheckUseSelectorOptionsdevModeChecksstabilityCheckequalityFnDevModeCheckFrequencyChanges published build artifact names and contents, and the exports/module/main fields in package.json.
exportsmodulemainThe primary build artifact is now the ESM file dist/react-redux.mjs.
dist/react-redux.mjsreact-redux.legacy-esm.jsPlatform5
Replaces the internal NoInfer helper with TypeScript's built-in NoInfer, making TS 5.4 the minimum version for React-Redux's types.
NoInferUpdates the React peer dependency to accept React 19.
Removes the no-longer-necessary peer dependency on react-native, fixing NPM peer dependency installation failures.
react-nativeUpdates the React Native peer dependency to >= 0.69 to reflect React 18 compatibility needs and reduce npm peer dependency install errors.
Allows react-native newer than 0.69 as a peer dependency.
react-nativeDeprecations to plan for
Deprecated2
Marks the
connect API as deprecated with an @deprecated docblock, without changing behavior or removing the API.connectMarks the batch export as deprecated since it is now effectively a no-op that immediately runs the callback.
batchAPI changes
Generated by DepDelta from published .d.ts files. Not mixed with prose notes.
- added:
call Connect(): InferableComponentEnhancer<DispatchProp> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispat… - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps… - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProp… - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: null | undefined): InferableComponentEnhancerWithProps<TStateProps, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>, TO… - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined): InferableComponentEnhancerWithProps<TStateProps, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, TMergedProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParamForMergeProps<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>, options?: ConnectOptions<State, TStateProps, TOwnProps, T… - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<ResolveThunks<TDispatchProps>, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps> - added:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps> - added:
call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined): InferableComponentEnhancerWithProps<TStateProps & DispatchProp, TOwnProps> - added:
call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: null | undefined, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<DispatchProp & TStateProps, TOwnProps> - added:
call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>): InferableComponentEnhancerWithProps<TStateProps & DispatchProp, TOwnProps> - added:
call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<DispatchProp & TStateProps, TOwnProps> - added:
call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, TMergedProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParamForMergeProps<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined, mergeProps: MergeProps<TStateProps, DispatchProp, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps> - added:
call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}, TMergedProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: MergeProps<undefined, TDispatchProps, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps> - added:
call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<ResolveThunks<TDispatchProps>, TOwnProps> - added:
call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps> - added:
call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps> - added:
call Connect<no_state = {}, no_dispatch = {}, TOwnProps = {}, TMergedProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: null | undefined, mergeProps: MergeProps<undefined, DispatchProp, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps> - added:
call TypedUseSelectorHook<Selected = unknown>(selector: (state: TState) => Selected, options?: UseSelectorOptions<Selected>): Selected - added:
call TypedUseSelectorHook<TSelected>(selector: (state: TState) => TSelected, equalityFn?: EqualityFn<TSelected>): TSelected - added:
call UseDispatch<AppDispatch extends DispatchType = DispatchType>(): AppDispatch - added:
call UseSelector<TState extends StateType = StateType, Selected = unknown>(selector: (state: TState) => Selected, equalityFnOrOptions?: EqualityFn<Selected> | UseSelectorOptions<Selected>): Selected - added:
call UseStore(): StoreType - added:
call UseStore<StateType extends ReturnType<StoreType['getState']> = ReturnType<StoreType['getState']>, ActionType extends Action = ExtractStoreActionType<Store>>(): Store<StateType, ActionType> - added:
const ReactReduxContext: Context<ReactReduxContextValue<any, UnknownAction> | null> - added:
const batch: typeof defaultNoopBatch - added:
const connect: Connect - added:
const legacy_connect: Connect - added:
const useDispatch: UseDispatch<Dispatch<UnknownAction>> - added:
const useSelector: UseSelector<unknown> - added:
const useStore: UseStore<Store<unknown, Action, unknown>> - added:
function Provider<A extends Action<string> = UnknownAction, S = unknown>(providerProps: ProviderProps<A, S>): React.JSX.Element - added:
function createDispatchHook<StateType = unknown, ActionType extends Action = UnknownAction>(context?: Context<ReactReduxContextValue<StateType, ActionType> | null>): UseDispatch<Dispatch<ActionType>> - added:
function createSelectorHook(context?: React.Context<ReactReduxContextValue<any, any> | null>): UseSelector - added:
function createStoreHook<StateType = unknown, ActionType extends Action = Action>(context?: Context<ReactReduxContextValue<StateType, ActionType> | null>): UseStore<Store<StateType, ActionType>> - added:
function shallowEqual(objA: any, objB: any): boolean - added:
interface Connect<DefaultState = unknown> - added:
interface ConnectProps - added:
interface DispatchProp<A extends Action<string> = UnknownAction> - added:
interface ProviderProps<A extends Action<string> = UnknownAction, S = unknown> - added:
interface ReactReduxContextValue<SS = any, A extends Action<string> = UnknownAction> extends Pick<ProviderProps, 'stabilityCheck' | 'identityFunctionCheck'> - added:
interface Subscription - added:
interface TypedUseSelectorHook<TState> - added:
interface UseDispatch<DispatchType extends Dispatch<UnknownAction> = Dispatch<UnknownAction>> - added:
interface UseSelector<StateType = unknown> - added:
interface UseStore<StoreType extends Store> - added:
property ConnectProps.context?: ReactReduxContextInstance - added:
property ConnectProps.store?: Store - added:
property DispatchProp.dispatch: Dispatch<A> - added:
property ProviderProps.children: ReactNode - added:
property ProviderProps.context?: Context<ReactReduxContextValue<S, A> | null> - added:
property ProviderProps.identityFunctionCheck?: DevModeCheckFrequency - added:
property ProviderProps.serverState?: S - added:
property ProviderProps.stabilityCheck?: DevModeCheckFrequency - added:
property ProviderProps.store: Store<S, A> - added:
property ReactReduxContextValue.getServerState?: () => SS - added:
property ReactReduxContextValue.store: Store<SS, A> - added:
property ReactReduxContextValue.subscription: Subscription - added:
property Subscription.addNestedSub: (listener: VoidFunc) => VoidFunc - added:
property Subscription.getListeners: () => ListenerCollection - added:
property Subscription.handleChangeWrapper: VoidFunc - added:
property Subscription.isSubscribed: () => boolean - added:
property Subscription.notifyNestedSubs: VoidFunc - added:
property Subscription.onStateChange?: VoidFunc | null - added:
property Subscription.trySubscribe: VoidFunc - added:
property Subscription.tryUnsubscribe: VoidFunc - added:
property UseDispatch.withTypes: <OverrideDispatchType extends DispatchType>() => UseDispatch<OverrideDispatchType> - added:
property UseSelector.withTypes: <OverrideStateType extends StateType>() => UseSelector<OverrideStateType> - added:
property UseStore.withTypes: <OverrideStoreType extends StoreType>() => UseStore<OverrideStoreType> - added:
type AnyIfEmpty<T extends object> = keyof T extends never ? any : T - added:
type ConnectPropsMaybeWithoutContext<TActualOwnProps> = TActualOwnProps extends { context: any } ? Omit<ConnectProps, 'context'> : ConnectProps - added:
type ConnectedComponent<C extends ComponentType<any>, P> = FunctionComponent<P> & NonReactStatics<C> & { WrappedComponent: C } - added:
type ConnectedProps<TConnector> = TConnector extends InferableComponentEnhancerWithProps<infer TInjectedProps, any> ? unknown extends TInjectedProps ? TConnector extends InferableComponentEnhan… - added:
type DistributiveOmit<T, K extends keyof T> = T extends unknown ? Omit<T, K> : never - added:
type EqualityFn<T> = (a: T, b: T) => boolean - added:
type ExtendedEqualityFn<T, P> = (a: T, b: T, c: P, d: P) => boolean - added:
type FixTypeLater = any - added:
type GetLibraryManagedProps<C> = JSX.LibraryManagedAttributes<C, GetProps<C>> - added:
type GetProps<C> = C extends ComponentType<infer P> ? C extends ComponentClass<P> ? ClassAttributes<InstanceType<C>> & P : P : never - added:
type HandleThunkActionCreator<TActionCreator> = TActionCreator extends ((...args: any[]) => any) ? InferThunkActionCreatorType<TActionCreator> : TActionCreator - added:
type InferThunkActionCreatorType<TActionCreator extends (...args: any[]) => any> = TActionCreator extends ((...args: infer TParams) => (...args: any[]) => infer TReturn) ? (...args: TParams) => TReturn : TActionCreator - added:
type InferableComponentEnhancer<TInjectedProps> = InferableComponentEnhancerWithProps<TInjectedProps, {}> - added:
type InferableComponentEnhancerWithProps<TInjectedProps, TNeedsProps> = <C extends ComponentType<Matching<TInjectedProps, GetProps<C>>>>(component: C) => ConnectedComponent<C, Mapped<DistributiveOmit<GetLibraryManagedProps<C>, keyo… - added:
type MapDispatchToProps<TDispatchProps, TOwnProps> = MapDispatchToPropsFunction<TDispatchProps, TOwnProps> | TDispatchProps - added:
type MapDispatchToPropsFactory<TDispatchProps, TOwnProps> = (dispatch: Dispatch<Action<string>>, ownProps: TOwnProps) => MapDispatchToPropsFunction<TDispatchProps, TOwnProps> - added:
type MapDispatchToPropsFunction<TDispatchProps, TOwnProps> = (dispatch: Dispatch<Action<string>>, ownProps: TOwnProps) => TDispatchProps - added:
type MapDispatchToPropsNonObject<TDispatchProps, TOwnProps> = MapDispatchToPropsFactory<TDispatchProps, TOwnProps> | MapDispatchToPropsFunction<TDispatchProps, TOwnProps> - added:
type MapDispatchToPropsParam<TDispatchProps, TOwnProps> = MapDispatchToPropsFactory<TDispatchProps, TOwnProps> | MapDispatchToProps<TDispatchProps, TOwnProps> - added:
type MapStateToProps<TStateProps, TOwnProps, State> = (state: State, ownProps: TOwnProps) => TStateProps - added:
type MapStateToPropsFactory<TStateProps, TOwnProps, State> = (initialState: State, ownProps: TOwnProps) => MapStateToProps<TStateProps, TOwnProps, State> - added:
type MapStateToPropsParam<TStateProps, TOwnProps, State> = MapStateToPropsFactory<TStateProps, TOwnProps, State> | MapStateToProps<TStateProps, TOwnProps, State> | null | undefined - added:
type Mapped<T> = Identity<{ [k in keyof T]: T[k] }> - added:
type Matching<InjectedProps, DecorationTargetProps> = { [P in keyof DecorationTargetProps]: P extends keyof InjectedProps ? InjectedProps[P] extends DecorationTargetProps[P] ? DecorationTargetProps[P] : InjectedPr… - added:
type MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps> = (stateProps: TStateProps, dispatchProps: TDispatchProps, ownProps: TOwnProps) => TMergedProps - added:
type ResolveThunks<TDispatchProps> = TDispatchProps extends { [key: string]: any } ? { [C in keyof TDispatchProps]: HandleThunkActionCreator<TDispatchProps[C]> } : TDispatchProps - added:
type Selector<S, TProps, TOwnProps = null> = TOwnProps extends null | undefined ? (state: S) => TProps : (state: S, ownProps: TOwnProps) => TProps - added:
type SelectorFactory<S, TProps, TOwnProps, TFactoryOptions> = (dispatch: Dispatch<Action<string>>, factoryOptions: TFactoryOptions) => Selector<S, TProps, TOwnProps> - added:
type Shared<InjectedProps, DecorationTargetProps> = { [P in Extract<keyof InjectedProps, keyof DecorationTargetProps>]?: InjectedProps[P] extends DecorationTargetProps[P] ? DecorationTargetProps[P] : never }
- removed:
const batch: (callback: () => void) => void - removed:
export * from './exports'
- removed:
const ReactReduxContext: React.Context<ReactReduxContextValue<any, AnyAction>> - removed:
default ReactReduxContext - removed:
interface ReactReduxContextValue<SS = any, A extends Action = AnyAction> - removed:
property ReactReduxContextValue.getServerState?: () => SS - removed:
property ReactReduxContextValue.noopCheck: CheckFrequency - removed:
property ReactReduxContextValue.stabilityCheck: CheckFrequency - removed:
property ReactReduxContextValue.store: Store<SS, A> - removed:
property ReactReduxContextValue.subscription: Subscription - removed:
type ReactReduxContextInstance = typeof ReactReduxContext
- removed:
default Provider - removed:
function Provider<A extends Action = AnyAction, S = unknown>({ store, context, children, serverState, stabilityCheck, noopCheck }: ProviderProps<A, S>): JSX.Element - removed:
interface ProviderProps<A extends Action = AnyAction, S = unknown> - removed:
property ProviderProps.children: ReactNode - removed:
property ProviderProps.context?: Context<ReactReduxContextValue<S, A>> - removed:
property ProviderProps.noopCheck?: CheckFrequency - removed:
property ProviderProps.serverState?: S - removed:
property ProviderProps.stabilityCheck?: CheckFrequency - removed:
property ProviderProps.store: Store<S, A>
- removed:
call Connect(): InferableComponentEnhancer<DispatchProp> - removed:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsNonObject<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps> - removed:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsNonObject<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps> - removed:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>, TOwnProps> - removed:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>,… - removed:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined): InferableComponentEnhancerWithProps<TStateProps, TOwnProps> - removed:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, TMergedProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>, options?: ConnectOptions<State, TStateProps, TOwnProps, TMergedProps>)… - removed:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsNonObject<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps> - removed:
call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<ResolveThunks<TDispatchProps>, TOwnProps> - removed:
call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>): InferableComponentEnhancerWithProps<TStateProps & DispatchProp, TOwnProps> - removed:
call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<DispatchProp & TStateProps, TOwnProps> - removed:
call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, TMergedProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined, mergeProps: MergeProps<TStateProps, DispatchProp, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps> - removed:
call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}, TMergedProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: MergeProps<undefined, TDispatchProps, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps> - removed:
call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsNonObject<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps> - removed:
call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<ResolveThunks<TDispatchProps>, TOwnProps> - removed:
call Connect<no_state = {}, no_dispatch = {}, TOwnProps = {}, TMergedProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: null | undefined, mergeProps: MergeProps<undefined, DispatchProp, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps> - removed:
const _default: Connect<unknown> - removed:
const initializeConnect: (fn: uSES) => void - removed:
default _default - removed:
interface Connect<DefaultState = unknown> - removed:
interface ConnectOptions<State = unknown, TStateProps = {}, TOwnProps = {}, TMergedProps = {}> - removed:
interface ConnectProps - removed:
property ConnectOptions.areMergedPropsEqual?: (nextMergedProps: TMergedProps, prevMergedProps: TMergedProps) => boolean - removed:
property ConnectOptions.areOwnPropsEqual?: (nextOwnProps: TOwnProps, prevOwnProps: TOwnProps) => boolean - removed:
property ConnectOptions.areStatePropsEqual?: (nextStateProps: TStateProps, prevStateProps: TStateProps) => boolean - removed:
property ConnectOptions.areStatesEqual?: (nextState: State, prevState: State, nextOwnProps: TOwnProps, prevOwnProps: TOwnProps) => boolean - removed:
property ConnectOptions.context?: typeof ReactReduxContext - removed:
property ConnectOptions.forwardRef?: boolean - removed:
property ConnectProps.context?: ReactReduxContextInstance - removed:
property ConnectProps.store?: Store - removed:
type ConnectedProps<TConnector> = TConnector extends InferableComponentEnhancerWithProps<infer TInjectedProps, any> ? unknown extends TInjectedProps ? TConnector extends InferableComponentEnhan…
- removed:
function createInvalidArgFactory(arg: unknown, name: string): (dispatch: Dispatch<Action<unknown>>, options: { readonly wrappedComponentName: string }) => never
- removed:
function mapDispatchToPropsFactory<TDispatchProps, TOwnProps>(mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps> | undefined): ((dispatch: Dispatch<import('redux').AnyAction>) => { (): import('redux').ActionCreatorsMapObject<any> | import('redux').ActionCreator<any> | { dispatch?: Dispatch<import('redux').AnyAction> | undefined; dependsOnOwnProps?: boolean | undefined }; depen…
- removed:
function mapStateToPropsFactory<TStateProps, TOwnProps, State>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>): ((dispatch: import('redux').Dispatch<import('redux').AnyAction>) => { (): import('redux').ActionCreatorsMapObject<any> | import('redux').ActionCreator<any> | { dispatch?: import('redux').Dispatch<import('redux').AnyAction> | undefined; dependsOnOwnProps?: boolean |…
- removed:
function defaultMergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>(stateProps: TStateProps, dispatchProps: TDispatchProps, ownProps: TOwnProps): TMergedProps - removed:
function mergePropsFactory<TStateProps, TDispatchProps, TOwnProps, TMergedProps>(mergeProps?: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>): ((dispatch: Dispatch<Action<unknown>>, options: { readonly wrappedComponentName: string }) => never) | ((dispatch: Dispatch<Action<unknown>>, options: { readonly displayName: string; readonly areMergedPropsEqual: EqualityFn<TMergedProps>… - removed:
function wrapMergePropsFunc<TStateProps, TDispatchProps, TOwnProps, TMergedProps>(mergeProps: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>): (dispatch: Dispatch<Action<unknown>>, options: { readonly displayName: string; readonly areMergedPropsEqual: EqualityFn<TMergedProps> }) => MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>
- removed:
default function finalPropsSelectorFactory<TStateProps, TOwnProps, TDispatchProps, TMergedProps, State>(dispatch: Dispatch<Action<unknown>>, { initMapStateToProps, initMapDispatchToProps, initMergeProps, ...options }: SelectorFactoryOptions<TStateProps, TOwnProps, TDispatchProps, TMergedProps, State>): (nextState: State, nextOwnProps: TOwnProps) => TMergedProps - removed:
function pureFinalPropsSelectorFactory<TStateProps, TOwnProps, TDispatchProps, TMergedProps, State>(mapStateToProps: WrappedMapStateToProps<TStateProps, TOwnProps, State>, mapDispatchToProps: WrappedMapDispatchToProps<TDispatchProps, TOwnProps>, mergeProps: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>, dispatch: Dispatch<Action<unknown>>, { areStatesEqual, areOwnPropsEqual, ar… - removed:
interface InitOptions<TStateProps, TOwnProps, TMergedProps, State> extends PureSelectorFactoryComparisonOptions<TStateProps, TOwnProps, State> - removed:
interface SelectorFactoryOptions<TStateProps, TOwnProps, TDispatchProps, TMergedProps, State> extends InitOptions<TStateProps, TOwnProps, TMergedProps, State> - removed:
readonly property InitOptions.WrappedComponent: ComponentType<TOwnProps> - removed:
readonly property InitOptions.areMergedPropsEqual: EqualityFn<TMergedProps> - removed:
readonly property InitOptions.displayName: string - removed:
readonly property InitOptions.shouldHandleStateChanges: boolean - removed:
readonly property InitOptions.wrappedComponentName: string - removed:
readonly property SelectorFactoryOptions.initMapDispatchToProps: (dispatch: Dispatch<Action<unknown>>, options: InitOptions<TStateProps, TOwnProps, TMergedProps, State>) => WrappedMapDispatchToProps<TDispatchProps, TOwnProps> - removed:
readonly property SelectorFactoryOptions.initMapStateToProps: (dispatch: Dispatch<Action<unknown>>, options: InitOptions<TStateProps, TOwnProps, TMergedProps, State>) => WrappedMapStateToProps<TStateProps, TOwnProps, State> - removed:
readonly property SelectorFactoryOptions.initMergeProps: (dispatch: Dispatch<Action<unknown>>, options: InitOptions<TStateProps, TOwnProps, TMergedProps, State>) => MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps> - removed:
type MapDispatchToProps<TDispatchProps, TOwnProps> = MapDispatchToPropsFunction<TDispatchProps, TOwnProps> | TDispatchProps - removed:
type MapDispatchToPropsFactory<TDispatchProps, TOwnProps> = (dispatch: Dispatch<Action<unknown>>, ownProps: TOwnProps) => MapDispatchToPropsFunction<TDispatchProps, TOwnProps> - removed:
type MapDispatchToPropsFunction<TDispatchProps, TOwnProps> = (dispatch: Dispatch<Action<unknown>>, ownProps: TOwnProps) => TDispatchProps - removed:
type MapDispatchToPropsNonObject<TDispatchProps, TOwnProps> = MapDispatchToPropsFactory<TDispatchProps, TOwnProps> | MapDispatchToPropsFunction<TDispatchProps, TOwnProps> - removed:
type MapDispatchToPropsParam<TDispatchProps, TOwnProps> = MapDispatchToPropsFactory<TDispatchProps, TOwnProps> | MapDispatchToProps<TDispatchProps, TOwnProps> - removed:
type MapStateToProps<TStateProps, TOwnProps, State> = (state: State, ownProps: TOwnProps) => TStateProps - removed:
type MapStateToPropsFactory<TStateProps, TOwnProps, State> = (initialState: State, ownProps: TOwnProps) => MapStateToProps<TStateProps, TOwnProps, State> - removed:
type MapStateToPropsParam<TStateProps, TOwnProps, State> = MapStateToPropsFactory<TStateProps, TOwnProps, State> | MapStateToProps<TStateProps, TOwnProps, State> | null | undefined - removed:
type MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps> = (stateProps: TStateProps, dispatchProps: TDispatchProps, ownProps: TOwnProps) => TMergedProps - removed:
type Selector<S, TProps, TOwnProps = null> = TOwnProps extends null | undefined ? (state: S) => TProps : (state: S, ownProps: TOwnProps) => TProps - removed:
type SelectorFactory<S, TProps, TOwnProps, TFactoryOptions> = (dispatch: Dispatch<Action<unknown>>, factoryOptions: TFactoryOptions) => Selector<S, TProps, TOwnProps>
- removed:
default function verifySubselectors(mapStateToProps: unknown, mapDispatchToProps: unknown, mergeProps: unknown): void
- removed:
function getDependsOnOwnProps(mapToProps: MapToProps): boolean - removed:
function wrapMapToPropsConstant(getConstant: (dispatch: Dispatch) => { dispatch?: Dispatch; dependsOnOwnProps?: boolean } | ActionCreatorsMapObject | ActionCreator<any>): (dispatch: Dispatch) => { (): ActionCreatorsMapObject<any> | ActionCreator<any> | { dispatch?: Dispatch<import('redux').AnyAction> | undefined; dependsOnOwnProps?: boolean | undefined }; dependsOnOwnProps: boolean } - removed:
function wrapMapToPropsFunc<P extends AnyProps = AnyProps>(mapToProps: MapToProps, methodName: string): (dispatch: Dispatch, { displayName }: { displayName: string }) => { (stateOrDispatch: StateOrDispatch, ownProps?: P | undefined): MapToProps; dependsOnOwnProps: boolean; mapToProps(stateOrDispatch: StateOrDispatch, ownProps?: P | undefined): MapToProps } - removed:
type MapToProps<P extends AnyProps = AnyProps> = { (stateOrDispatch: StateOrDispatch, ownProps?: P): FixTypeLater; dependsOnOwnProps?: boolean }
- removed:
export * from './types' - removed:
export { Connect } - removed:
export { ConnectProps } - removed:
export { ConnectedProps } - removed:
export { MapDispatchToProps } - removed:
export { MapDispatchToPropsFactory } - removed:
export { MapDispatchToPropsFunction } - removed:
export { MapDispatchToPropsNonObject } - removed:
export { MapDispatchToPropsParam } - removed:
export { MapStateToProps } - removed:
export { MapStateToPropsFactory } - removed:
export { MapStateToPropsParam } - removed:
export { MergeProps } - removed:
export { Provider } - removed:
export { ProviderProps } - removed:
export { ReactReduxContext } - removed:
export { ReactReduxContextValue } - removed:
export { Selector } - removed:
export { SelectorFactory } - removed:
export { Subscription } - removed:
export { connect } - removed:
export { createDispatchHook } - removed:
export { createSelectorHook } - removed:
export { createStoreHook } - removed:
export { shallowEqual } - removed:
export { useDispatch } - removed:
export { useSelector } - removed:
export { useStore }
- removed:
const useDispatch: <AppDispatch extends Dispatch<AnyAction> = Dispatch<AnyAction>>() => AppDispatch - removed:
function createDispatchHook<S = unknown, A extends Action = AnyAction>(context?: Context<ReactReduxContextValue<S, A>>): <AppDispatch extends Dispatch<A> = Dispatch<A>>() => AppDispatch
- removed:
const useReduxContext: () => ReactReduxContextValue | null - removed:
function createReduxContextHook(context?: import('react').Context<ReactReduxContextValue<any, import('redux').AnyAction>>): () => ReactReduxContextValue | null
- removed:
call UseSelector<TState = unknown, Selected = unknown>(selector: (state: TState) => Selected, equalityFn?: EqualityFn<Selected>): Selected - removed:
call UseSelector<TState = unknown, Selected = unknown>(selector: (state: TState) => Selected, options?: UseSelectorOptions<Selected>): Selected - removed:
const initializeUseSelector: (fn: uSESWS) => void - removed:
const useSelector: UseSelector - removed:
function createSelectorHook(context?: import('react').Context<import('../components/Context').ReactReduxContextValue<any, import('redux').AnyAction>>): UseSelector - removed:
interface UseSelector - removed:
interface UseSelectorOptions<Selected = unknown> - removed:
property UseSelectorOptions.equalityFn?: EqualityFn<Selected> - removed:
property UseSelectorOptions.noopCheck?: CheckFrequency - removed:
property UseSelectorOptions.stabilityCheck?: CheckFrequency - removed:
type CheckFrequency = 'never' | 'once' | 'always'
- removed:
const useStore: <State = unknown, Action extends BasicAction<any> = AnyAction>() => Store<State, Action> - removed:
function createStoreHook<S = unknown, A extends BasicAction = AnyAction>(context?: Context<ReactReduxContextValue<S, A>>): <State = S, Action extends BasicAction<any> = A>() => Store<State, Action>
- removed:
export * from './exports' - removed:
export { batch }
- removed:
export * from './exports' - removed:
export { batch }
- removed:
call TypedUseSelectorHook<Selected = unknown>(selector: (state: TState) => Selected, options?: UseSelectorOptions<Selected>): Selected - removed:
call TypedUseSelectorHook<TSelected>(selector: (state: TState) => TSelected, equalityFn?: EqualityFn<NoInfer<TSelected>>): TSelected - removed:
interface DispatchProp<A extends Action = AnyAction> - removed:
interface TypedUseSelectorHook<TState> - removed:
property DispatchProp.dispatch: Dispatch<A> - removed:
type AnyIfEmpty<T extends object> = keyof T extends never ? any : T - removed:
type ConnectPropsMaybeWithoutContext<TActualOwnProps> = TActualOwnProps extends { context: any } ? Omit<ConnectProps, 'context'> : ConnectProps - removed:
type ConnectedComponent<C extends ComponentType<any>, P> = FunctionComponent<P> & NonReactStatics<C> & { WrappedComponent: C } - removed:
type DistributiveOmit<T, K extends keyof T> = T extends unknown ? Omit<T, K> : never - removed:
type EqualityFn<T> = (a: T, b: T) => boolean - removed:
type ExtendedEqualityFn<T, P> = (a: T, b: T, c: P, d: P) => boolean - removed:
type FixTypeLater = any - removed:
type GetLibraryManagedProps<C> = JSX.LibraryManagedAttributes<C, GetProps<C>> - removed:
type GetProps<C> = C extends ComponentType<infer P> ? C extends ComponentClass<P> ? ClassAttributes<InstanceType<C>> & P : P : never - removed:
type HandleThunkActionCreator<TActionCreator> = TActionCreator extends (...args: any[]) => any ? InferThunkActionCreatorType<TActionCreator> : TActionCreator - removed:
type InferThunkActionCreatorType<TActionCreator extends (...args: any[]) => any> = TActionCreator extends (...args: infer TParams) => (...args: any[]) => infer TReturn ? (...args: TParams) => TReturn : TActionCreator - removed:
type InferableComponentEnhancer<TInjectedProps> = InferableComponentEnhancerWithProps<TInjectedProps, {}> - removed:
type InferableComponentEnhancerWithProps<TInjectedProps, TNeedsProps> = <C extends ComponentType<Matching<TInjectedProps, GetProps<C>>>>(component: C) => ConnectedComponent<C, Mapped<DistributiveOmit<GetLibraryManagedProps<C>, keyo… - removed:
type Mapped<T> = Identity<{ [k in keyof T]: T[k] }> - removed:
type Matching<InjectedProps, DecorationTargetProps> = { [P in keyof DecorationTargetProps]: P extends keyof InjectedProps ? InjectedProps[P] extends DecorationTargetProps[P] ? DecorationTargetProps[P] : InjectedPr… - removed:
type NoInfer<T> = [T][T extends any ? 0 : never] - removed:
type ResolveThunks<TDispatchProps> = TDispatchProps extends { [key: string]: any } ? { [C in keyof TDispatchProps]: HandleThunkActionCreator<TDispatchProps[C]> } : TDispatchProps - removed:
type Shared<InjectedProps, DecorationTargetProps> = { [P in Extract<keyof InjectedProps, keyof DecorationTargetProps>]?: InjectedProps[P] extends DecorationTargetProps[P] ? DecorationTargetProps[P] : never }
- removed:
function createSubscription(store: any, parentSub?: Subscription): Subscription - removed:
interface Subscription - removed:
property Subscription.addNestedSub: (listener: VoidFunc) => VoidFunc - removed:
property Subscription.getListeners: () => ListenerCollection - removed:
property Subscription.handleChangeWrapper: VoidFunc - removed:
property Subscription.isSubscribed: () => boolean - removed:
property Subscription.notifyNestedSubs: VoidFunc - removed:
property Subscription.onStateChange?: VoidFunc | null - removed:
property Subscription.trySubscribe: VoidFunc - removed:
property Subscription.tryUnsubscribe: VoidFunc
- removed:
const getBatch: () => typeof defaultNoopBatch - removed:
const setBatch: (newBatch: typeof defaultNoopBatch) => typeof defaultNoopBatch
- removed:
default function bindActionCreators(actionCreators: ActionCreatorsMapObject, dispatch: Dispatch): ActionCreatorsMapObject
- removed:
default function isPlainObject(obj: unknown): boolean
- removed:
export { unstable_batchedUpdates } from 'react-dom'
- removed:
export { unstable_batchedUpdates }
- removed:
default function shallowEqual(objA: any, objB: any): boolean
- removed:
const canUseDOM: boolean - removed:
const useIsomorphicLayoutEffect: typeof React.useLayoutEffect
- removed:
const useIsomorphicLayoutEffect: typeof React.useLayoutEffect
- removed:
const notInitialized: () => never - removed:
type uSES = typeof useSyncExternalStore - removed:
type uSESWS = typeof useSyncExternalStoreWithSelector
- removed:
default function verifyPlainObject(value: unknown, displayName: string, methodName: string): void
- removed:
default function warning(message: string): void