{"version":3,"file":"user-card.mjs","sources":["../../src/entities/user-card.tsx"],"sourcesContent":["import * as React from \"react\"\nimport {\n  Card,\n  CardHeader,\n  CardTitle,\n  CardDescription,\n  CardFooter\n} from \"../components/card\"\nimport { Button } from \"../components/button\"\nimport { cn } from \"../lib/utils\"\n\nexport interface UserCardProps extends React.HTMLAttributes<HTMLDivElement> {\n  name: string\n  description?: string\n  avatar?: string\n  onAction?: () => void\n  actionLabel?: string\n}\n\nconst UserCard = React.forwardRef<HTMLDivElement, UserCardProps>(\n  (\n    {\n      className,\n      name,\n      description,\n      avatar,\n      onAction,\n      actionLabel = \"View Profile\",\n      ...props\n    },\n    ref\n  ) => {\n    return (\n      <Card ref={ref} className={cn(\"w-[350px]\", className)} {...props}>\n        <CardHeader>\n          <div className=\"flex items-center gap-4\">\n            {avatar && (\n              <div className=\"h-12 w-12 rounded-full overflow-hidden bg-muted\">\n                <img\n                  src={avatar}\n                  alt={name}\n                  className=\"h-full w-full object-cover\"\n                />\n              </div>\n            )}\n            {!avatar && (\n              <div className=\"h-12 w-12 rounded-full bg-muted flex items-center justify-center\">\n                <span className=\"text-lg font-semibold\">\n                  {name.charAt(0).toUpperCase()}\n                </span>\n              </div>\n            )}\n            <div className=\"flex-1\">\n              <CardTitle>{name}</CardTitle>\n              {description && <CardDescription>{description}</CardDescription>}\n            </div>\n          </div>\n        </CardHeader>\n        {onAction && (\n          <CardFooter>\n            <Button className=\"w-full\" onClick={onAction}>\n              {actionLabel}\n            </Button>\n          </CardFooter>\n        )}\n      </Card>\n    )\n  }\n)\nUserCard.displayName = \"UserCard\"\n\nexport { UserCard }\n"],"names":["UserCard","React","className","name","description","avatar","onAction","actionLabel","props","ref","jsxs","Card","cn","jsx","CardHeader","CardTitle","CardDescription","CardFooter","Button"],"mappings":";;;;;AAmBA,MAAMA,IAAWC,EAAM;AAAA,EACrB,CACE;AAAA,IACE,WAAAC;AAAA,IACA,MAAAC;AAAA,IACA,aAAAC;AAAA,IACA,QAAAC;AAAA,IACA,UAAAC;AAAA,IACA,aAAAC,IAAc;AAAA,IACd,GAAGC;AAAA,EAAA,GAELC,MAGE,gBAAAC,EAACC,KAAK,KAAAF,GAAU,WAAWG,EAAG,aAAaV,CAAS,GAAI,GAAGM,GACzD,UAAA;AAAA,IAAA,gBAAAK,EAACC,GAAA,EACC,UAAA,gBAAAJ,EAAC,OAAA,EAAI,WAAU,2BACZ,UAAA;AAAA,MAAAL,KACC,gBAAAQ,EAAC,OAAA,EAAI,WAAU,mDACb,UAAA,gBAAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAKR;AAAA,UACL,KAAKF;AAAA,UACL,WAAU;AAAA,QAAA;AAAA,MAAA,GAEd;AAAA,MAED,CAACE,KACA,gBAAAQ,EAAC,OAAA,EAAI,WAAU,oEACb,UAAA,gBAAAA,EAAC,QAAA,EAAK,WAAU,yBACb,YAAK,OAAO,CAAC,EAAE,eAClB,GACF;AAAA,MAEF,gBAAAH,EAAC,OAAA,EAAI,WAAU,UACb,UAAA;AAAA,QAAA,gBAAAG,EAACE,KAAW,UAAAZ,EAAA,CAAK;AAAA,QAChBC,KAAe,gBAAAS,EAACG,GAAA,EAAiB,UAAAZ,EAAA,CAAY;AAAA,MAAA,EAAA,CAChD;AAAA,IAAA,EAAA,CACF,EAAA,CACF;AAAA,IACCE,KACC,gBAAAO,EAACI,GAAA,EACC,UAAA,gBAAAJ,EAACK,GAAA,EAAO,WAAU,UAAS,SAASZ,GACjC,UAAAC,EAAA,CACH,EAAA,CACF;AAAA,EAAA,GAEJ;AAGN;AACAP,EAAS,cAAc;"}