import { err, ok, type ReadonlyDB } from "@tailor-platform/erp-kit/core"; import type { DB } from "../generated/kysely-tailordb"; import { WorkRegimeNotFoundError } from "../lib/errors.generated"; export interface GetWorkRegimeInput { id: string; } /** * Function: getWorkRegime * Description: Retrieves a single WorkRegime catalog entry by its surrogate id. */ export async function run(db: ReadonlyDB, input: GetWorkRegimeInput) { const workRegime = await db .selectFrom("WorkRegime") .selectAll() .where("id", "=", input.id) .executeTakeFirst(); if (!workRegime) { return err(new WorkRegimeNotFoundError(input.id)); } return ok({ workRegime }); }