{"version":3,"file":"pretty-cli.cjs","sources":["../../src/pretty-cli.ts"],"sourcesContent":["import sliceAnsi from \"slice-ansi\";\nimport { getUserCodeFrame } from \"./get-user-code-frame\";\nimport type { TestInstance } from \"./types\";\n\nfunction prettyCLI(testInstance: TestInstance, maxLength?: number) {\n  if (typeof maxLength !== \"number\") {\n    maxLength =\n      (typeof process !== \"undefined\" &&\n        Number(process.env.DEBUG_PRINT_LIMIT)) ||\n      7000;\n  }\n\n  if (maxLength === 0) {\n    return \"\";\n  }\n\n  if (!(\"stdoutArr\" in testInstance && \"stderrArr\" in testInstance)) {\n    throw new TypeError(`Expected an instance but got ${testInstance}`);\n  }\n\n  const outStr = testInstance.getStdallStr();\n\n  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n  return maxLength !== undefined && outStr.length > maxLength\n    ? sliceAnsi(outStr, 0, maxLength)\n    : outStr;\n}\n\nconst logCLI = (...args: Parameters<typeof prettyCLI>) => {\n  const userCodeFrame = getUserCodeFrame();\n  if (userCodeFrame) {\n    process.stdout.write(`${prettyCLI(...args)}\\n\\n${userCodeFrame}`);\n  } else {\n    process.stdout.write(prettyCLI(...args));\n  }\n};\n\nexport { prettyCLI, logCLI };\n"],"names":["getUserCodeFrame"],"mappings":";;;;AAIA,SAAS,UAAU,cAA4B,WAAoB;AAC7D,MAAA,OAAO,cAAc,UAAU;AACjC,gBACG,OAAO,YAAY,eAClB,OAAO,QAAQ,IAAI,iBAAiB,KACtC;AAAA,EAAA;AAGJ,MAAI,cAAc,GAAG;AACZ,WAAA;AAAA,EAAA;AAGT,MAAI,EAAE,eAAe,gBAAgB,eAAe,eAAe;AACjE,UAAM,IAAI,UAAU,gCAAgC,YAAY,EAAE;AAAA,EAAA;AAG9D,QAAA,SAAS,aAAa,aAAa;AAGlC,SAAA,cAAc,UAAa,OAAO,SAAS,YAC9C,UAAU,QAAQ,GAAG,SAAS,IAC9B;AACN;AAEM,MAAA,SAAS,IAAI,SAAuC;AACxD,QAAM,gBAAgBA,iBAAAA,iBAAiB;AACvC,MAAI,eAAe;AACjB,YAAQ,OAAO,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;AAAA;AAAA,EAAO,aAAa,EAAE;AAAA,EAAA,OAC3D;AACL,YAAQ,OAAO,MAAM,UAAU,GAAG,IAAI,CAAC;AAAA,EAAA;AAE3C;;;"}