diff --git a/modules/router-store/src/index.ts b/modules/router-store/src/index.ts index ec721bc920..ff87689a78 100644 --- a/modules/router-store/src/index.ts +++ b/modules/router-store/src/index.ts @@ -28,5 +28,5 @@ export { RouterStateSerializer, DefaultRouterStateSerializer, SerializedRouterStateSnapshot, - SimpleRouterState, + BaseRouterStoreState, } from './serializer'; diff --git a/modules/router-store/src/router_store_module.ts b/modules/router-store/src/router_store_module.ts index 08c266df92..f1b3d21e8f 100644 --- a/modules/router-store/src/router_store_module.ts +++ b/modules/router-store/src/router_store_module.ts @@ -18,7 +18,7 @@ import { DefaultRouterStateSerializer, RouterStateSerializer, SerializedRouterStateSnapshot, - SimpleRouterState, + BaseRouterStoreState, } from './serializer'; /** @@ -49,7 +49,7 @@ export const ROUTER_NAVIGATION = 'ROUTER_NAVIGATION'; /** * Payload of ROUTER_NAVIGATION. */ -export type RouterNavigationPayload = { +export type RouterNavigationPayload = { routerState: T; event: RoutesRecognized; }; @@ -58,7 +58,7 @@ export type RouterNavigationPayload = { * An action dispatched when the router navigates. */ export type RouterNavigationAction< - T extends SimpleRouterState = SerializedRouterStateSnapshot + T extends BaseRouterStoreState = SerializedRouterStateSnapshot > = { type: typeof ROUTER_NAVIGATION; payload: RouterNavigationPayload; @@ -72,7 +72,7 @@ export const ROUTER_CANCEL = 'ROUTER_CANCEL'; /** * Payload of ROUTER_CANCEL. */ -export type RouterCancelPayload = { +export type RouterCancelPayload = { routerState: V; storeState: T; event: NavigationCancel; @@ -83,7 +83,7 @@ export type RouterCancelPayload = { */ export type RouterCancelAction< T, - V extends SimpleRouterState = SerializedRouterStateSnapshot + V extends BaseRouterStoreState = SerializedRouterStateSnapshot > = { type: typeof ROUTER_CANCEL; payload: RouterCancelPayload; @@ -97,7 +97,7 @@ export const ROUTER_ERROR = 'ROUTE_ERROR'; /** * Payload of ROUTER_ERROR. */ -export type RouterErrorPayload = { +export type RouterErrorPayload = { routerState: V; storeState: T; event: NavigationError; @@ -108,7 +108,7 @@ export type RouterErrorPayload = { */ export type RouterErrorAction< T, - V extends SimpleRouterState = SerializedRouterStateSnapshot + V extends BaseRouterStoreState = SerializedRouterStateSnapshot > = { type: typeof ROUTER_ERROR; payload: RouterErrorPayload; @@ -139,7 +139,7 @@ export type RouterNavigatedAction = { */ export type RouterAction< T, - V extends SimpleRouterState = SerializedRouterStateSnapshot + V extends BaseRouterStoreState = SerializedRouterStateSnapshot > = | RouterRequestAction | RouterNavigationAction @@ -148,14 +148,14 @@ export type RouterAction< | RouterNavigatedAction; export type RouterReducerState< - T extends SimpleRouterState = SerializedRouterStateSnapshot + T extends BaseRouterStoreState = SerializedRouterStateSnapshot > = { state: T; navigationId: number; }; export function routerReducer< - T extends SimpleRouterState = SerializedRouterStateSnapshot + T extends BaseRouterStoreState = SerializedRouterStateSnapshot >( state: RouterReducerState | undefined, action: RouterAction diff --git a/modules/router-store/src/serializer.ts b/modules/router-store/src/serializer.ts index 595d4ddb2e..74b91c1666 100644 --- a/modules/router-store/src/serializer.ts +++ b/modules/router-store/src/serializer.ts @@ -2,19 +2,20 @@ import { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router'; /** * Simple router state. - * All custom router states / state serializers should have at least this property. + * All custom router states / state serializers should have at least + * the properties of this interface. */ -export interface SimpleRouterState { +export interface BaseRouterStoreState { url: string; } export abstract class RouterStateSerializer< - T extends SimpleRouterState = SimpleRouterState + T extends BaseRouterStoreState = BaseRouterStoreState > { abstract serialize(routerState: RouterStateSnapshot): T; } -export interface SerializedRouterStateSnapshot extends SimpleRouterState { +export interface SerializedRouterStateSnapshot extends BaseRouterStoreState { root: ActivatedRouteSnapshot; url: string; }