{"version":3,"file":"tracing.cjs","names":["registerTraceContextExtractor"],"sources":["../../../shared/tracing/dist/module/create-extractor.js","../src/tracing.ts"],"sourcesContent":["/**\n * Build a {@link TraceContextExtractor} from an OpenTelemetry API object.\n *\n * The extractor injects the active context into a fresh carrier on every\n * call and returns the W3C trace headers found there, or null when there is\n * no active trace (no `traceparent`) or the API throws.\n */\nexport function createTraceContextExtractor(otel) {\n    return () => {\n        try {\n            const carrier = {};\n            otel.propagation.inject(otel.context.active(), carrier);\n            const traceparent = carrier['traceparent'];\n            if (!traceparent) {\n                return null;\n            }\n            return {\n                traceparent,\n                tracestate: carrier['tracestate'],\n                baggage: carrier['baggage'],\n            };\n        }\n        catch (_a) {\n            return null;\n        }\n    };\n}\n//# sourceMappingURL=create-extractor.js.map","/**\n * Opt-in OpenTelemetry runtime for `tracePropagation`.\n *\n * Importing this module registers the OpenTelemetry trace context extractor\n * used by every Supabase client in the process. It has no exports — the\n * import itself is the opt-in:\n *\n * ```ts\n * import '@supabase/supabase-js/tracing'\n * import { createClient } from '@supabase/supabase-js'\n *\n * const supabase = createClient(url, key, { tracePropagation: true })\n * ```\n *\n * Requires `@opentelemetry/api` to be installed — this module imports it\n * directly, so bundlers include it and resolution fails loudly when it is\n * missing. Without this import, enabling `tracePropagation` logs a one-time\n * warning and requests are sent without trace headers.\n *\n * @module tracing\n */\nimport { propagation, context } from '@opentelemetry/api'\nimport { createTraceContextExtractor } from '@supabase/tracing'\nimport { registerTraceContextExtractor } from './lib/tracingRegistry'\n\nregisterTraceContextExtractor(createTraceContextExtractor({ propagation, context }))\n"],"mappings":";;;;;;;;;;;AAOA,SAAgB,4BAA4B,MAAM;AAC9C,cAAa;AACT,MAAI;GACA,MAAM,UAAU,EAAE;AAClB,QAAK,YAAY,OAAO,KAAK,QAAQ,QAAQ,EAAE,QAAQ;GACvD,MAAM,cAAc,QAAQ;AAC5B,OAAI,CAAC,YACD,QAAO;AAEX,UAAO;IACH;IACA,YAAY,QAAQ;IACpB,SAAS,QAAQ;IACpB;WAEE,IAAI;AACP,UAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACEnBA,sDAA8B,4BAA4B;CAAE;CAAa;CAAS,CAAC,CAAC"}