UNPKG

@brizz/sdk

Version:

OpenTelemetry-based observability SDK for AI applications

84 lines (83 loc) 3.15 kB
// src/node/loader.ts import module from "module"; import { createAddHookMessageChannel } from "import-in-the-middle"; var loaderDebug = (() => { const isDebug = process.env["BRIZZ_ESM_DEBUG"] === "true" || process.env["BRIZZ_LOG_LEVEL"] === "debug"; return { log: (msg, data) => { if (!isDebug) { return; } const timestamp = (/* @__PURE__ */ new Date()).toISOString(); const dataStr = data ? ` ${JSON.stringify(data)}` : ""; console.log(`[${timestamp}] [ESM-LOADER] ${msg}${dataStr}`); }, error: (msg, error) => { if (!isDebug) { return; } const timestamp = (/* @__PURE__ */ new Date()).toISOString(); const errorStr = error instanceof Error ? ` ${error.message}` : error ? ` ${JSON.stringify(error)}` : ""; console.error(`[${timestamp}] [ESM-LOADER] ERROR: ${msg}${errorStr}`); } }; })(); var LOADER_REGISTERED_KEY = Symbol.for("__brizz_esm_loader_registered__"); function checkLoaderAPISupport() { const [major, minor] = process.versions.node.split(".").map(Number); if (major === void 0 || minor === void 0) { loaderDebug.log("Failed to detect Node version, assuming loader API is supported"); return true; } const supported = major >= 21 || major === 20 && minor >= 6 || major === 18 && minor >= 19; loaderDebug.log("Loader API support check:", { nodeVersion: `${major}.${minor}`, supportsLoaderAPI: supported }); return supported; } function maybeRegisterESMLoader() { if (globalThis[LOADER_REGISTERED_KEY] === true) { loaderDebug.log("ESM loader already registered, skipping"); return false; } globalThis[LOADER_REGISTERED_KEY] = true; loaderDebug.log("Starting ESM loader registration..."); if (!checkLoaderAPISupport()) { loaderDebug.log("Node.js version does not support loader API, skipping"); return false; } if (import.meta === void 0 || !import.meta.url) { loaderDebug.log("import.meta.url not available, skipping loader registration"); globalThis[LOADER_REGISTERED_KEY] = false; return false; } const isTest = process.env["NODE_ENV"] === "test" || process.env["JEST_WORKER_ID"] !== void 0; if (isTest) { loaderDebug.log("Test environment detected, skipping ESM loader registration"); globalThis[LOADER_REGISTERED_KEY] = false; return false; } try { loaderDebug.log("Creating MessageChannel for import-in-the-middle..."); const { addHookMessagePort } = createAddHookMessageChannel(); loaderDebug.log("Registering import-in-the-middle/hook.mjs..."); module.register("import-in-the-middle/hook.mjs", import.meta.url, { data: { addHookMessagePort }, transferList: [addHookMessagePort] }); loaderDebug.log("ESM loader successfully registered!"); return true; } catch (error) { loaderDebug.error("Failed to register ESM loader:", error); globalThis[LOADER_REGISTERED_KEY] = false; return false; } } if (globalThis[LOADER_REGISTERED_KEY] !== true) { loaderDebug.log("Loader module imported, attempting to register..."); maybeRegisterESMLoader(); } export { maybeRegisterESMLoader };