UNPKG

react-application-core

Version:

A react-based application core for the business applications.

101 lines (100 loc) 3.36 kB
import * as React from 'react'; import { IConnectorEntity, IGenericContainerCtor, IRouteEntity, IStorageSettingsEntity, IUniversalUiMessageConfigEntity, RoutePredicateT } from '../../definition'; import { IUniversalApplicationContainerProps } from './universal-application.interface'; import { GenericContainer } from '../base/generic.container'; export declare abstract class UniversalApplicationContainer<TProps extends IUniversalApplicationContainerProps> extends GenericContainer<TProps> { static readonly defaultProps: IUniversalApplicationContainerProps; private static readonly logger; private readonly extraRoutes; /** * @stable [17.11.2019] * @param {TProps} props */ constructor(props: TProps); /** * @stable [17.11.2019] */ componentDidMount(): void; /** * @stable [24.09.2019] */ componentWillUnmount(): void; /** * @stable [18.11.2019] */ protected syncAppState(): void; /** * @stable [28.11.2019] * @param {RoutePredicateT} routePredicate * @returns {React.ReactNode} */ protected getRoutes(routePredicate?: RoutePredicateT): React.ReactNode; /** * @stable [17.11.2019] * @param {string} path * @returns {IGenericContainerCtor} */ protected lookupDynamicContainerByRoutePath(path: string): IGenericContainerCtor; /** * @stable [17.11.2019] * @param {IGenericContainerCtor} container * @param {IConnectorEntity} config */ protected registerExtraRoute(container: IGenericContainerCtor, config: IConnectorEntity): void; protected registerLogoutRoute(): void; /** * @stable [17.11.2019] */ protected onBeforeLogout(): void; /** * @stable [16.11.2019] * @param {IGenericContainerCtor} ctor * @param {IConnectorEntity} connectorEntity * @returns {JSX.Element} */ protected abstract buildRoute(ctor: IGenericContainerCtor, connectorEntity: IConnectorEntity): JSX.Element; /** * @stable [17.11.2019] * @param {IRouteEntity} routeCfg * @returns {string} */ protected toRouteId(routeCfg: IRouteEntity): string; /** * @stable [28.11.2019] * @returns {React.ReactNode} */ protected getMessageElement(): React.ReactNode; /** * @stable [28.11.2019] * @param {IUniversalUiMessageConfigEntity} message * @returns {IUniversalUiMessageConfigEntity} */ protected prepareMessage(message: IUniversalUiMessageConfigEntity): IUniversalUiMessageConfigEntity; /** * @stable [17.11.2019] * @param {Map<IGenericContainerCtor, IConnectorEntity>} map * @param {RoutePredicateT} routePredicate * @returns {JSX.Element[]} */ private buildRoutes; /** * @stable [17.11.2019] * @returns {IStorageSettingsEntity} */ protected get storageSettings(): IStorageSettingsEntity; /** * @stable [28.11.2019] * @returns {boolean} */ protected get isMessageVisible(): boolean; /** * @stable [28.11.2019] * @returns {boolean} */ protected get inProgress(): boolean; /** * @stable [28.11.2019] * @returns {boolean} */ protected get doesErrorExist(): boolean; }