-
Notifications
You must be signed in to change notification settings - Fork 0
Sanity
Sanity er et headless CMS som brukes til å administrere innholdet på nettsiden.
Innhold defineres ved hjelp av schemas som er laget i .ts filer. Schemas legges i sanity/schemas, og importeres inn i sanity/schema.ts og legges til i types listen.
Studio er et webgrensesnitt som brukes til å administrere innholdet på nettsiden. Studioet er tilgjengelig på /studio.
Studioet er tilgjenglig i produksjon på https://www.rootlinjeforening.no/studio
For å bruke studioet må du først ha fått tilgang til Sanity, via en invitasjon på epost.
Sanity typed er en plugin som genererer TypeScript typer basert på Sanity schemas.
For at typene skal genereres riktig, må imports for defineType, defineField og lignende være fra @sanity-typed/types ikke sanity. Referanser i schema må også markeres med as const for å ikke gi en feilmelding.
For å lage en type for et schema, må det legges inn i sanity/types.ts
// Henter ut typene fra schema som heter "event"
export type RootEvent = SanityValues["event"]
Merk at typer fra plugins blir ikke oppdaget av sanity-typed og de vil få typen unknown. De kan bli gitt en type explicit ved å legge det til i ts typen.
export type RootEvent = SanityValues["event"] & {
// Overskriver eksisterende type som er "unknown"
description: Markdown
}