diff options
| author | Elizabeth Alexander Hunt <me@liz.coffee> | 2026-07-02 11:55:17 -0700 |
|---|---|---|
| committer | Elizabeth Alexander Hunt <me@liz.coffee> | 2026-07-02 11:55:17 -0700 |
| commit | 6bf4b90c90f15f4ab60833bddf5b5756d1a6b1f6 (patch) | |
| tree | ed97e39ec77c5231ffd2c394493e68d00ddac5a4 /Homework/cs5260/shared/schema/WidgetRequest.ts | |
| download | misc-undergrad-6bf4b90c90f15f4ab60833bddf5b5756d1a6b1f6.tar.gz misc-undergrad-6bf4b90c90f15f4ab60833bddf5b5756d1a6b1f6.zip | |
Diffstat (limited to 'Homework/cs5260/shared/schema/WidgetRequest.ts')
| -rw-r--r-- | Homework/cs5260/shared/schema/WidgetRequest.ts | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Homework/cs5260/shared/schema/WidgetRequest.ts b/Homework/cs5260/shared/schema/WidgetRequest.ts new file mode 100644 index 0000000..11259cf --- /dev/null +++ b/Homework/cs5260/shared/schema/WidgetRequest.ts @@ -0,0 +1,16 @@ +import { z } from "zod"; + +// generated from json-schema-to-zod +export const WidgetRequest = z.object({ + type: z.string().regex(new RegExp("create|delete|update")), + requestId: z.string(), + widgetId: z.string(), + owner: z.string().regex(new RegExp("[A-Za-z ]+")), + label: z.string().optional(), + description: z.string().optional(), + otherAttributes: z + .array(z.object({ name: z.string(), value: z.string() })) + .optional(), +}); + +export type WidgetRequestT = z.infer<typeof WidgetRequest>; |
