{
  "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": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iBAAAE,EAAA,qBAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EAAyB,wBAOlB,MAAMF,EAAoBG,GAAoC,CACnE,MAAMC,EAAQF,EAAQ,KAAKC,CAAI,EAG/B,GAAI,CAACC,EAAM,OACT,MAAO,CACL,cAAeD,EACf,SAAU,EACZ,EAGF,IAAIE,EAAgBF,EAGpB,UAAWG,KAAQF,EAAO,CACxB,MAAMG,EAAeJ,EAAK,UAAUG,EAAK,MAAOA,EAAK,GAAG,EACxDD,EAAgBA,EAAc,QAAQE,EAAcD,EAAK,KAAK,CAChE,CAEA,MAAO,CACL,cAAAD,EACA,SAAU,EACZ,CACF,EAOaN,EAAc,CAAC,CAC1B,QAAAS,EACA,SAAAC,EACA,OAAAC,EACA,SAAAC,EACA,cAAAC,EAAgB,6CAClB,IAAmD,CACjD,GAAID,EACF,MAAO,CACL,QAAS,GACT,cAAe,GACf,aAAc,EAChB,EAGF,MAAME,EAAgB,GAAGD,CAAa,GACpCH,GAAU,MAAQ,oBACpB,GACM,CAAE,cAAAJ,EAAe,SAAAS,CAAS,EAAId,EAAiBQ,CAAO,EAE5D,OAAIM,GAAYJ,GAAUD,EACjB,CACL,QAASI,EACT,cAAAR,EACA,aAAc,EAChB,EAGK,CACL,QAAS,GACT,cAAAA,EACA,aAAc,EAChB,CACF",
  "names": ["getScamFlag_exports", "__export", "getScamFlag", "getTextWithLinks", "__toCommonJS", "linkify", "text", "links", "textWithLinks", "link", "previousLink", "message", "scamInfo", "isNsfw", "verified", "messagePrefix", "outputMessage", "hasLinks"]
}
