{"version":3,"file":"nsfConfigValidation.cjs","names":[],"sources":["../../src/utils/nsfConfigValidation.ts"],"sourcesContent":["import type { DiagLogger } from '@opentelemetry/api';\nimport type { SDKFeaturesManager } from '../managers/index.ts';\nimport type { SDKInitConfig } from '../sdk/index.ts';\n\ntype ValidateConfigArgs = {\n  featureManager: SDKFeaturesManager;\n  diag: DiagLogger;\n} & Pick<\n  SDKInitConfig,\n  'propagator' | 'registerGlobally' | 'defaultInstrumentationConfig'\n>;\n\nexport const nsfConfigValidation = ({\n  diag,\n  featureManager,\n  registerGlobally,\n  propagator,\n  defaultInstrumentationConfig,\n}: ValidateConfigArgs) => {\n  if (!featureManager.isNetworkSpanForwardingEnabled()) {\n    return false;\n  }\n\n  const warnings = [];\n\n  if (!registerGlobally) {\n    warnings.push(\n      'Network span forwarding cannot be used when `registerGlobally` is set to false. Turning off network span forwarding.',\n    );\n  }\n\n  if (propagator) {\n    warnings.push(\n      'Network span forwarding cannot be used alongside a custom `propagator`. Turning off network span forwarding.',\n    );\n  }\n\n  if (\n    defaultInstrumentationConfig?.omit?.has(\n      '@opentelemetry/instrumentation-xml-http-request',\n    ) &&\n    defaultInstrumentationConfig.omit.has(\n      '@opentelemetry/instrumentation-fetch',\n    )\n  ) {\n    warnings.push(\n      \"Network span forwarding cannot be used when both '@opentelemetry/instrumentation-xml-http-request' and \" +\n        \"'@opentelemetry/instrumentation-fetch' are omitted. Turning off network span forwarding.\",\n    );\n  }\n\n  warnings.forEach((warning) => {\n    diag.warn(warning);\n  });\n\n  return warnings.length === 0;\n};\n"],"mappings":";;AAYA,MAAa,uBAAuB,EAClC,MACA,gBACA,kBACA,YACA,mCACwB;AACxB,KAAI,CAAC,eAAe,gCAAgC,CAClD,QAAO;CAGT,MAAM,WAAW,EAAE;AAEnB,KAAI,CAAC,iBACH,UAAS,KACP,uHACD;AAGH,KAAI,WACF,UAAS,KACP,+GACD;AAGH,KACE,8BAA8B,MAAM,IAClC,kDACD,IACD,6BAA6B,KAAK,IAChC,uCACD,CAED,UAAS,KACP,kMAED;AAGH,UAAS,SAAS,YAAY;AAC5B,OAAK,KAAK,QAAQ;GAClB;AAEF,QAAO,SAAS,WAAW"}