Skip to main content

Class: FmcRouter<T>

Defined in: src/sdk/fmc/FmcRouter.ts:9

A router for an FMC screen.

This registers routes and handles setting the appropriate page and params.

Type Parameters

Type Parameter
T extends AbstractFmcPage<any>

Constructors

Constructor

new FmcRouter<T>(): FmcRouter<T>

Returns

FmcRouter<T>

Properties

currentRoute

currentRoute: Subject<string>

Defined in: src/sdk/fmc/FmcRouter.ts:14


currentSubpageCount

currentSubpageCount: Subject<number>

Defined in: src/sdk/fmc/FmcRouter.ts:18


currentSubpageIndex

currentSubpageIndex: Subject<number>

Defined in: src/sdk/fmc/FmcRouter.ts:16

Methods

addRoute()

addRoute<P>(route, page, defaultProps): void

Defined in: src/sdk/fmc/FmcRouter.ts:27

Adds a route to the router

Type Parameters

Type Parameter
P extends null | object

Parameters

ParameterTypeDescription
routestringthe route string
pagePageConstructor<T, P>the target page constructor
defaultPropsPthe default props to pass in to the page

Returns

void


getDefaultPropsForPage()

getDefaultPropsForPage<P>(page): P extends PageConstructor<AbstractFmcPage<V>, V> ? V : never

Defined in: src/sdk/fmc/FmcRouter.ts:80

Returns the default props for a given page class

Type Parameters

Type Parameter
P extends PageConstructor<T, null>

Parameters

ParameterTypeDescription
pagePthe page class

Returns

P extends PageConstructor<AbstractFmcPage<V>, V> ? V : never

the default props

Throws

if the page was not registered


getPageForRoute()

getPageForRoute(routeString): undefined | PageConstructor<T, any>

Defined in: src/sdk/fmc/FmcRouter.ts:39

Gets the associated page (or undefined) for a route

Parameters

ParameterTypeDescription
routeStringstringthe route string

Returns

undefined | PageConstructor<T, any>

the associated page


getRouteForPage()

getRouteForPage(pageCtor): undefined | string

Defined in: src/sdk/fmc/FmcRouter.ts:50

Gets the associated route (or undefined) for a page

Parameters

ParameterTypeDescription
pageCtorPageConstructor<T, any>the page constructor

Returns

undefined | string

the associated route


getSubpageForRoute()

getSubpageForRoute(routeString): number

Defined in: src/sdk/fmc/FmcRouter.ts:67

Gets the associated subpage index (after the hash) or 1 by default

Parameters

ParameterTypeDescription
routeStringstringthe route string

Returns

number

the associated subpage index


nextSubpage()

nextSubpage(): boolean

Defined in: src/sdk/fmc/FmcRouter.ts:110

Moves to the next subpage if there is one available

Returns

boolean

whether or not the subpage was changed


prevSubpage()

prevSubpage(): boolean

Defined in: src/sdk/fmc/FmcRouter.ts:93

Moves to the previous subpage if there is one available

Returns

boolean

whether or not the subpage was changed


setSubpage()

setSubpage(index): boolean

Defined in: src/sdk/fmc/FmcRouter.ts:129

Moves to the specified subpage if there is one available

Parameters

ParameterTypeDescription
indexnumberDesired subpage index (1-based)

Returns

boolean

whether or not the subpage was changed