feat: full site build — Project/Melody schema (Option A), admin CRUD, public sections, uploads, email+SMTP, internal analytics, legal pages, docs

This commit is contained in:
2026-08-05 20:53:40 +02:00
parent d87f3033c6
commit c26f41511f
122 changed files with 15068 additions and 41 deletions
+17
View File
@@ -0,0 +1,17 @@
import { z } from "zod";
export const analyticsEventTypeSchema = z.enum([
"PAGE_VIEW",
"PROJECT_OPEN",
"MELODY_PLAY",
"PROJECT_LINK_CLICK",
"CONTACT_SUBMITTED",
]);
export const analyticsEventSchema = z.object({
type: analyticsEventTypeSchema,
path: z.string().trim().max(2048).optional(),
entityId: z.string().cuid().optional(),
});
export type AnalyticsEventInput = z.infer<typeof analyticsEventSchema>;