{"version":3,"file":"log-console-original.cjs","names":["getGlobalContext"],"sources":["../../../src/common/log/log-console-original.ts"],"sourcesContent":["import { getGlobalContext } from '../global'\n\n// Global logger to guarantee all submodules use the same logger instance\n\nexport type LogOriginalConsole = Pick<Console, 'log' | 'info' | 'warn' | 'error' | 'debug'> & { console: Console }\n\ndeclare global {\n  interface ZeedGlobalContext {\n    originalConsole?: LogOriginalConsole\n  }\n}\n\n/**\n * Retrieves the global console object, ensuring that it is stored in the global context.\n * If the global context does not have a reference to the original console object, it creates one.\n * The original console object is then bound to the global context, allowing access to its methods.\n */\nexport function getGlobalConsole(): LogOriginalConsole | undefined {\n  const gcontext = getGlobalContext()\n  if (gcontext.originalConsole == null) {\n    const originalConsole = typeof console !== 'undefined' ? console : undefined\n    gcontext.originalConsole = originalConsole\n      ? {\n          console: originalConsole,\n          log: originalConsole.log.bind(originalConsole),\n          info: originalConsole.info.bind(originalConsole),\n          warn: originalConsole.warn.bind(originalConsole),\n          error: originalConsole.error.bind(originalConsole),\n          debug: originalConsole.debug.bind(originalConsole),\n        }\n      : undefined\n  }\n  return gcontext.originalConsole\n}\n"],"mappings":";;;;;;;;;AAiBA,SAAgB,mBAAmD;CACjE,MAAM,WAAWA,wCAAkB;AACnC,KAAI,SAAS,mBAAmB,MAAM;EACpC,MAAM,kBAAkB,OAAO,YAAY,cAAc,UAAU;AACnE,WAAS,kBAAkB,kBACvB;GACE,SAAS;GACT,KAAK,gBAAgB,IAAI,KAAK,gBAAgB;GAC9C,MAAM,gBAAgB,KAAK,KAAK,gBAAgB;GAChD,MAAM,gBAAgB,KAAK,KAAK,gBAAgB;GAChD,OAAO,gBAAgB,MAAM,KAAK,gBAAgB;GAClD,OAAO,gBAAgB,MAAM,KAAK,gBAAgB;GACnD,GACD;;AAEN,QAAO,SAAS"}