@netlify/plugin-nextjs
Version:
Run Next.js seamlessly on Netlify
833 lines (804 loc) • 27 kB
JavaScript
var require = await (async () => {
var { createRequire } = await import("node:module");
return createRequire(import.meta.url);
})();
// node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js
var _globalThis = typeof globalThis === "object" ? globalThis : global;
// node_modules/@opentelemetry/api/build/esm/version.js
var VERSION = "1.8.0";
// node_modules/@opentelemetry/api/build/esm/internal/semver.js
var re = /^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;
function _makeCompatibilityCheck(ownVersion) {
var acceptedVersions = /* @__PURE__ */ new Set([ownVersion]);
var rejectedVersions = /* @__PURE__ */ new Set();
var myVersionMatch = ownVersion.match(re);
if (!myVersionMatch) {
return function() {
return false;
};
}
var ownVersionParsed = {
major: +myVersionMatch[1],
minor: +myVersionMatch[2],
patch: +myVersionMatch[3],
prerelease: myVersionMatch[4]
};
if (ownVersionParsed.prerelease != null) {
return function isExactmatch(globalVersion) {
return globalVersion === ownVersion;
};
}
function _reject(v) {
rejectedVersions.add(v);
return false;
}
function _accept(v) {
acceptedVersions.add(v);
return true;
}
return function isCompatible2(globalVersion) {
if (acceptedVersions.has(globalVersion)) {
return true;
}
if (rejectedVersions.has(globalVersion)) {
return false;
}
var globalVersionMatch = globalVersion.match(re);
if (!globalVersionMatch) {
return _reject(globalVersion);
}
var globalVersionParsed = {
major: +globalVersionMatch[1],
minor: +globalVersionMatch[2],
patch: +globalVersionMatch[3],
prerelease: globalVersionMatch[4]
};
if (globalVersionParsed.prerelease != null) {
return _reject(globalVersion);
}
if (ownVersionParsed.major !== globalVersionParsed.major) {
return _reject(globalVersion);
}
if (ownVersionParsed.major === 0) {
if (ownVersionParsed.minor === globalVersionParsed.minor && ownVersionParsed.patch <= globalVersionParsed.patch) {
return _accept(globalVersion);
}
return _reject(globalVersion);
}
if (ownVersionParsed.minor <= globalVersionParsed.minor) {
return _accept(globalVersion);
}
return _reject(globalVersion);
};
}
var isCompatible = _makeCompatibilityCheck(VERSION);
// node_modules/@opentelemetry/api/build/esm/internal/global-utils.js
var major = VERSION.split(".")[0];
var GLOBAL_OPENTELEMETRY_API_KEY = Symbol.for("opentelemetry.js.api." + major);
var _global = _globalThis;
function registerGlobal(type, instance, diag, allowOverride) {
var _a;
if (allowOverride === void 0) {
allowOverride = false;
}
var api = _global[GLOBAL_OPENTELEMETRY_API_KEY] = (_a = _global[GLOBAL_OPENTELEMETRY_API_KEY]) !== null && _a !== void 0 ? _a : {
version: VERSION
};
if (!allowOverride && api[type]) {
var err = new Error("@opentelemetry/api: Attempted duplicate registration of API: " + type);
diag.error(err.stack || err.message);
return false;
}
if (api.version !== VERSION) {
var err = new Error("@opentelemetry/api: Registration of version v" + api.version + " for " + type + " does not match previously registered API v" + VERSION);
diag.error(err.stack || err.message);
return false;
}
api[type] = instance;
diag.debug("@opentelemetry/api: Registered a global for " + type + " v" + VERSION + ".");
return true;
}
function getGlobal(type) {
var _a, _b;
var globalVersion = (_a = _global[GLOBAL_OPENTELEMETRY_API_KEY]) === null || _a === void 0 ? void 0 : _a.version;
if (!globalVersion || !isCompatible(globalVersion)) {
return;
}
return (_b = _global[GLOBAL_OPENTELEMETRY_API_KEY]) === null || _b === void 0 ? void 0 : _b[type];
}
function unregisterGlobal(type, diag) {
diag.debug("@opentelemetry/api: Unregistering a global for " + type + " v" + VERSION + ".");
var api = _global[GLOBAL_OPENTELEMETRY_API_KEY];
if (api) {
delete api[type];
}
}
// node_modules/@opentelemetry/api/build/esm/context/context.js
function createContextKey(description) {
return Symbol.for(description);
}
var BaseContext = (
/** @class */
/* @__PURE__ */ (function() {
function BaseContext2(parentContext) {
var self = this;
self._currentContext = parentContext ? new Map(parentContext) : /* @__PURE__ */ new Map();
self.getValue = function(key) {
return self._currentContext.get(key);
};
self.setValue = function(key, value) {
var context2 = new BaseContext2(self._currentContext);
context2._currentContext.set(key, value);
return context2;
};
self.deleteValue = function(key) {
var context2 = new BaseContext2(self._currentContext);
context2._currentContext.delete(key);
return context2;
};
}
return BaseContext2;
})()
);
var ROOT_CONTEXT = new BaseContext();
// node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js
var __read = function(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
} catch (error) {
e = { error };
} finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
} finally {
if (e) throw e.error;
}
}
return ar;
};
var __spreadArray = function(to, from, pack) {
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
if (ar || !(i in from)) {
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
ar[i] = from[i];
}
}
return to.concat(ar || Array.prototype.slice.call(from));
};
var NoopContextManager = (
/** @class */
(function() {
function NoopContextManager2() {
}
NoopContextManager2.prototype.active = function() {
return ROOT_CONTEXT;
};
NoopContextManager2.prototype.with = function(_context, fn, thisArg) {
var args = [];
for (var _i = 3; _i < arguments.length; _i++) {
args[_i - 3] = arguments[_i];
}
return fn.call.apply(fn, __spreadArray([thisArg], __read(args), false));
};
NoopContextManager2.prototype.bind = function(_context, target) {
return target;
};
NoopContextManager2.prototype.enable = function() {
return this;
};
NoopContextManager2.prototype.disable = function() {
return this;
};
return NoopContextManager2;
})()
);
// node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js
var __read2 = function(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
} catch (error) {
e = { error };
} finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
} finally {
if (e) throw e.error;
}
}
return ar;
};
var __spreadArray2 = function(to, from, pack) {
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
if (ar || !(i in from)) {
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
ar[i] = from[i];
}
}
return to.concat(ar || Array.prototype.slice.call(from));
};
var DiagComponentLogger = (
/** @class */
(function() {
function DiagComponentLogger2(props) {
this._namespace = props.namespace || "DiagComponentLogger";
}
DiagComponentLogger2.prototype.debug = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return logProxy("debug", this._namespace, args);
};
DiagComponentLogger2.prototype.error = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return logProxy("error", this._namespace, args);
};
DiagComponentLogger2.prototype.info = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return logProxy("info", this._namespace, args);
};
DiagComponentLogger2.prototype.warn = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return logProxy("warn", this._namespace, args);
};
DiagComponentLogger2.prototype.verbose = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return logProxy("verbose", this._namespace, args);
};
return DiagComponentLogger2;
})()
);
function logProxy(funcName, namespace, args) {
var logger = getGlobal("diag");
if (!logger) {
return;
}
args.unshift(namespace);
return logger[funcName].apply(logger, __spreadArray2([], __read2(args), false));
}
// node_modules/@opentelemetry/api/build/esm/diag/types.js
var DiagLogLevel;
(function(DiagLogLevel2) {
DiagLogLevel2[DiagLogLevel2["NONE"] = 0] = "NONE";
DiagLogLevel2[DiagLogLevel2["ERROR"] = 30] = "ERROR";
DiagLogLevel2[DiagLogLevel2["WARN"] = 50] = "WARN";
DiagLogLevel2[DiagLogLevel2["INFO"] = 60] = "INFO";
DiagLogLevel2[DiagLogLevel2["DEBUG"] = 70] = "DEBUG";
DiagLogLevel2[DiagLogLevel2["VERBOSE"] = 80] = "VERBOSE";
DiagLogLevel2[DiagLogLevel2["ALL"] = 9999] = "ALL";
})(DiagLogLevel || (DiagLogLevel = {}));
// node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js
function createLogLevelDiagLogger(maxLevel, logger) {
if (maxLevel < DiagLogLevel.NONE) {
maxLevel = DiagLogLevel.NONE;
} else if (maxLevel > DiagLogLevel.ALL) {
maxLevel = DiagLogLevel.ALL;
}
logger = logger || {};
function _filterFunc(funcName, theLevel) {
var theFunc = logger[funcName];
if (typeof theFunc === "function" && maxLevel >= theLevel) {
return theFunc.bind(logger);
}
return function() {
};
}
return {
error: _filterFunc("error", DiagLogLevel.ERROR),
warn: _filterFunc("warn", DiagLogLevel.WARN),
info: _filterFunc("info", DiagLogLevel.INFO),
debug: _filterFunc("debug", DiagLogLevel.DEBUG),
verbose: _filterFunc("verbose", DiagLogLevel.VERBOSE)
};
}
// node_modules/@opentelemetry/api/build/esm/api/diag.js
var __read3 = function(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
} catch (error) {
e = { error };
} finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
} finally {
if (e) throw e.error;
}
}
return ar;
};
var __spreadArray3 = function(to, from, pack) {
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
if (ar || !(i in from)) {
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
ar[i] = from[i];
}
}
return to.concat(ar || Array.prototype.slice.call(from));
};
var API_NAME = "diag";
var DiagAPI = (
/** @class */
(function() {
function DiagAPI2() {
function _logProxy(funcName) {
return function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var logger = getGlobal("diag");
if (!logger)
return;
return logger[funcName].apply(logger, __spreadArray3([], __read3(args), false));
};
}
var self = this;
var setLogger = function(logger, optionsOrLogLevel) {
var _a, _b, _c;
if (optionsOrLogLevel === void 0) {
optionsOrLogLevel = { logLevel: DiagLogLevel.INFO };
}
if (logger === self) {
var err = new Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");
self.error((_a = err.stack) !== null && _a !== void 0 ? _a : err.message);
return false;
}
if (typeof optionsOrLogLevel === "number") {
optionsOrLogLevel = {
logLevel: optionsOrLogLevel
};
}
var oldLogger = getGlobal("diag");
var newLogger = createLogLevelDiagLogger((_b = optionsOrLogLevel.logLevel) !== null && _b !== void 0 ? _b : DiagLogLevel.INFO, logger);
if (oldLogger && !optionsOrLogLevel.suppressOverrideMessage) {
var stack = (_c = new Error().stack) !== null && _c !== void 0 ? _c : "<failed to generate stacktrace>";
oldLogger.warn("Current logger will be overwritten from " + stack);
newLogger.warn("Current logger will overwrite one already registered from " + stack);
}
return registerGlobal("diag", newLogger, self, true);
};
self.setLogger = setLogger;
self.disable = function() {
unregisterGlobal(API_NAME, self);
};
self.createComponentLogger = function(options) {
return new DiagComponentLogger(options);
};
self.verbose = _logProxy("verbose");
self.debug = _logProxy("debug");
self.info = _logProxy("info");
self.warn = _logProxy("warn");
self.error = _logProxy("error");
}
DiagAPI2.instance = function() {
if (!this._instance) {
this._instance = new DiagAPI2();
}
return this._instance;
};
return DiagAPI2;
})()
);
// node_modules/@opentelemetry/api/build/esm/api/context.js
var __read4 = function(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
} catch (error) {
e = { error };
} finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
} finally {
if (e) throw e.error;
}
}
return ar;
};
var __spreadArray4 = function(to, from, pack) {
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
if (ar || !(i in from)) {
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
ar[i] = from[i];
}
}
return to.concat(ar || Array.prototype.slice.call(from));
};
var API_NAME2 = "context";
var NOOP_CONTEXT_MANAGER = new NoopContextManager();
var ContextAPI = (
/** @class */
(function() {
function ContextAPI2() {
}
ContextAPI2.getInstance = function() {
if (!this._instance) {
this._instance = new ContextAPI2();
}
return this._instance;
};
ContextAPI2.prototype.setGlobalContextManager = function(contextManager) {
return registerGlobal(API_NAME2, contextManager, DiagAPI.instance());
};
ContextAPI2.prototype.active = function() {
return this._getContextManager().active();
};
ContextAPI2.prototype.with = function(context2, fn, thisArg) {
var _a;
var args = [];
for (var _i = 3; _i < arguments.length; _i++) {
args[_i - 3] = arguments[_i];
}
return (_a = this._getContextManager()).with.apply(_a, __spreadArray4([context2, fn, thisArg], __read4(args), false));
};
ContextAPI2.prototype.bind = function(context2, target) {
return this._getContextManager().bind(context2, target);
};
ContextAPI2.prototype._getContextManager = function() {
return getGlobal(API_NAME2) || NOOP_CONTEXT_MANAGER;
};
ContextAPI2.prototype.disable = function() {
this._getContextManager().disable();
unregisterGlobal(API_NAME2, DiagAPI.instance());
};
return ContextAPI2;
})()
);
// node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js
var TraceFlags;
(function(TraceFlags2) {
TraceFlags2[TraceFlags2["NONE"] = 0] = "NONE";
TraceFlags2[TraceFlags2["SAMPLED"] = 1] = "SAMPLED";
})(TraceFlags || (TraceFlags = {}));
// node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js
var INVALID_SPANID = "0000000000000000";
var INVALID_TRACEID = "00000000000000000000000000000000";
var INVALID_SPAN_CONTEXT = {
traceId: INVALID_TRACEID,
spanId: INVALID_SPANID,
traceFlags: TraceFlags.NONE
};
// node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js
var NonRecordingSpan = (
/** @class */
(function() {
function NonRecordingSpan2(_spanContext) {
if (_spanContext === void 0) {
_spanContext = INVALID_SPAN_CONTEXT;
}
this._spanContext = _spanContext;
}
NonRecordingSpan2.prototype.spanContext = function() {
return this._spanContext;
};
NonRecordingSpan2.prototype.setAttribute = function(_key, _value) {
return this;
};
NonRecordingSpan2.prototype.setAttributes = function(_attributes) {
return this;
};
NonRecordingSpan2.prototype.addEvent = function(_name, _attributes) {
return this;
};
NonRecordingSpan2.prototype.setStatus = function(_status) {
return this;
};
NonRecordingSpan2.prototype.updateName = function(_name) {
return this;
};
NonRecordingSpan2.prototype.end = function(_endTime) {
};
NonRecordingSpan2.prototype.isRecording = function() {
return false;
};
NonRecordingSpan2.prototype.recordException = function(_exception, _time) {
};
return NonRecordingSpan2;
})()
);
// node_modules/@opentelemetry/api/build/esm/trace/context-utils.js
var SPAN_KEY = createContextKey("OpenTelemetry Context Key SPAN");
function getSpan(context2) {
return context2.getValue(SPAN_KEY) || void 0;
}
function getActiveSpan() {
return getSpan(ContextAPI.getInstance().active());
}
function setSpan(context2, span) {
return context2.setValue(SPAN_KEY, span);
}
function deleteSpan(context2) {
return context2.deleteValue(SPAN_KEY);
}
function setSpanContext(context2, spanContext) {
return setSpan(context2, new NonRecordingSpan(spanContext));
}
function getSpanContext(context2) {
var _a;
return (_a = getSpan(context2)) === null || _a === void 0 ? void 0 : _a.spanContext();
}
// node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js
var VALID_TRACEID_REGEX = /^([0-9a-f]{32})$/i;
var VALID_SPANID_REGEX = /^[0-9a-f]{16}$/i;
function isValidTraceId(traceId) {
return VALID_TRACEID_REGEX.test(traceId) && traceId !== INVALID_TRACEID;
}
function isValidSpanId(spanId) {
return VALID_SPANID_REGEX.test(spanId) && spanId !== INVALID_SPANID;
}
function isSpanContextValid(spanContext) {
return isValidTraceId(spanContext.traceId) && isValidSpanId(spanContext.spanId);
}
function wrapSpanContext(spanContext) {
return new NonRecordingSpan(spanContext);
}
// node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js
var contextApi = ContextAPI.getInstance();
var NoopTracer = (
/** @class */
(function() {
function NoopTracer2() {
}
NoopTracer2.prototype.startSpan = function(name, options, context2) {
if (context2 === void 0) {
context2 = contextApi.active();
}
var root = Boolean(options === null || options === void 0 ? void 0 : options.root);
if (root) {
return new NonRecordingSpan();
}
var parentFromContext = context2 && getSpanContext(context2);
if (isSpanContext(parentFromContext) && isSpanContextValid(parentFromContext)) {
return new NonRecordingSpan(parentFromContext);
} else {
return new NonRecordingSpan();
}
};
NoopTracer2.prototype.startActiveSpan = function(name, arg2, arg3, arg4) {
var opts;
var ctx;
var fn;
if (arguments.length < 2) {
return;
} else if (arguments.length === 2) {
fn = arg2;
} else if (arguments.length === 3) {
opts = arg2;
fn = arg3;
} else {
opts = arg2;
ctx = arg3;
fn = arg4;
}
var parentContext = ctx !== null && ctx !== void 0 ? ctx : contextApi.active();
var span = this.startSpan(name, opts, parentContext);
var contextWithSpanSet = setSpan(parentContext, span);
return contextApi.with(contextWithSpanSet, fn, void 0, span);
};
return NoopTracer2;
})()
);
function isSpanContext(spanContext) {
return typeof spanContext === "object" && typeof spanContext["spanId"] === "string" && typeof spanContext["traceId"] === "string" && typeof spanContext["traceFlags"] === "number";
}
// node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js
var NOOP_TRACER = new NoopTracer();
var ProxyTracer = (
/** @class */
(function() {
function ProxyTracer2(_provider, name, version, options) {
this._provider = _provider;
this.name = name;
this.version = version;
this.options = options;
}
ProxyTracer2.prototype.startSpan = function(name, options, context2) {
return this._getTracer().startSpan(name, options, context2);
};
ProxyTracer2.prototype.startActiveSpan = function(_name, _options, _context, _fn) {
var tracer = this._getTracer();
return Reflect.apply(tracer.startActiveSpan, tracer, arguments);
};
ProxyTracer2.prototype._getTracer = function() {
if (this._delegate) {
return this._delegate;
}
var tracer = this._provider.getDelegateTracer(this.name, this.version, this.options);
if (!tracer) {
return NOOP_TRACER;
}
this._delegate = tracer;
return this._delegate;
};
return ProxyTracer2;
})()
);
// node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js
var NoopTracerProvider = (
/** @class */
(function() {
function NoopTracerProvider2() {
}
NoopTracerProvider2.prototype.getTracer = function(_name, _version, _options) {
return new NoopTracer();
};
return NoopTracerProvider2;
})()
);
// node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js
var NOOP_TRACER_PROVIDER = new NoopTracerProvider();
var ProxyTracerProvider = (
/** @class */
(function() {
function ProxyTracerProvider2() {
}
ProxyTracerProvider2.prototype.getTracer = function(name, version, options) {
var _a;
return (_a = this.getDelegateTracer(name, version, options)) !== null && _a !== void 0 ? _a : new ProxyTracer(this, name, version, options);
};
ProxyTracerProvider2.prototype.getDelegate = function() {
var _a;
return (_a = this._delegate) !== null && _a !== void 0 ? _a : NOOP_TRACER_PROVIDER;
};
ProxyTracerProvider2.prototype.setDelegate = function(delegate) {
this._delegate = delegate;
};
ProxyTracerProvider2.prototype.getDelegateTracer = function(name, version, options) {
var _a;
return (_a = this._delegate) === null || _a === void 0 ? void 0 : _a.getTracer(name, version, options);
};
return ProxyTracerProvider2;
})()
);
// node_modules/@opentelemetry/api/build/esm/api/trace.js
var API_NAME3 = "trace";
var TraceAPI = (
/** @class */
(function() {
function TraceAPI2() {
this._proxyTracerProvider = new ProxyTracerProvider();
this.wrapSpanContext = wrapSpanContext;
this.isSpanContextValid = isSpanContextValid;
this.deleteSpan = deleteSpan;
this.getSpan = getSpan;
this.getActiveSpan = getActiveSpan;
this.getSpanContext = getSpanContext;
this.setSpan = setSpan;
this.setSpanContext = setSpanContext;
}
TraceAPI2.getInstance = function() {
if (!this._instance) {
this._instance = new TraceAPI2();
}
return this._instance;
};
TraceAPI2.prototype.setGlobalTracerProvider = function(provider) {
var success = registerGlobal(API_NAME3, this._proxyTracerProvider, DiagAPI.instance());
if (success) {
this._proxyTracerProvider.setDelegate(provider);
}
return success;
};
TraceAPI2.prototype.getTracerProvider = function() {
return getGlobal(API_NAME3) || this._proxyTracerProvider;
};
TraceAPI2.prototype.getTracer = function(name, version) {
return this.getTracerProvider().getTracer(name, version);
};
TraceAPI2.prototype.disable = function() {
unregisterGlobal(API_NAME3, DiagAPI.instance());
this._proxyTracerProvider = new ProxyTracerProvider();
};
return TraceAPI2;
})()
);
// node_modules/@opentelemetry/api/build/esm/trace-api.js
var trace = TraceAPI.getInstance();
// node_modules/@opentelemetry/api/build/esm/trace/status.js
var SpanStatusCode;
(function(SpanStatusCode2) {
SpanStatusCode2[SpanStatusCode2["UNSET"] = 0] = "UNSET";
SpanStatusCode2[SpanStatusCode2["OK"] = 1] = "OK";
SpanStatusCode2[SpanStatusCode2["ERROR"] = 2] = "ERROR";
})(SpanStatusCode || (SpanStatusCode = {}));
// node_modules/@opentelemetry/api/build/esm/context-api.js
var context = ContextAPI.getInstance();
// node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.js
var defaultOnException = function(e, span) {
span.recordException(e);
span.setStatus({
code: SpanStatusCode.ERROR
});
};
function wrapTracer(tracer) {
return new SugaredTracer(tracer);
}
var SugaredTracer = (
/** @class */
(function() {
function SugaredTracer2(tracer) {
this._tracer = tracer;
this.startSpan = tracer.startSpan.bind(this._tracer);
this.startActiveSpan = tracer.startActiveSpan.bind(this._tracer);
}
SugaredTracer2.prototype.withActiveSpan = function(name, arg2, arg3, arg4) {
var _a = massageParams(arg2, arg3, arg4), opts = _a.opts, ctx = _a.ctx, fn = _a.fn;
return this._tracer.startActiveSpan(name, opts, ctx, function(span) {
return handleFn(span, opts, fn);
});
};
SugaredTracer2.prototype.withSpan = function(name, arg2, arg3, arg4) {
var _a = massageParams(arg2, arg3, arg4), opts = _a.opts, ctx = _a.ctx, fn = _a.fn;
var span = this._tracer.startSpan(name, opts, ctx);
return handleFn(span, opts, fn);
};
return SugaredTracer2;
})()
);
function massageParams(arg, arg2, arg3) {
var opts;
var ctx;
var fn;
if (!arg2 && !arg3) {
fn = arg;
} else if (!arg3) {
opts = arg;
fn = arg2;
} else {
opts = arg;
ctx = arg2;
fn = arg3;
}
opts = opts !== null && opts !== void 0 ? opts : {};
ctx = ctx !== null && ctx !== void 0 ? ctx : context.active();
return { opts, ctx, fn };
}
function handleFn(span, opts, fn) {
var _a;
var onException = (_a = opts.onException) !== null && _a !== void 0 ? _a : defaultOnException;
var errorHandler = function(e) {
onException(e, span);
span.end();
throw e;
};
try {
var ret = fn(span);
if (typeof (ret === null || ret === void 0 ? void 0 : ret.then) === "function") {
return ret.then(function(val) {
span.end();
return val;
}, errorHandler);
}
span.end();
return ret;
} catch (e) {
throw errorHandler(e);
}
}
export {
trace,
wrapTracer
};