UNPKG

@relax.dev/router

Version:
54 lines (53 loc) 2.06 kB
import { Route } from './Route'; import { State } from './State'; import { InfinityPanelIdTitle, PageParams, RouterGenericBase } from './Types'; export declare class Location<T extends RouterGenericBase = RouterGenericBase> { route: Route<T>; state: State<T>; constructor(route: Route<T>, state: State<T>); /** * @ignore * @param viewId */ getLastPanelInView(viewId: T['viewId']): T['panelId'] | undefined; /** * Массив из id панелей для передачи в атрибут history <View> * * ```javascript * import { useLocation } from '@happysanta/router'; * * const App = () => { * const location = useLocation(); * return <View id={VIEW_MAIN} * history={location.getViewHistory(VIEW_MAIN)} * activePanel={location.getViewActivePanel(VIEW_MAIN)}> * <Home id={PANEL_MAIN}/> * <Persik id={PANEL_PERSIK}/> * </View> * } * ``` * * @param viewId */ getViewHistory(viewId: T['viewId']): Array<T['panelId'] | InfinityPanelIdTitle<T['panelId']>>; getViewHistoryWithLastPanel(viewId: T['viewId']): Array<T['panelId'] | InfinityPanelIdTitle<T['panelId']>>; /** * @deprecated use getViewActivePanel * @ignore * @param viewId */ getPanelIdInView(viewId: T['viewId']): T['panelId'] | InfinityPanelIdTitle<T['panelId']> | undefined; getViewActivePanel(viewId: T['viewId']): T['panelId'] | InfinityPanelIdTitle<T['panelId']> | undefined; getPanelId(): T['panelId'] | InfinityPanelIdTitle<T['panelId']>; getViewId(): T['viewId']; getRootId(): T['rootId']; getModalId(): T['modalId'] | null; getPopupId(): T['popupId'] | null; getPageId(): T['pageId']; getParams(): PageParams; hasOverlay(): boolean; /** * Если вам надо отрисовать стрелочку назад или домик то используйте эту функцию */ isFirstPage(): boolean; }