2026-10-05 14:22:28 -04:00
|
|
|
/**
|
|
|
|
|
* Project MDX components, available on every page with no import, and layout
|
|
|
|
|
* slot overrides. Static `.astro` files ship no framework JS (a custom element
|
|
|
|
|
* carries any behaviour); interactive React lives in `islands/` instead.
|
|
|
|
|
*/
|
|
|
|
|
import { defineComponents } from "blume";
|
|
|
|
|
|
|
|
|
|
export default defineComponents({
|
|
|
|
|
mdx: {
|
|
|
|
|
Carousel: "./components/Carousel.astro",
|
|
|
|
|
CarouselImage: "./components/CarouselImage.astro",
|
|
|
|
|
// MDX's own content wrapper: problem pages' topic + explanation badges, from
|
|
|
|
|
// `topics:` / `video:` frontmatter, between the description and the body.
|
|
|
|
|
wrapper: "./components/ProblemBadges.astro",
|
|
|
|
|
},
|
|
|
|
|
layout: {
|
|
|
|
|
// Topic landing pages' "what links here": every problem pointing at the page.
|
|
|
|
|
PageFooter: "./components/BacklinksList.astro",
|
2026-10-07 12:58:59 -04:00
|
|
|
// Content-source selector + pinned links above the nav tree, scoped to the
|
|
|
|
|
// active source (sources.ts).
|
|
|
|
|
Sidebar: "./components/SourceSidebar.astro",
|
2026-10-05 14:22:28 -04:00
|
|
|
},
|
|
|
|
|
});
|