UNPKG

@leancodepl/utils

Version:

Common utility functions and React hooks for web applications

30 lines (29 loc) 890 B
/** * React hook for generating keys based on current route matches. * * @template TKey - The type of the route keys * @param routeMatches - Record of route keys to match objects or arrays * @returns Array of active route keys * @example * ```typescript * function NavigationComponent() { * const routeMatches = { * home: useRouteMatch('/'), * about: useRouteMatch('/about'), * contact: useRouteMatch('/contact') * }; * * const activeRoutes = useKeyByRoute(routeMatches); * // Returns ['home'] if on home page, ['about'] if on about page, etc. * * return ( * <nav> * {activeRoutes.map(route => ( * <span key={route}>Active: {route}</span> * ))} * </nav> * ); * } * ``` */ export declare function useKeyByRoute<TKey extends string>(routeMatches: Record<TKey, (object | null)[] | never | object | null>): TKey[];