mirror of
https://github.com/Patiun/com.gregkilmer.www.git
synced 2026-11-08 04:08:24 +00:00
Phase 4: component library
The approved element rules and ornament kit as Astro components in packages/ui: buttons, pills, chips, filters, kickers, notices, fields and cards; star paths, the header divider, tick scales and rings, seals and edge seals, gilt corners, dust and placeholder art; the site header, footer and page shell. Brand fonts are self-hosted. A gallery page shows everything, and astro check now runs with the root typecheck. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012aSbo2D1qP8cMFQCykf7kx
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
/**
|
||||
* The seals, and which one belongs to each page family (Ornament kit, "Edge
|
||||
* seal by page"). Imported as URLs so they load as images: their internal
|
||||
* ids never clash, and they never block text.
|
||||
*/
|
||||
import astrolabe from "../assets/motifs/astrolabe.svg?url";
|
||||
import craftDice from "../assets/motifs/craft-seal-dice.svg?url";
|
||||
import craftLeather from "../assets/motifs/craft-seal-leather.svg?url";
|
||||
import craftPrint from "../assets/motifs/craft-seal-print.svg?url";
|
||||
import filamentBanner from "../assets/motifs/filament-banner.svg?url";
|
||||
import filamentTransmutation from "../assets/motifs/filament-transmutation.svg?url";
|
||||
import keplerNest from "../assets/motifs/kepler-nest-seal.svg?url";
|
||||
import layered from "../assets/motifs/layered-seal.svg?url";
|
||||
import miniAstrolabe from "../assets/motifs/mini-astrolabe.svg?url";
|
||||
import miniLayered from "../assets/motifs/mini-layered.svg?url";
|
||||
import miniTome from "../assets/motifs/mini-tome.svg?url";
|
||||
import miniTransmutation from "../assets/motifs/mini-transmutation.svg?url";
|
||||
import sevenMetals from "../assets/motifs/seven-metals-dipper.svg?url";
|
||||
import squaredCircle from "../assets/motifs/squared-circle-seal.svg?url";
|
||||
import transmutationStarPaths from "../assets/motifs/transmutation-seal-star-paths.svg?url";
|
||||
import transmutation from "../assets/motifs/transmutation-seal.svg?url";
|
||||
import triaPrima from "../assets/motifs/tria-prima-array-seal.svg?url";
|
||||
import zodiac from "../assets/motifs/zodiac-seal.svg?url";
|
||||
|
||||
export const seals = {
|
||||
astrolabe,
|
||||
"craft-dice": craftDice,
|
||||
"craft-leather": craftLeather,
|
||||
"craft-print": craftPrint,
|
||||
"filament-transmutation": filamentTransmutation,
|
||||
"kepler-nest": keplerNest,
|
||||
layered,
|
||||
"mini-astrolabe": miniAstrolabe,
|
||||
"mini-layered": miniLayered,
|
||||
"mini-tome": miniTome,
|
||||
"mini-transmutation": miniTransmutation,
|
||||
"seven-metals": sevenMetals,
|
||||
"squared-circle": squaredCircle,
|
||||
"transmutation-star-paths": transmutationStarPaths,
|
||||
transmutation,
|
||||
"tria-prima": triaPrima,
|
||||
zodiac,
|
||||
} as const;
|
||||
|
||||
export type SealName = keyof typeof seals;
|
||||
|
||||
export { filamentBanner };
|
||||
|
||||
/** Each page family's edge seal. A craft page uses its own craft seal. */
|
||||
export const pageSeals = {
|
||||
landing: "transmutation-star-paths",
|
||||
resume: "kepler-nest",
|
||||
work: "squared-circle",
|
||||
inquiries: "filament-transmutation",
|
||||
about: "astrolabe",
|
||||
library: "zodiac",
|
||||
shelf: "tria-prima",
|
||||
workshop: "craft-print",
|
||||
tabletop: "astrolabe",
|
||||
now: "zodiac",
|
||||
blog: "seven-metals",
|
||||
post: "filament-transmutation",
|
||||
store: "craft-dice",
|
||||
notFound: "zodiac",
|
||||
} as const satisfies Record<string, SealName>;
|
||||
|
||||
export type PageFamily = keyof typeof pageSeals;
|
||||
Reference in New Issue
Block a user