Files
Epicnabbo-Catalogus-Updated…/src/features/housekeeping/route-handlers.ts
T

27 lines
961 B
TypeScript

import type { ReactNode } from "react";
import { CONTENT_ROUTE_HANDLERS } from "./domains/content/route-handlers";
import { PEOPLE_ROUTE_HANDLERS } from "./domains/people/route-handlers";
import { SYSTEM_ROUTE_HANDLERS } from "./domains/system/route-handlers";
import type { HousekeepingCapabilityContext } from "./foundation/contracts";
import type { HousekeepingRouteMatch } from "./foundation/routing/match-route";
export interface HousekeepingPageInput {
readonly context: HousekeepingCapabilityContext;
readonly match: HousekeepingRouteMatch;
readonly searchParams?: Readonly<
Record<string, string | readonly string[] | undefined>
>;
}
export interface HousekeepingRouteHandler {
routeId: string;
render(input: HousekeepingPageInput): Promise<ReactNode>;
}
export const HOUSEKEEPING_ROUTE_HANDLERS: readonly HousekeepingRouteHandler[] =
Object.freeze([
...PEOPLE_ROUTE_HANDLERS,
...CONTENT_ROUTE_HANDLERS,
...SYSTEM_ROUTE_HANDLERS,
]);