import Link from 'next/link' import type { ReactNode } from 'react' import { Badge, cn, NavMenu, NavMenuItem } from 'ui' import { PageHeader, PageHeaderDescription, PageHeaderIcon, PageHeaderMeta, PageHeaderNavigationTabs, PageHeaderSummary, PageHeaderTitle, } from 'ui-patterns' import { getMarketplaceSource, MarketplaceSourceBadge } from './Marketplace.constants' import { IntegrationLogo } from '@/components/interfaces/Integrations/Integration/IntegrationLogo' import type { IntegrationDefinition } from '@/components/interfaces/Integrations/Landing/Integrations.constants' interface MarketplaceDetailHeroProps { integration: IntegrationDefinition title: string subtitle?: ReactNode tabs: Array<{ label: string; href: string; active: boolean }> } interface BadgesComponentProps { className?: string source: ReturnType integration: IntegrationDefinition } const BadgesComponent = ({ className, source, integration }: BadgesComponentProps) => { return (
{integration.status && {integration.status}}
) } export const MarketplaceDetailHero = ({ integration, title, subtitle, tabs, }: MarketplaceDetailHeroProps) => { const source = getMarketplaceSource(integration) return (
{title}
{subtitle}
{subtitle}
{tabs.length > 0 && ( {tabs.map((tab) => ( {tab.label} ))} )}
) }