Files
PubScript/packages/ui/src/fonts.ts
T

41 lines
1.2 KiB
TypeScript

/**
* Font families per theme. See PLAN.md §4.7.
* UI chrome is locked to System Sans across all themes so typography changes
* only affect the writing editor surface.
*/
export interface FontSet {
/** UI chrome font (locked to System Sans). */
ui: string;
/** Body / prose font. */
body: string;
/** Monospace for code / terminal theme. */
mono: string;
}
export const SYSTEM_UI_FONT =
"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif";
export const FONTS: Record<string, FontSet> = {
ink: {
ui: SYSTEM_UI_FONT,
body: "Georgia, 'Times New Roman', serif",
mono: "'SFMono-Regular', ui-monospace, 'Cascadia Code', Consolas, monospace",
},
parchment: {
ui: SYSTEM_UI_FONT,
body: "Georgia, 'Times New Roman', serif",
mono: "'SFMono-Regular', ui-monospace, Consolas, monospace",
},
nocturne: {
ui: SYSTEM_UI_FONT,
body: "Georgia, 'Times New Roman', serif",
mono: "'SFMono-Regular', ui-monospace, 'Cascadia Code', Consolas, monospace",
},
terminal: {
ui: SYSTEM_UI_FONT,
body: "'SFMono-Regular', ui-monospace, Consolas, monospace",
mono: "'SFMono-Regular', ui-monospace, Consolas, monospace",
},
};