{"version":3,"sources":["../src/AvatarLogoLockup/AvatarLogoLockup.tsx"],"sourcesContent":["import * as React from 'react';\nimport { ChevronDown } from 'lucide-react';\nimport { Avatar } from '../Avatar';\nimport { Logo } from '../Logo';\n\nexport interface AvatarLogoLockupProps {\n  /**\n   * Image source URL for the avatar\n   */\n  avatarSrc?: string;\n  /**\n   * Initials to display in avatar when no image is provided\n   */\n  avatarInitials?: string;\n  /**\n   * Alt text for the avatar image\n   */\n  avatarAlt?: string;\n  /**\n   * Click handler for the avatar section\n   */\n  onAvatarClick?: () => void;\n  /**\n   * Click handler for the logo section\n   */\n  onLogoClick?: () => void;\n  /**\n   * Custom className\n   */\n  className?: string;\n  /**\n   * Custom style\n   */\n  style?: React.CSSProperties;\n}\n\n/**\n * AvatarLogoLockup component - Arbor Design System\n *\n * A navigation component combining user avatar with Arbor logo,\n * typically used in the top navigation bar.\n */\nexport const AvatarLogoLockup = React.forwardRef<HTMLDivElement, AvatarLogoLockupProps>(\n  (\n    {\n      avatarSrc,\n      avatarInitials,\n      avatarAlt = 'User avatar',\n      onAvatarClick,\n      onLogoClick,\n      className,\n      style,\n    },\n    ref\n  ) => {\n    const [isHovered, setIsHovered] = React.useState(false);\n\n    const containerStyles: React.CSSProperties = {\n      display: 'inline-flex',\n      alignItems: 'center',\n      gap: '4px',\n      padding: '4px',\n      height: '40px',\n      backgroundColor: isHovered ? '#f8f8f8' : '#ffffff',\n      border: '1px solid #efefef',\n      borderRadius: '99px',\n      fontFamily: \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\",\n      boxSizing: 'border-box',\n      transition: 'background-color 0.15s ease-in-out',\n      ...style,\n    };\n\n    const avatarSectionStyles: React.CSSProperties = {\n      display: 'flex',\n      alignItems: 'center',\n      gap: '4px',\n      borderRadius: '99px',\n      cursor: onAvatarClick ? 'pointer' : 'default',\n      backgroundColor: 'transparent',\n      border: 'none',\n      padding: 0,\n    };\n\n    const dividerStyles: React.CSSProperties = {\n      width: '1px',\n      height: '24px',\n      backgroundColor: '#efefef',\n      flexShrink: 0,\n    };\n\n    const logoSectionStyles: React.CSSProperties = {\n      display: 'flex',\n      alignItems: 'center',\n      cursor: onLogoClick ? 'pointer' : 'default',\n      padding: 0,\n    };\n\n    const AvatarSection = onAvatarClick ? 'button' : 'div';\n    const LogoSection = onLogoClick ? 'button' : 'div';\n\n    return (\n      <div\n        ref={ref}\n        className={className}\n        style={containerStyles}\n        onMouseEnter={() => setIsHovered(true)}\n        onMouseLeave={() => setIsHovered(false)}\n      >\n        <AvatarSection\n          style={{\n            ...avatarSectionStyles,\n            ...(onAvatarClick ? { outline: 'none' } : {}),\n          }}\n          onClick={onAvatarClick}\n          {...(onAvatarClick ? { type: 'button' } : {})}\n        >\n          <Avatar\n            size=\"medium\"\n            src={avatarSrc}\n            initials={avatarInitials}\n            alt={avatarAlt}\n          />\n          <ChevronDown size={12} color=\"#2f2f2f\" strokeWidth={2} />\n        </AvatarSection>\n\n        <div style={dividerStyles} />\n\n        <LogoSection\n          style={{\n            ...logoSectionStyles,\n            ...(onLogoClick ? { outline: 'none', backgroundColor: 'transparent', border: 'none' } : {}),\n          }}\n          onClick={onLogoClick}\n          {...(onLogoClick ? { type: 'button' } : {})}\n        >\n          <Logo withText={true} light={true} height={25} />\n        </LogoSection>\n      </div>\n    );\n  }\n);\n\nAvatarLogoLockup.displayName = 'AvatarLogoLockup';\n"],"mappings":";;;;;;;;AAAA,YAAY,WAAW;AACvB,SAAS,mBAAmB;AA2GpB,SAQE,KARF;AAlED,IAAM,mBAAyB;AAAA,EACpC,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GACA,QACG;AACH,UAAM,CAAC,WAAW,YAAY,IAAU,eAAS,KAAK;AAEtD,UAAM,kBAAuC;AAAA,MAC3C,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,KAAK;AAAA,MACL,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,iBAAiB,YAAY,YAAY;AAAA,MACzC,QAAQ;AAAA,MACR,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,YAAY;AAAA,MACZ,GAAG;AAAA,IACL;AAEA,UAAM,sBAA2C;AAAA,MAC/C,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,KAAK;AAAA,MACL,cAAc;AAAA,MACd,QAAQ,gBAAgB,YAAY;AAAA,MACpC,iBAAiB;AAAA,MACjB,QAAQ;AAAA,MACR,SAAS;AAAA,IACX;AAEA,UAAM,gBAAqC;AAAA,MACzC,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,iBAAiB;AAAA,MACjB,YAAY;AAAA,IACd;AAEA,UAAM,oBAAyC;AAAA,MAC7C,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,QAAQ,cAAc,YAAY;AAAA,MAClC,SAAS;AAAA,IACX;AAEA,UAAM,gBAAgB,gBAAgB,WAAW;AACjD,UAAM,cAAc,cAAc,WAAW;AAE7C,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,OAAO;AAAA,QACP,cAAc,MAAM,aAAa,IAAI;AAAA,QACrC,cAAc,MAAM,aAAa,KAAK;AAAA,QAEtC;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,OAAO;AAAA,gBACL,GAAG;AAAA,gBACH,GAAI,gBAAgB,EAAE,SAAS,OAAO,IAAI,CAAC;AAAA,cAC7C;AAAA,cACA,SAAS;AAAA,cACR,GAAI,gBAAgB,EAAE,MAAM,SAAS,IAAI,CAAC;AAAA,cAE3C;AAAA;AAAA,kBAAC;AAAA;AAAA,oBACC,MAAK;AAAA,oBACL,KAAK;AAAA,oBACL,UAAU;AAAA,oBACV,KAAK;AAAA;AAAA,gBACP;AAAA,gBACA,oBAAC,eAAY,MAAM,IAAI,OAAM,WAAU,aAAa,GAAG;AAAA;AAAA;AAAA,UACzD;AAAA,UAEA,oBAAC,SAAI,OAAO,eAAe;AAAA,UAE3B;AAAA,YAAC;AAAA;AAAA,cACC,OAAO;AAAA,gBACL,GAAG;AAAA,gBACH,GAAI,cAAc,EAAE,SAAS,QAAQ,iBAAiB,eAAe,QAAQ,OAAO,IAAI,CAAC;AAAA,cAC3F;AAAA,cACA,SAAS;AAAA,cACR,GAAI,cAAc,EAAE,MAAM,SAAS,IAAI,CAAC;AAAA,cAEzC,8BAAC,QAAK,UAAU,MAAM,OAAO,MAAM,QAAQ,IAAI;AAAA;AAAA,UACjD;AAAA;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;AAEA,iBAAiB,cAAc;","names":[]}