{"version":3,"file":"index.cjs","sources":["../../../../src/components/CardHorizontal/CardHorizontal.tsx"],"sourcesContent":["import { Badge } from '@/components/Badge';\nimport { Button } from '@/components/Button';\nimport { Container } from '@/components/Container';\nimport { Icon } from '@/components/Icon';\nimport { cn, cva } from '@/lib/cva';\nimport { openInNewTab } from '@/utils/url';\nimport { CardHorizontalProps } from './CardHorizontal.types';\nimport styles from './CardHorizontal.module.css';\n\nconst wrapperVariants = cva(styles.wrapper, {\n  variants: {\n    color: {\n      default: styles['wrapper_color_default'],\n      muted: styles['wrapper_color_muted'],\n    },\n    size: {\n      sm: styles['wrapper_size_sm'],\n      md: styles['wrapper_size_md'],\n    },\n    alignment: {\n      center: styles['wrapper_alignment_center'],\n      top: styles['wrapper_alignment_top'],\n    },\n    selectable: {\n      true: styles['wrapper_selectable'],\n    },\n    selected: {\n      true: styles['wrapper_selected'],\n    },\n    disabled: {\n      true: styles['wrapper_disabled'],\n    },\n  },\n  defaultVariants: {\n    color: 'default',\n    size: 'md',\n    alignment: 'center',\n  },\n});\n\nconst contentWrapperVariants = cva(styles.contentwrapper, {\n  variants: {\n    size: {\n      sm: styles['contentwrapper_size_sm'],\n      md: styles['contentwrapper_size_md'],\n    },\n  },\n  defaultVariants: { size: 'md' },\n});\n\nconst iconTextContentWrapperVariants = cva(styles.icontextcontentwrapper, {\n  variants: {\n    size: {\n      sm: styles['icontextcontentwrapper_size_sm'],\n      md: styles['icontextcontentwrapper_size_md'],\n    },\n    alignment: {\n      center: styles['icontextcontentwrapper_alignment_center'],\n      top: styles['icontextcontentwrapper_alignment_top'],\n    },\n  },\n  defaultVariants: { size: 'md', alignment: 'center' },\n});\n\nexport const CardHorizontal = ({\n  title,\n  icon,\n  description,\n  disabled = false,\n  infoText,\n  infoUrl,\n  isSelected,\n  isSelectable = infoText ? false : true,\n  children,\n  color = 'default',\n  size = 'md',\n  alignment = 'center',\n  badgeText,\n  badgeState,\n  badgeIcon,\n  badgeIconDir,\n  onButtonClick,\n  className,\n  ...props\n}: CardHorizontalProps) => {\n  const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n    if (disabled) {\n      e.preventDefault();\n      return;\n    }\n\n    if (typeof onButtonClick === 'function') {\n      onButtonClick(e);\n    }\n    if (infoUrl) {\n      openInNewTab(infoUrl);\n    }\n  };\n  const handleButtonClick = (e: React.MouseEvent<HTMLElement>) => {\n    e.stopPropagation();\n    handleClick(e);\n  };\n  return (\n    <div\n      tabIndex={disabled ? -1 : 0}\n      aria-disabled={disabled}\n      onClick={handleClick}\n      {...props}\n      className={cn(\n        wrapperVariants({\n          color,\n          size,\n          alignment,\n          selectable: isSelectable,\n          selected: isSelected,\n          disabled,\n        }),\n        className\n      )}\n    >\n      <div className={cn(contentWrapperVariants({ size }))}>\n        <div className={cn(iconTextContentWrapperVariants({ size, alignment }))}>\n          {icon && (\n            <Icon\n              name={icon}\n              aria-hidden\n              className={styles.cardicon}\n            />\n          )}\n          <Container\n            padding=\"none\"\n            orientation=\"vertical\"\n          >\n            {title && (\n              <Container\n                className={styles.header}\n                isResponsive={false}\n                gap=\"xs\"\n                justifyContent=\"space-between\"\n                fillWidth\n              >\n                <Container\n                  orientation=\"horizontal\"\n                  gap=\"xs\"\n                  isResponsive={false}\n                  fillWidth={false}\n                  grow=\"1\"\n                >\n                  {title}\n                </Container>\n                {badgeText && (\n                  <Container\n                    isResponsive={false}\n                    justifyContent=\"end\"\n                    fillWidth={false}\n                    data-testid=\"horizontal-card-badge\"\n                  >\n                    <Badge\n                      text={badgeText}\n                      size=\"md\"\n                      state={badgeState}\n                      icon={badgeIcon}\n                      iconDir={badgeIconDir}\n                    />\n                  </Container>\n                )}\n              </Container>\n            )}\n\n            {description && <div className={styles.description}>{description}</div>}\n            {children && <div className={styles.description}>{children}</div>}\n          </Container>\n        </div>\n        {infoText && (\n          <Container\n            justifyContent=\"end\"\n            fillWidth={false}\n            data-testid=\"horizontal-card-button\"\n          >\n            <Button\n              label={infoText}\n              onClick={handleButtonClick}\n              disabled={disabled}\n              fillWidth\n            />\n          </Container>\n        )}\n      </div>\n    </div>\n  );\n};\n"],"names":["cva","styles","openInNewTab","jsx","cn","jsxs","Icon","Container","Badge","Button"],"mappings":";;;;;;;;;;;;;;AASA,MAAM,eAAA,GAAkBA,0BAAA,CAAIC,6BAAA,CAAO,OAAA,EAAS;AAAA,EAC1C,QAAA,EAAU;AAAA,IACR,KAAA,EAAO;AAAA,MACL,OAAA,EAASA,8BAAO,uBAAuB,CAAA;AAAA,MACvC,KAAA,EAAOA,8BAAO,qBAAqB;AAAA,KACrC;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,EAAA,EAAIA,8BAAO,iBAAiB,CAAA;AAAA,MAC5B,EAAA,EAAIA,8BAAO,iBAAiB;AAAA,KAC9B;AAAA,IACA,SAAA,EAAW;AAAA,MACT,MAAA,EAAQA,8BAAO,0BAA0B,CAAA;AAAA,MACzC,GAAA,EAAKA,8BAAO,uBAAuB;AAAA,KACrC;AAAA,IACA,UAAA,EAAY;AAAA,MACV,IAAA,EAAMA,8BAAO,oBAAoB;AAAA,KACnC;AAAA,IACA,QAAA,EAAU;AAAA,MACR,IAAA,EAAMA,8BAAO,kBAAkB;AAAA,KACjC;AAAA,IACA,QAAA,EAAU;AAAA,MACR,IAAA,EAAMA,8BAAO,kBAAkB;AAAA;AACjC,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,KAAA,EAAO,SAAA;AAAA,IACP,IAAA,EAAM,IAAA;AAAA,IACN,SAAA,EAAW;AAAA;AAEf,CAAC,CAAA;AAED,MAAM,sBAAA,GAAyBD,0BAAA,CAAIC,6BAAA,CAAO,cAAA,EAAgB;AAAA,EACxD,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,EAAA,EAAIA,8BAAO,wBAAwB,CAAA;AAAA,MACnC,EAAA,EAAIA,8BAAO,wBAAwB;AAAA;AACrC,GACF;AAAA,EACA,eAAA,EAAiB,EAAE,IAAA,EAAM,IAAA;AAC3B,CAAC,CAAA;AAED,MAAM,8BAAA,GAAiCD,0BAAA,CAAIC,6BAAA,CAAO,sBAAA,EAAwB;AAAA,EACxE,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,EAAA,EAAIA,8BAAO,gCAAgC,CAAA;AAAA,MAC3C,EAAA,EAAIA,8BAAO,gCAAgC;AAAA,KAC7C;AAAA,IACA,SAAA,EAAW;AAAA,MACT,MAAA,EAAQA,8BAAO,yCAAyC,CAAA;AAAA,MACxD,GAAA,EAAKA,8BAAO,sCAAsC;AAAA;AACpD,GACF;AAAA,EACA,eAAA,EAAiB,EAAE,IAAA,EAAM,IAAA,EAAM,WAAW,QAAA;AAC5C,CAAC,CAAA;AAEM,MAAM,iBAAiB,CAAC;AAAA,EAC7B,KAAA;AAAA,EACA,IAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA,GAAW,KAAA;AAAA,EACX,QAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,YAAA,GAAe,WAAW,KAAA,GAAQ,IAAA;AAAA,EAClC,QAAA;AAAA,EACA,KAAA,GAAQ,SAAA;AAAA,EACR,IAAA,GAAO,IAAA;AAAA,EACP,SAAA,GAAY,QAAA;AAAA,EACZ,SAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,KAA2B;AACzB,EAAA,MAAM,WAAA,GAAc,CAAC,CAAA,KAAqC;AACxD,IAAA,IAAI,QAAA,EAAU;AACZ,MAAA,CAAA,CAAE,cAAA,EAAe;AACjB,MAAA;AAAA,IACF;AAEA,IAAA,IAAI,OAAO,kBAAkB,UAAA,EAAY;AACvC,MAAA,aAAA,CAAc,CAAC,CAAA;AAAA,IACjB;AACA,IAAA,IAAI,OAAA,EAAS;AACX,MAAAC,gBAAA,CAAa,OAAO,CAAA;AAAA,IACtB;AAAA,EACF,CAAA;AACA,EAAA,MAAM,iBAAA,GAAoB,CAAC,CAAA,KAAqC;AAC9D,IAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,IAAA,WAAA,CAAY,CAAC,CAAA;AAAA,EACf,CAAA;AACA,EAAA,uBACEC,cAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,QAAA,EAAU,WAAW,EAAA,GAAK,CAAA;AAAA,MAC1B,eAAA,EAAe,QAAA;AAAA,MACf,OAAA,EAAS,WAAA;AAAA,MACR,GAAG,KAAA;AAAA,MACJ,SAAA,EAAWC,MAAA;AAAA,QACT,eAAA,CAAgB;AAAA,UACd,KAAA;AAAA,UACA,IAAA;AAAA,UACA,SAAA;AAAA,UACA,UAAA,EAAY,YAAA;AAAA,UACZ,QAAA,EAAU,UAAA;AAAA,UACV;AAAA,SACD,CAAA;AAAA,QACD;AAAA,OACF;AAAA,MAEA,QAAA,kBAAAC,eAAA,CAAC,SAAI,SAAA,EAAWD,MAAA,CAAG,uBAAuB,EAAE,IAAA,EAAM,CAAC,CAAA,EACjD,QAAA,EAAA;AAAA,wBAAAC,eAAA,CAAC,KAAA,EAAA,EAAI,WAAWD,MAAA,CAAG,8BAAA,CAA+B,EAAE,IAAA,EAAM,SAAA,EAAW,CAAC,CAAA,EACnE,QAAA,EAAA;AAAA,UAAA,IAAA,oBACCD,cAAA;AAAA,YAACG,SAAA;AAAA,YAAA;AAAA,cACC,IAAA,EAAM,IAAA;AAAA,cACN,aAAA,EAAW,IAAA;AAAA,cACX,WAAWL,6BAAA,CAAO;AAAA;AAAA,WACpB;AAAA,0BAEFI,eAAA;AAAA,YAACE,mBAAA;AAAA,YAAA;AAAA,cACC,OAAA,EAAQ,MAAA;AAAA,cACR,WAAA,EAAY,UAAA;AAAA,cAEX,QAAA,EAAA;AAAA,gBAAA,KAAA,oBACCF,eAAA;AAAA,kBAACE,mBAAA;AAAA,kBAAA;AAAA,oBACC,WAAWN,6BAAA,CAAO,MAAA;AAAA,oBAClB,YAAA,EAAc,KAAA;AAAA,oBACd,GAAA,EAAI,IAAA;AAAA,oBACJ,cAAA,EAAe,eAAA;AAAA,oBACf,SAAA,EAAS,IAAA;AAAA,oBAET,QAAA,EAAA;AAAA,sCAAAE,cAAA;AAAA,wBAACI,mBAAA;AAAA,wBAAA;AAAA,0BACC,WAAA,EAAY,YAAA;AAAA,0BACZ,GAAA,EAAI,IAAA;AAAA,0BACJ,YAAA,EAAc,KAAA;AAAA,0BACd,SAAA,EAAW,KAAA;AAAA,0BACX,IAAA,EAAK,GAAA;AAAA,0BAEJ,QAAA,EAAA;AAAA;AAAA,uBACH;AAAA,sBACC,SAAA,oBACCJ,cAAA;AAAA,wBAACI,mBAAA;AAAA,wBAAA;AAAA,0BACC,YAAA,EAAc,KAAA;AAAA,0BACd,cAAA,EAAe,KAAA;AAAA,0BACf,SAAA,EAAW,KAAA;AAAA,0BACX,aAAA,EAAY,uBAAA;AAAA,0BAEZ,QAAA,kBAAAJ,cAAA;AAAA,4BAACK,WAAA;AAAA,4BAAA;AAAA,8BACC,IAAA,EAAM,SAAA;AAAA,8BACN,IAAA,EAAK,IAAA;AAAA,8BACL,KAAA,EAAO,UAAA;AAAA,8BACP,IAAA,EAAM,SAAA;AAAA,8BACN,OAAA,EAAS;AAAA;AAAA;AACX;AAAA;AACF;AAAA;AAAA,iBAEJ;AAAA,gBAGD,+BAAeL,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAWF,6BAAA,CAAO,aAAc,QAAA,EAAA,WAAA,EAAY,CAAA;AAAA,gBAChE,4BAAYE,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAWF,6BAAA,CAAO,aAAc,QAAA,EAAS;AAAA;AAAA;AAAA;AAC7D,SAAA,EACF,CAAA;AAAA,QACC,QAAA,oBACCE,cAAA;AAAA,UAACI,mBAAA;AAAA,UAAA;AAAA,YACC,cAAA,EAAe,KAAA;AAAA,YACf,SAAA,EAAW,KAAA;AAAA,YACX,aAAA,EAAY,wBAAA;AAAA,YAEZ,QAAA,kBAAAJ,cAAA;AAAA,cAACM,aAAA;AAAA,cAAA;AAAA,gBACC,KAAA,EAAO,QAAA;AAAA,gBACP,OAAA,EAAS,iBAAA;AAAA,gBACT,QAAA;AAAA,gBACA,SAAA,EAAS;AAAA;AAAA;AACX;AAAA;AACF,OAAA,EAEJ;AAAA;AAAA,GACF;AAEJ;;"}