mirror of
https://github.com/Since-3/since3-portal.git
synced 2026-10-12 19:51:17 +00:00
44 lines
3.3 KiB
TypeScript
44 lines
3.3 KiB
TypeScript
import {
|
||
Anybody,
|
||
Cormorant,
|
||
EB_Garamond,
|
||
Funnel_Display,
|
||
Funnel_Sans,
|
||
Host_Grotesk,
|
||
Hubot_Sans,
|
||
Manrope,
|
||
Mona_Sans,
|
||
Noto_Serif_Display,
|
||
Parkinsans,
|
||
Rethink_Sans,
|
||
} from "next/font/google"
|
||
import type { FontPair } from "../../lib/types"
|
||
|
||
// Schriften der Baukasten-Vorlagen; jede Vorlage wählt in ihrer fonts.ts daraus.
|
||
// preload: false – siehe restaurant/fonts.ts. Mona Sans, Hubot Sans und Anybody laden die Breiten-Achse (wdth)
|
||
// mit, die der Baustein „Kinetik“ für seine reagierende Schrift nutzt.
|
||
const notoDisplay = Noto_Serif_Display({ subsets: ["latin"], style: ["normal", "italic"], variable: "--font-blocks-noto", preload: false })
|
||
const host = Host_Grotesk({ subsets: ["latin"], variable: "--font-blocks-host", preload: false })
|
||
const hubot = Hubot_Sans({ subsets: ["latin"], axes: ["wdth"], variable: "--font-blocks-hubot", preload: false })
|
||
const funnelDisplay = Funnel_Display({ subsets: ["latin"], variable: "--font-blocks-funnel-display", preload: false })
|
||
const funnelSans = Funnel_Sans({ subsets: ["latin"], variable: "--font-blocks-funnel-sans", preload: false })
|
||
// Für Parkinsans kennt next/font keine Fallback-Metriken
|
||
const parkinsans = Parkinsans({ subsets: ["latin"], variable: "--font-blocks-parkinsans", preload: false, adjustFontFallback: false })
|
||
const rethink = Rethink_Sans({ subsets: ["latin"], variable: "--font-blocks-rethink", preload: false })
|
||
const cormorant = Cormorant({ subsets: ["latin"], style: ["normal", "italic"], variable: "--font-blocks-cormorant", preload: false })
|
||
const manrope = Manrope({ subsets: ["latin"], variable: "--font-blocks-manrope", preload: false })
|
||
const garamond = EB_Garamond({ subsets: ["latin"], style: ["normal", "italic"], variable: "--font-blocks-garamond", preload: false })
|
||
const mona = Mona_Sans({ subsets: ["latin"], axes: ["wdth"], variable: "--font-blocks-mona", preload: false })
|
||
const anybody = Anybody({ subsets: ["latin"], axes: ["wdth"], variable: "--font-blocks-anybody", preload: false })
|
||
|
||
export const pairs = {
|
||
kino: { className: `${notoDisplay.variable} ${host.variable}`, display: "var(--font-blocks-noto)", body: "var(--font-blocks-host)" },
|
||
hubot: { className: `${hubot.variable} ${host.variable}`, display: "var(--font-blocks-hubot)", body: "var(--font-blocks-host)" },
|
||
grotesk: { className: host.variable, display: "var(--font-blocks-host)", body: "var(--font-blocks-host)" },
|
||
funnel: { className: `${funnelDisplay.variable} ${funnelSans.variable}`, display: "var(--font-blocks-funnel-display)", body: "var(--font-blocks-funnel-sans)" },
|
||
park: { className: `${parkinsans.variable} ${rethink.variable}`, display: "var(--font-blocks-parkinsans)", body: "var(--font-blocks-rethink)" },
|
||
cormorant: { className: `${cormorant.variable} ${manrope.variable}`, display: "var(--font-blocks-cormorant)", body: "var(--font-blocks-manrope)" },
|
||
garamond: { className: `${garamond.variable} ${host.variable}`, display: "var(--font-blocks-garamond)", body: "var(--font-blocks-host)" },
|
||
mona: { className: mona.variable, display: "var(--font-blocks-mona)", body: "var(--font-blocks-mona)" },
|
||
anybody: { className: `${anybody.variable} ${host.variable}`, display: "var(--font-blocks-anybody)", body: "var(--font-blocks-host)" },
|
||
} satisfies Record<string, FontPair>
|