diff --git a/packages/react-router/src/ReactRouter/IonReactMemoryRouter.tsx b/packages/react-router/src/ReactRouter/IonReactMemoryRouter.tsx index 4367569e2d..24a5e64732 100644 --- a/packages/react-router/src/ReactRouter/IonReactMemoryRouter.tsx +++ b/packages/react-router/src/ReactRouter/IonReactMemoryRouter.tsx @@ -2,10 +2,10 @@ import { MemoryHistory } from 'history'; import React from 'react'; import { MemoryRouter, MemoryRouterProps, matchPath } from 'react-router'; -import { RouteManager } from './Router'; +import { LocationState, RouteManager } from './Router'; interface IonReactMemoryRouterProps extends MemoryRouterProps { - history: MemoryHistory; + history: MemoryHistory; } export class IonReactMemoryRouter extends React.Component { diff --git a/packages/react-router/src/ReactRouter/Router.tsx b/packages/react-router/src/ReactRouter/Router.tsx index 318a1b9ab8..3d6fb54887 100644 --- a/packages/react-router/src/ReactRouter/Router.tsx +++ b/packages/react-router/src/ReactRouter/Router.tsx @@ -14,12 +14,21 @@ import { RouteManagerContext, RouteManagerContextState } from './RouteManagerCon import { ViewItem } from './ViewItem'; import { ViewStack, ViewStacks } from './ViewStacks'; -interface RouteManagerState extends RouteManagerContextState { - location?: HistoryLocation; +export interface LocationState { + direction?: RouterDirection; action?: IonRouteAction; } -export class RouteManager extends React.Component { +interface RouteManagerProps extends RouteComponentProps<{}, {}, LocationState> { + location: HistoryLocation; +} + +interface RouteManagerState extends RouteManagerContextState { + location?: HistoryLocation; + action?: IonRouteAction; +} + +export class RouteManager extends React.Component { listenUnregisterCallback: UnregisterCallback | undefined; activeIonPageId?: string; currentIonRouteAction?: IonRouteAction; @@ -30,7 +39,7 @@ export class RouteManager extends React.Component, action: HistoryAction) { const ionRouteAction = this.currentIonRouteAction === 'pop' ? 'pop' : action.toLowerCase() as IonRouteAction; let direction = this.currentRouteDirection; @@ -115,7 +124,7 @@ export class RouteManager extends React.Component, action: IonRouteAction, viewStacks: ViewStacks) { let direction: RouterDirection | undefined = (location.state && location.state.direction) || 'forward'; let leavingView: ViewItem | undefined; const viewStackKeys = viewStacks.getKeys();