// @subframe/sync-disable "use client"; /* * Documentation: * ProjectCard — https://app.subframe.com/f023064a5ca0/library?component=ProjectCard_f82a72d5-da31-4d61-b47b-6b6ebd18ff67 */ import React from "react"; import { FeatherCalendarClock } from "@subframe/core"; import { FeatherFlag } from "@subframe/core"; import { FeatherPlayCircle } from "@subframe/core"; import * as SubframeUtils from "../../utils"; export interface PriorityIndicatorProps extends React.HTMLAttributes { variant?: "none" | "low" | "medium" | "high" | "critical"; className?: string; } const PriorityIndicator = React.forwardRef< HTMLDivElement, PriorityIndicatorProps >(function PriorityIndicator( { variant = "none", className, ...otherProps }: PriorityIndicatorProps, ref ) { return (
); }); export interface PriorityBadgeProps extends React.HTMLAttributes { variant?: "none" | "low" | "medium" | "high" | "critical"; className?: string; } const PriorityBadge = React.forwardRef( function PriorityBadge( { variant = "none", className, ...otherProps }: PriorityBadgeProps, ref ) { return ( ); } ); export interface ProjectCardRootProps extends Omit, "title"> { title?: React.ReactNode; subtitle?: React.ReactNode; tags?: React.ReactNode; price?: React.ReactNode; priorityLabel?: React.ReactNode; avatar?: React.ReactNode; startDate?: React.ReactNode; endDate?: React.ReactNode; appointmentLabel?: React.ReactNode; secondAppointmentLabel?: React.ReactNode; variant?: "none" | "low" | "medium" | "high" | "critical"; hideBadge?: boolean; hideIndicator?: boolean; hideAvatar?: boolean; hideDateRange?: boolean; hideAppointment?: boolean; hideSecondAppointment?: boolean; className?: string; } const ProjectCardRoot = React.forwardRef( function ProjectCardRoot( { title, subtitle, tags, price, priorityLabel, avatar, startDate, endDate, appointmentLabel, secondAppointmentLabel, variant = "none", hideBadge = false, hideIndicator = false, hideAvatar = false, hideDateRange = false, hideAppointment = false, hideSecondAppointment = false, className, ...otherProps }: ProjectCardRootProps, ref ) { return (
{title ? ( {title} ) : null} {subtitle ? ( {subtitle} ) : null}
{tags ? (
{tags}
) : null}
{price ? ( {price} ) : null}
{avatar ? (
{avatar}
) : null}
{startDate ? ( {startDate} ) : null}
{endDate ? ( {endDate} ) : null}
{appointmentLabel ? ( {appointmentLabel} ) : null}
{secondAppointmentLabel ? (
{secondAppointmentLabel}
) : null}
); } ); export const ProjectCard = Object.assign(ProjectCardRoot, { PriorityIndicator, PriorityBadge, });