import { LayoutComponentDefinition, LayoutContext, } from "vibentec/component-map" import { clx } from "@medusajs/ui" import BannerNav from "./banner-nav" import BannerCTA from "./banner-cta" import BannerTicker from "./banner-ticker" interface BannerProps { variant: "nav" | "cta" | "ticker" className?: string speed?: number } export default async function Banner({ nodes, context, }: { nodes: LayoutComponentDefinition context: LayoutContext }) { const props = (nodes.config as BannerProps) ?? {} const bannerClassName = clx( "relative h-8 mx-auto border-b duration-200 bg-white border-ui-border-base", props.className ) if (!props.variant) return null const variants = { nav: BannerNav, cta: BannerCTA, ticker: BannerTicker, } const Component = variants[props.variant] return (
) }