This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
// The shapes both halves of the branding contract use: the procedures (index.ts) and the stylesheet
|
||||
// layer a brand becomes (style.ts). A file of its own so neither imports the other.
|
||||
|
||||
import { z } from "zod"
|
||||
|
||||
export const LOGO_VARIANTS = ["light", "dark"] as const
|
||||
export type LogoVariant = (typeof LOGO_VARIANTS)[number]
|
||||
|
||||
/** `null` is "not set": the app's own brand shows through. */
|
||||
export const brandViewSchema = z.object({
|
||||
displayName: z.string().nullable(),
|
||||
primary: z.string().nullable(),
|
||||
accent: z.string().nullable(),
|
||||
logoLight: z.string().nullable(),
|
||||
logoDark: z.string().nullable(),
|
||||
})
|
||||
|
||||
export type BrandView = z.output<typeof brandViewSchema>
|
||||
Reference in New Issue
Block a user