UNPKG

@catppuccin/starlight

Version:

<h3 align="center"> <img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/logos/exports/1544x1544_circle.png" width="100" alt="Logo"/><br/> <img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/misc/transp

50 lines (46 loc) 1.05 kB
import type { StarlightPlugin } from "@astrojs/starlight/types"; type DarkFlavor = "mocha" | "macchiato" | "frappe"; type LightFlavor = "latte"; type Accent = | "rosewater" | "flamingo" | "pink" | "mauve" | "red" | "maroon" | "peach" | "yellow" | "green" | "teal" | "sky" | "sapphire" | "blue" | "lavender"; interface Config { dark?: { flavor?: DarkFlavor; accent?: Accent; }; light?: { flavor?: LightFlavor; accent?: Accent; }; } export default function createPlugin(config?: Config): StarlightPlugin { const { dark, light } = config ?? {}; return { name: "@catppuccin/starlight", hooks: { "config:setup": ({ config, updateConfig }) => { updateConfig({ customCss: [ ...(config.customCss ?? []), "@catppuccin/starlight/styles/shared.css", `@catppuccin/starlight/themes/catppuccin-${dark?.flavor ?? "mocha"}-${dark?.accent ?? "mauve"}.css`, `@catppuccin/starlight/themes/catppuccin-${light?.flavor ?? "latte"}-${light?.accent ?? "mauve"}.css`, ], }); }, }, }; }