{"version":3,"file":"index8.cjs","sources":["../src/components/section-message/index.tsx"],"sourcesContent":["import { FunctionComponent, ReactNode } from \"react\";\nimport styles from \"./SectionMessage.module.css\";\nimport { Link, LinkType } from \"../links\";\nimport {\n  LabelPairedXmarkCaptionBoldIcon,\n  StandaloneCircleCheckBoldIcon,\n  StandaloneCircleExclamationBoldIcon,\n  StandaloneCircleInfoBoldIcon,\n  StandalonePlaceholderBoldIcon,\n  StandaloneTriangleExclamationBoldIcon,\n} from \"@deriv/quill-icons\";\nimport IconButton from \"../buttons/icon\";\nimport { BaseButtonType } from \"../buttons/base\";\nimport { BasicButton } from \"../buttons/basic\";\nexport type SectionMessageType = {\n  className?: string;\n  message?: string;\n  title?: string;\n  icon?: string;\n  showIcon?: boolean;\n  showCloseButton?: boolean;\n  buttonPrimary?: BaseButtonType;\n  buttonSecondary?: BaseButtonType;\n  onClickClose?: () => void;\n\n  /** Variant props */\n  indicator?: \"danger\" | \"warning\" | \"success\" | \"information\" | \"default\";\n  size?: \"sm\" | \"md\";\n\n  /** Custom props */\n  customIcon?: ReactNode;\n  link1?: Omit<LinkType, \"color\">;\n  link2?: Omit<LinkType, \"color\">;\n};\n\nexport const SectionMessage: FunctionComponent<SectionMessageType> = ({\n  className = \"\",\n  indicator = \"danger\",\n  size = \"sm\",\n  message = \"\",\n  title = \"\",\n  customIcon,\n  showIcon = true,\n  showCloseButton = false,\n  link1,\n  link2,\n  buttonPrimary,\n  buttonSecondary,\n  onClickClose,\n}) => {\n  const sectionMessageId = `quill-section-message-${indicator}-${size}`;\n\n  const defaultIcons = {\n    danger: StandaloneTriangleExclamationBoldIcon,\n    warning: StandaloneCircleExclamationBoldIcon,\n    success: StandaloneCircleCheckBoldIcon,\n    information: StandaloneCircleInfoBoldIcon,\n    default: StandalonePlaceholderBoldIcon,\n  } as const;\n\n  const IconComponent = defaultIcons[indicator] as React.ComponentType;\n\n  return (\n    <div\n      className={[styles.root, \"quill-ui-next-component\", className].join(\" \")}\n      data-id={sectionMessageId}\n      data-indicator={indicator}\n      data-size={size}\n    >\n      {showIcon && (\n        <div className={styles.fixIcon}>\n          {indicator === \"default\" && customIcon\n            ? customIcon\n            : IconComponent && (\n                // @ts-ignore\n                <IconComponent iconSize={size === \"md\" ? \"md\" : \"sm\"} />\n              )}\n        </div>\n      )}\n      <div className={styles.titleMessageButtons}>\n        <div className={styles.titleMessage}>\n          {title && <b className={styles.title}>{title}</b>}\n          <div className={styles.containerMessage}>\n            <div\n              className={`${styles.message} ${\n                !title ? styles.noTitleMessage : \"\"\n              }`}\n            >\n              {message}\n            </div>\n          </div>\n        </div>\n        {link1 ? (\n          <div className={styles.link1Link2}>\n            <Link {...link1} size={size} color=\"blackWhite\" />\n            {link2 && <Link {...link2} size={size} color=\"blackWhite\" />}\n          </div>\n        ) : (\n          <div className={styles.buttonContainer}>\n            {buttonPrimary && (\n              <BasicButton\n                {...buttonPrimary}\n                style=\"secondary\"\n                color=\"blackWhite\"\n              />\n            )}\n            {buttonSecondary && (\n              <BasicButton\n                {...buttonSecondary}\n                style=\"primary\"\n                color=\"blackWhite\"\n                size={size === \"md\" ? \"md\" : \"sm\"}\n              />\n            )}\n          </div>\n        )}\n      </div>\n      {showCloseButton && (\n        <IconButton\n          color=\"blackWhite\"\n          icon={<LabelPairedXmarkCaptionBoldIcon />}\n          style=\"tertiary\"\n          onClick={onClickClose}\n        />\n      )}\n    </div>\n  );\n};\n\nSectionMessage.displayName = \"SectionMessage\";\n\nexport default SectionMessage;\n"],"names":["StandaloneTriangleExclamationBoldIcon","StandaloneCircleExclamationBoldIcon","StandaloneCircleCheckBoldIcon","StandaloneCircleInfoBoldIcon","StandalonePlaceholderBoldIcon","jsxs","styles","jsx","Link","BasicButton","IconButton","LabelPairedXmarkCaptionBoldIcon"],"mappings":";;;;;;;;AAmCO,MAAM,iBAAwD,CAAC;AAAA,EACpE,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ;AAAA,EACR;AAAA,EACA,WAAW;AAAA,EACX,kBAAkB;AAAA,EAClB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,mBAAmB,yBAAyB,SAAS,IAAI,IAAI;AAEnE,QAAM,eAAe;AAAA,IACnB,QAAQA,WAAA;AAAA,IACR,SAASC,WAAA;AAAA,IACT,SAASC,WAAA;AAAA,IACT,aAAaC,WAAA;AAAA,IACb,SAASC,WAAAA;AAAAA,EACX;AAEM,QAAA,gBAAgB,aAAa,SAAS;AAG1C,SAAAC,2BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW,CAACC,sBAAAA,QAAO,MAAM,2BAA2B,SAAS,EAAE,KAAK,GAAG;AAAA,MACvE,WAAS;AAAA,MACT,kBAAgB;AAAA,MAChB,aAAW;AAAA,MAEV,UAAA;AAAA,QACC,YAAAC,2BAAA,IAAC,SAAI,WAAWD,sBAAA,QAAO,SACpB,UAAc,cAAA,aAAa,aACxB,aACA;AAAA,uCAEG,eAAc,EAAA,UAAU,SAAS,OAAO,OAAO,KAAM,CAAA,GAE9D;AAAA,QAEDD,2BAAA,KAAA,OAAA,EAAI,WAAWC,sBAAAA,QAAO,qBACrB,UAAA;AAAA,UAACD,2BAAA,KAAA,OAAA,EAAI,WAAWC,sBAAAA,QAAO,cACpB,UAAA;AAAA,YAAA,SAAUC,2BAAAA,IAAA,KAAA,EAAE,WAAWD,sBAAAA,QAAO,OAAQ,UAAM,OAAA;AAAA,YAC5CC,2BAAA,IAAA,OAAA,EAAI,WAAWD,sBAAAA,QAAO,kBACrB,UAAAC,2BAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,WAAW,GAAGD,sBAAO,QAAA,OAAO,IAC1B,CAAC,QAAQA,sBAAO,QAAA,iBAAiB,EACnC;AAAA,gBAEC,UAAA;AAAA,cAAA;AAAA,YAAA,EAEL,CAAA;AAAA,UAAA,GACF;AAAA,UACC,QACCD,2BAAA,KAAC,OAAI,EAAA,WAAWC,8BAAO,YACrB,UAAA;AAAA,YAAAC,2BAAA,IAACC,MAAM,MAAA,EAAA,GAAG,OAAO,MAAY,OAAM,cAAa;AAAA,YAC/C,SAAUD,2BAAA,IAAAC,YAAA,EAAM,GAAG,OAAO,MAAY,OAAM,aAAa,CAAA;AAAA,UAAA,EAC5D,CAAA,IAEAH,2BAAAA,KAAC,OAAI,EAAA,WAAWC,8BAAO,iBACpB,UAAA;AAAA,YACC,iBAAAC,2BAAA;AAAA,cAACE,QAAA;AAAA,cAAA;AAAA,gBACE,GAAG;AAAA,gBACJ,OAAM;AAAA,gBACN,OAAM;AAAA,cAAA;AAAA,YACR;AAAA,YAED,mBACCF,2BAAA;AAAA,cAACE,QAAA;AAAA,cAAA;AAAA,gBACE,GAAG;AAAA,gBACJ,OAAM;AAAA,gBACN,OAAM;AAAA,gBACN,MAAM,SAAS,OAAO,OAAO;AAAA,cAAA;AAAA,YAAA;AAAA,UAC/B,EAEJ,CAAA;AAAA,QAAA,GAEJ;AAAA,QACC,mBACCF,2BAAA;AAAA,UAACG,QAAA;AAAA,UAAA;AAAA,YACC,OAAM;AAAA,YACN,qCAAOC,WAAgC,iCAAA,EAAA;AAAA,YACvC,OAAM;AAAA,YACN,SAAS;AAAA,UAAA;AAAA,QAAA;AAAA,MACX;AAAA,IAAA;AAAA,EAEJ;AAEJ;AAEA,eAAe,cAAc;;;"}