UNPKG

apphouse

Version:

Component library for React that uses observable state management and theme-able components.

57 lines (56 loc) 1.41 kB
/// <reference types="react" /> /** * Route interface * The interface for one a route in the app */ export interface Route { /** * Path of the route */ path: string; /** * Title of the route */ title: string; /** * Whether the route is a popup or not * if true, the route will be rendered as a popup * TODO: handle popup */ popup?: boolean; /** * if set to true, it will set a partial route * with the last url param as the id of a partial view * Usually used when wanting to open a tab, section or view * @optional */ openPartial?: boolean; /** * Component to render * Note: This component does not need to be an observer * (wrapped as ApphouseComponent) * because we will do that when rendering it * @returns JSX.Element */ component: (...args: any[]) => JSX.Element; /** * Any action to perform when opening the route * @optional * @param params the url params * @returns void */ onOpen?: (...args: any[]) => void; /** * Any action to perform before opening the route * @optional * @param param the url params * @returns void */ beforeOpen?: (...args: any[]) => void; } /** * Routing interface to be applied to the router */ export type Routing = { [key: string]: (...args: any[]) => void; };