40 lines
1019 B
JavaScript
40 lines
1019 B
JavaScript
/**
|
|
* @typedef {"none" | "NotFoundSplat"} RouteCodecId
|
|
*/
|
|
|
|
/** @param {Readonly<{routeId: string, moduleId: string, paramsCodec: RouteCodecId, searchCodec: RouteCodecId}>} value */
|
|
const runtime = (value) => Object.freeze(value);
|
|
|
|
export const PLATFORM_ROUTE_RUNTIME_CONTRACT = Object.freeze({
|
|
APP_HOME: runtime({
|
|
routeId: "APP_HOME",
|
|
moduleId: "home-page",
|
|
paramsCodec: "none",
|
|
searchCodec: "none",
|
|
}),
|
|
EXAMPLES_UI: runtime({
|
|
routeId: "EXAMPLES_UI",
|
|
moduleId: "ui-gallery-page",
|
|
paramsCodec: "none",
|
|
searchCodec: "none",
|
|
}),
|
|
EXAMPLES_STATES: runtime({
|
|
routeId: "EXAMPLES_STATES",
|
|
moduleId: "state-gallery-page",
|
|
paramsCodec: "none",
|
|
searchCodec: "none",
|
|
}),
|
|
EXAMPLES_AUTH: runtime({
|
|
routeId: "EXAMPLES_AUTH",
|
|
moduleId: "auth-example-page",
|
|
paramsCodec: "none",
|
|
searchCodec: "none",
|
|
}),
|
|
NOT_FOUND: runtime({
|
|
routeId: "NOT_FOUND",
|
|
moduleId: "not-found-page",
|
|
paramsCodec: "NotFoundSplat",
|
|
searchCodec: "none",
|
|
}),
|
|
});
|