@embrace-io/web-sdk
Version:
33 lines (32 loc) • 1.58 kB
JavaScript
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const require_utils_createSafeProxy_createSafeProxy = require("../../../utils/createSafeProxy/createSafeProxy.cjs");
const require_api_traces_manager_NoOpTraceManager_NoOpTraceManager = require("../../manager/NoOpTraceManager/NoOpTraceManager.cjs");
const require_api_traces_manager_ProxyTraceManager_ProxyTraceManager = require("../../manager/ProxyTraceManager/ProxyTraceManager.cjs");
let _opentelemetry_api = require("@opentelemetry/api");
//#region src/api-traces/api/TraceAPI/TraceAPI.ts
const NOOP_TRACE_MANAGER = new require_api_traces_manager_NoOpTraceManager_NoOpTraceManager.NoOpTraceManager();
const INTERNAL_METHODS = /* @__PURE__ */ new Set(["setDelegate", "getDelegate"]);
var TraceAPI = class TraceAPI {
static _instance;
static getInstance() {
if (!TraceAPI._instance) {
const proxyManager = new require_api_traces_manager_ProxyTraceManager_ProxyTraceManager.ProxyTraceManager();
const safeManager = require_utils_createSafeProxy_createSafeProxy.createSafeProxy(proxyManager, NOOP_TRACE_MANAGER, _opentelemetry_api.diag.createComponentLogger({ namespace: "TraceAPI" }), INTERNAL_METHODS);
TraceAPI._instance = Object.assign(safeManager, {
setGlobalTraceManager(traceManager) {
proxyManager.setDelegate(traceManager);
},
getTraceManager() {
return proxyManager;
}
});
}
return TraceAPI._instance;
}
static resetInstance() {
TraceAPI._instance = void 0;
}
};
//#endregion
exports.TraceAPI = TraceAPI;
//# sourceMappingURL=TraceAPI.cjs.map