UNPKG

xlibs-components

Version:

Modern React component library with Aceternity, MagicUI, and ShadCN components for building beautiful web applications

44 lines (43 loc) 2.74 kB
// Component Metadata Index // This file exports all component metadata for design tools and auto layout systems // UI Components export { cardMetadata, cardHeaderMetadata, cardContentMetadata, cardFooterMetadata } from "../components/ui/card"; export { buttonMetadata } from "../components/ui/button"; export { bentoBoxMetadata, bentoCardMetadata } from "../components/ui/bento-box"; export { calendar02Metadata } from "../components/ui/calendar-02"; export { calendar22Metadata } from "../components/ui/calendar-22"; export { calendar24Metadata } from "../components/ui/calendar-24"; // MagicUI Components export { magicCardMetadata, magicCardHeaderMetadata, magicCardContentMetadata } from "../components/magicui/magic-card"; export { shinyButtonMetadata } from "../components/magicui/shiny-button"; // Metadata Registry for Tooling export const componentMetadataRegistry = { // UI Components "Card": await import("../components/ui/card").then(m => m.cardMetadata), "CardHeader": await import("../components/ui/card").then(m => m.cardHeaderMetadata), "CardContent": await import("../components/ui/card").then(m => m.cardContentMetadata), "CardFooter": await import("../components/ui/card").then(m => m.cardFooterMetadata), "Button": await import("../components/ui/button").then(m => m.buttonMetadata), "BentoBox": await import("../components/ui/bento-box").then(m => m.bentoBoxMetadata), "BentoCard": await import("../components/ui/bento-box").then(m => m.bentoCardMetadata), "Calendar02": await import("../components/ui/calendar-02").then(m => m.calendar02Metadata), "Calendar22": await import("../components/ui/calendar-22").then(m => m.calendar22Metadata), "Calendar24": await import("../components/ui/calendar-24").then(m => m.calendar24Metadata), // MagicUI Components "MagicCard": await import("../components/magicui/magic-card").then(m => m.magicCardMetadata), "MagicCardHeader": await import("../components/magicui/magic-card").then(m => m.magicCardHeaderMetadata), "MagicCardContent": await import("../components/magicui/magic-card").then(m => m.magicCardContentMetadata), "ShinyButton": await import("../components/magicui/shiny-button").then(m => m.shinyButtonMetadata), }; // Utility function to get metadata by component name export function getComponentMetadata(componentName) { return componentMetadataRegistry[componentName]; } // Get all available component names export function getAvailableComponents() { return Object.keys(componentMetadataRegistry); } // Get components by layout hint export function getComponentsByLayoutHint(hint) { return Object.values(componentMetadataRegistry).filter(metadata => metadata.layoutHints?.includes(hint)); }