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