alepha
Version:
Easy-to-use modern TypeScript framework for building many kind of applications.
20 lines (17 loc) • 809 B
text/typescript
import type { Static } from "alepha";
import { parameters } from "../entities/parameters.ts";
import { parameterCreatorSummarySchema } from "./parameterCreatorSummarySchema.ts";
import { parameterStatusSchema } from "./parameterStatusSchema.ts";
/**
* Parameter response schema for API responses.
* Extends the entity schema with a calculated status field.
* Status is derived from activationDate at query time, not stored.
*
* `creator` is embedded on read via a best-effort left join on `creatorId`
* (see `parameterCreatorSummarySchema`); it is not a stored column.
*/
export const parameterResponseSchema = parameters.schema.extend({
status: parameterStatusSchema,
creator: parameterCreatorSummarySchema.optional(),
});
export type ParameterResponse = Static<typeof parameterResponseSchema>;