{"version":3,"file":"default-formatters.cjs","sources":["../../src/default-formatters.ts"],"sourcesContent":["import { Formatter, LogEvent } from 'src/logger';\nimport { environment, isNetlify, isVercel, region } from 'src/platform';\nimport { isEdgeRuntime } from 'src/runtime';\n\ninterface BasePlatform {\n  environment?: string;\n  region?: string;\n  source?: string;\n}\n\ntype VercelLogEvent = LogEvent & {\n  vercel: {\n    deploymentId?: string;\n    deploymentUrl?: string;\n    project?: string;\n  } & BasePlatform;\n  git: {\n    commit?: string;\n    repo?: string;\n    ref?: string;\n  };\n};\n\ntype NetlifyLogEvent = LogEvent & {\n  netlify: {\n    siteId?: string;\n    buildId?: string;\n    context?: string;\n    deploymentId?: string;\n    deploymentUrl?: string;\n  } & BasePlatform;\n};\n\ntype GenericLogEvent = LogEvent & {\n  platform: BasePlatform;\n};\n\ntype PlatformLogEvent = VercelLogEvent | NetlifyLogEvent | GenericLogEvent;\n\nexport const injectPlatform: Formatter = (logEvent): PlatformLogEvent => {\n  // logEvent.source = source; @TODO\n\n  if (isVercel) {\n    const vercelLogEvent = logEvent as VercelLogEvent;\n\n    vercelLogEvent.vercel = {\n      environment: process.env.VERCEL_ENV ?? environment,\n      region: process.env.VERCEL_REGION,\n      deploymentId: process.env.VERCEL_DEPLOYMENT_ID,\n      deploymentUrl: process.env.NEXT_PUBLIC_VERCEL_URL,\n      project: process.env.NEXT_PUBLIC_VERCEL_PROJECT_PRODUCTION_URL,\n      source: logEvent.source,\n    };\n\n    vercelLogEvent.git = {\n      commit: process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA,\n      repo: process.env.NEXT_PUBLIC_VERCEL_GIT_REPO_SLUG,\n      ref: process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_REF,\n    };\n\n    return vercelLogEvent;\n  }\n\n  if (isNetlify) {\n    const netlifyLogEvent = logEvent as NetlifyLogEvent;\n    netlifyLogEvent.netlify = {\n      environment: environment,\n      region: isEdgeRuntime ? process.env.DENO_REGION : process.env.AWS_REGION,\n      siteId: process.env.SITE_ID,\n      buildId: process.env.BUILD_ID,\n      context: process.env.CONTEXT,\n      deploymentUrl: process.env.DEPLOYMENT_URL,\n      deploymentId: isEdgeRuntime ? process.env.DENO_DEPLOYMENT_ID : process.env.NETLIFY_DEPLOYMENT_ID,\n      source: logEvent.source,\n    };\n\n    return netlifyLogEvent;\n  }\n\n  const genericLogEvent = logEvent as GenericLogEvent;\n  genericLogEvent.platform = {\n    environment: environment,\n    region: region,\n    source: logEvent.source,\n  };\n\n  return genericLogEvent;\n};\n\nexport const defaultFormatters = [injectPlatform];\n"],"names":["isVercel","environment","isNetlify","isEdgeRuntime","region"],"mappings":";;;;AAuCa,MAAA,iBAA4B,CAAC,aAA+B;AAGvE,MAAIA,mBAAU;AACZ,UAAM,iBAAiB;AAEvB,mBAAe,SAAS;AAAA,MACtB,aAAa,QAAQ,IAAI,cAAcC,SAAA;AAAA,MACvC,QAAQ,QAAQ,IAAI;AAAA,MACpB,cAAc,QAAQ,IAAI;AAAA,MAC1B,eAAe,QAAQ,IAAI;AAAA,MAC3B,SAAS,QAAQ,IAAI;AAAA,MACrB,QAAQ,SAAS;AAAA,IAAA;AAGnB,mBAAe,MAAM;AAAA,MACnB,QAAQ,QAAQ,IAAI;AAAA,MACpB,MAAM,QAAQ,IAAI;AAAA,MAClB,KAAK,QAAQ,IAAI;AAAA,IAAA;AAGZ,WAAA;AAAA,EACT;AAEA,MAAIC,oBAAW;AACb,UAAM,kBAAkB;AACxB,oBAAgB,UAAU;AAAA,MAAA,aACxBD,SAAA;AAAA,MACA,QAAQE,QAAgB,gBAAA,QAAQ,IAAI,cAAc,QAAQ,IAAI;AAAA,MAC9D,QAAQ,QAAQ,IAAI;AAAA,MACpB,SAAS,QAAQ,IAAI;AAAA,MACrB,SAAS,QAAQ,IAAI;AAAA,MACrB,eAAe,QAAQ,IAAI;AAAA,MAC3B,cAAcA,QAAgB,gBAAA,QAAQ,IAAI,qBAAqB,QAAQ,IAAI;AAAA,MAC3E,QAAQ,SAAS;AAAA,IAAA;AAGZ,WAAA;AAAA,EACT;AAEA,QAAM,kBAAkB;AACxB,kBAAgB,WAAW;AAAA,IAAA,aACzBF,SAAA;AAAA,IAAA,QACAG,SAAA;AAAA,IACA,QAAQ,SAAS;AAAA,EAAA;AAGZ,SAAA;AACT;AAEa,MAAA,oBAAoB,CAAC,cAAc;;;"}