Exact source used by this build. SHA-256: 2b426d0d1956c88f9f23d7dc5cd4767b5af9c4c10a1e605c700ff4a68e496c7d.
1 import { z } from "zod";
2
3 // The wire format retains the original autumn key; UI can label it Fall.
4 export const SeasonSchema = z.enum(["spring", "summer", "autumn", "winter"]);
5 export type Season = z.infer<typeof SeasonSchema>;
6 export const SeasonAppearanceSchema = z.object({
7 tint: z.number().int().min(0).max(0xffffff),
8 groundCover: z.string().min(1),
9 groundColor: z.number().int().min(0).max(0xffffff),
10 foliageColor: z.number().int().min(0).max(0xffffff),
11 });
12 export const AreaSeasonsSchema = z.record(SeasonSchema, SeasonAppearanceSchema);
13 export const SeasonalPalettesSchema = z.record(z.string(), AreaSeasonsSchema);
14 export type SeasonAppearance = z.infer<typeof SeasonAppearanceSchema>;
15