mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2026-07-11 13:35:13 +10:00
28 lines
556 B
TypeScript
28 lines
556 B
TypeScript
import { z } from "zod";
|
|
|
|
import { defaultItem, defaultUrl, itemSchema, urlSchema } from "../shared";
|
|
|
|
// Schema
|
|
export const projectSchema = itemSchema.extend({
|
|
name: z.string().min(1),
|
|
description: z.string(),
|
|
date: z.string(),
|
|
summary: z.string(),
|
|
keywords: z.array(z.string()).default([]),
|
|
url: urlSchema,
|
|
});
|
|
|
|
// Type
|
|
export type Project = z.infer<typeof projectSchema>;
|
|
|
|
// Defaults
|
|
export const defaultProject: Project = {
|
|
...defaultItem,
|
|
name: "",
|
|
description: "",
|
|
date: "",
|
|
summary: "",
|
|
keywords: [],
|
|
url: defaultUrl,
|
|
};
|