Files
Work/Frontend/src/theme/presets.ts
2026-06-16 13:11:14 +01:00

33 lines
1.1 KiB
TypeScript

// Path: Frontend/src/theme/presets.ts
import type { ThemeDefinition } from "./schema";
export const themePresetMetas = [
{
id: "moku-default",
name: "Moku Default",
description: "The baseline Moku theme preset, matching the original shell styling tokens.",
path: "/themes/moku-default.json",
},
{
id: "moku-midnight",
name: "Moku Midnight",
description: "The active warm, low-light Moku theme preset inspired by the Midnight Discord palette direction.",
path: "/themes/moku-midnight.json",
},
] as const satisfies readonly (Pick<ThemeDefinition, "id" | "name" | "description"> & { path: string })[];
export const defaultThemePresetPath = "/themes/moku-midnight.json";
export const defaultThemePresetMeta = {
id: "moku-midnight",
name: "Moku Midnight",
description: "The active warm, low-light Moku theme preset inspired by the Midnight Discord palette direction.",
} satisfies Pick<ThemeDefinition, "id" | "name" | "description">;
export const resolveThemePresetPath = (presetId: string): string | null => {
const match = themePresetMetas.find((preset) => preset.id === presetId);
return match?.path ?? null;
};