import { isProblem, type Problem } from '../../shared/links/problem'; import type { RouteParams } from '../../shared/lib/route'; export const ALL_FILTER = 'all'; const FIRST_PAGE = 1; export type LinksFilter = Problem | typeof ALL_FILTER; export function linksFilterOf( params: RouteParams ): LinksFilter { if ( isProblem( params.status ) ) { return params.status; } return ALL_FILTER; } export function linksPageOf( params: RouteParams ): number { const page = Number( params.page ); if ( Number.isNaN( page ) || page === 0 ) { return FIRST_PAGE; } return Math.max( FIRST_PAGE, page ); }