{
  "version": 3,
  "sources": ["../../../src/utils/transactions/getScamFlag.ts"],
  "sourcesContent": ["import * as linkify from 'linkifyjs';\nimport {\n  SuspiciousLinkType,\n  SuspiciousLinkPropsType,\n  TextWithLinksType\n} from 'types/suspiciousLink.types';\n\nexport const getTextWithLinks = (text: string): TextWithLinksType => {\n  const links = linkify.find(text);\n\n  // If no links are present in the text, return the text unmodified\n  if (!links.length) {\n    return {\n      textWithLinks: text,\n      hasLinks: false\n    };\n  }\n\n  let textWithLinks = text;\n\n  // Replace the previous links in text with normalized links\n  for (const link of links) {\n    const previousLink = text.substring(link.start, link.end);\n    textWithLinks = textWithLinks.replace(previousLink, link.value);\n  }\n\n  return {\n    textWithLinks,\n    hasLinks: true\n  };\n};\n\n/**\n * @description It checks if an asset contains suspicious info\n * If it contains text with links inside, it contains scam info, or it is marked as NSFW,\n * then it has suspicious info and may be a scam\n */\nexport const getScamFlag = ({\n  message,\n  scamInfo,\n  isNsfw,\n  verified,\n  messagePrefix = 'Message hidden due to suspicious content - '\n}: SuspiciousLinkPropsType): SuspiciousLinkType => {\n  if (verified) {\n    return {\n      message: '',\n      textWithLinks: '',\n      isSuspicious: false\n    };\n  }\n\n  const outputMessage = `${messagePrefix}${\n    scamInfo?.info ?? 'suspicious content'\n  }`;\n  const { textWithLinks, hasLinks } = getTextWithLinks(message);\n\n  if (hasLinks || isNsfw || scamInfo) {\n    return {\n      message: outputMessage,\n      textWithLinks,\n      isSuspicious: true\n    };\n  }\n\n  return {\n    message: '',\n    textWithLinks,\n    isSuspicious: false\n  };\n};\n"],
  "mappings": "AAAA,UAAYA,MAAa,YAOlB,IAAMC,EAAoBC,GAAoC,CACnE,IAAMC,EAAgB,OAAKD,CAAI,EAG/B,GAAI,CAACC,EAAM,OACT,MAAO,CACL,cAAeD,EACf,SAAU,EACZ,EAGF,IAAIE,EAAgBF,EAGpB,QAAWG,KAAQF,EAAO,CACxB,IAAMG,EAAeJ,EAAK,UAAUG,EAAK,MAAOA,EAAK,GAAG,EACxDD,EAAgBA,EAAc,QAAQE,EAAcD,EAAK,KAAK,CAChE,CAEA,MAAO,CACL,cAAAD,EACA,SAAU,EACZ,CACF,EAOaG,EAAc,CAAC,CAC1B,QAAAC,EACA,SAAAC,EACA,OAAAC,EACA,SAAAC,EACA,cAAAC,EAAgB,6CAClB,IAAmD,CACjD,GAAID,EACF,MAAO,CACL,QAAS,GACT,cAAe,GACf,aAAc,EAChB,EAGF,IAAME,EAAgB,GAAGD,CAAa,GACpCH,GAAU,MAAQ,oBACpB,GACM,CAAE,cAAAL,EAAe,SAAAU,CAAS,EAAIb,EAAiBO,CAAO,EAE5D,OAAIM,GAAYJ,GAAUD,EACjB,CACL,QAASI,EACT,cAAAT,EACA,aAAc,EAChB,EAGK,CACL,QAAS,GACT,cAAAA,EACA,aAAc,EAChB,CACF",
  "names": ["linkify", "getTextWithLinks", "text", "links", "textWithLinks", "link", "previousLink", "getScamFlag", "message", "scamInfo", "isNsfw", "verified", "messagePrefix", "outputMessage", "hasLinks"]
}
