@percepta/logger 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,8 @@
1
- require("../_virtual/_rolldown/runtime.cjs");
2
1
  let lodash_es = require("lodash-es");
3
2
  //#region src/logger/MosaicLogger.ts
4
3
  var MosaicLogger = class MosaicLogger {
4
+ pino;
5
+ redactValue;
5
6
  constructor(pino, redactValue) {
6
7
  this.pino = pino;
7
8
  this.redactValue = redactValue;
@@ -1 +1 @@
1
- {"version":3,"file":"MosaicLogger.cjs","names":[],"sources":["../../src/logger/MosaicLogger.ts"],"sourcesContent":["import { isEmpty, isError, mapValues } from \"lodash-es\";\nimport type { Logger as PinoLogger } from \"pino\";\n\nexport interface LogArgs {\n safe?: Record<string, unknown>;\n unsafe?: Record<string, unknown>;\n}\n\nenum LogLevel {\n INFO = \"info\",\n ERROR = \"error\",\n WARN = \"warn\",\n DEBUG = \"debug\",\n}\n\nexport class MosaicLogger {\n public constructor(\n private pino: PinoLogger,\n private redactValue: (value: unknown) => string,\n ) {}\n\n public child(context: LogArgs): MosaicLogger {\n return new MosaicLogger(\n this.pino.child(this.resolveArgs(context)),\n this.redactValue,\n );\n }\n\n public info(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.INFO, args, message, error);\n }\n\n public warn(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.WARN, args, message, error);\n }\n\n public debug(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.DEBUG, args, message, error);\n }\n\n public error(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.ERROR, args, message, error);\n }\n\n private log(\n level: LogLevel,\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.pino[level](\n {\n ...(args != null && { ...this.resolveArgs(args) }),\n ...(error != null && { err: this.serializeError(error) }),\n },\n message,\n );\n }\n\n private resolveArgs({ safe, unsafe }: LogArgs): Record<string, unknown> {\n return {\n ...safe,\n ...(unsafe != null &&\n mapValues(unsafe, (value) => this.redactValue(value))),\n };\n }\n\n private serializeError(error: unknown): SerializedError {\n if (!isError(error)) {\n return { message: this.redactValue(String(error)) };\n }\n\n const { name, message, stack, ...errorProps } = error;\n\n return {\n type: name,\n message: this.redactValue(message),\n stack,\n ...(!isEmpty(errorProps) && { props: this.redactValue(errorProps) }),\n };\n }\n}\n\ninterface SerializedError {\n type?: string;\n message?: string;\n stack?: string;\n props?: string;\n}\n"],"mappings":";;;AAeA,IAAa,eAAb,MAAa,aAAa;CACxB,YACE,MACA,aACA;AAFQ,OAAA,OAAA;AACA,OAAA,cAAA;;CAGV,MAAa,SAAgC;AAC3C,SAAO,IAAI,aACT,KAAK,KAAK,MAAM,KAAK,YAAY,QAAQ,CAAC,EAC1C,KAAK,YACN;;CAGH,KACE,MACA,SACA,OACM;AACN,OAAK,IAAA,QAAmB,MAAM,SAAS,MAAM;;CAG/C,KACE,MACA,SACA,OACM;AACN,OAAK,IAAA,QAAmB,MAAM,SAAS,MAAM;;CAG/C,MACE,MACA,SACA,OACM;AACN,OAAK,IAAA,SAAoB,MAAM,SAAS,MAAM;;CAGhD,MACE,MACA,SACA,OACM;AACN,OAAK,IAAA,SAAoB,MAAM,SAAS,MAAM;;CAGhD,IACE,OACA,MACA,SACA,OACM;AACN,OAAK,KAAK,OACR;GACE,GAAI,QAAQ,QAAQ,EAAE,GAAG,KAAK,YAAY,KAAK,EAAE;GACjD,GAAI,SAAS,QAAQ,EAAE,KAAK,KAAK,eAAe,MAAM,EAAE;GACzD,EACD,QACD;;CAGH,YAAoB,EAAE,MAAM,UAA4C;AACtE,SAAO;GACL,GAAG;GACH,GAAI,UAAU,SAAA,GAAA,UAAA,WACF,SAAS,UAAU,KAAK,YAAY,MAAM,CAAC;GACxD;;CAGH,eAAuB,OAAiC;AACtD,MAAI,EAAA,GAAA,UAAA,SAAS,MAAM,CACjB,QAAO,EAAE,SAAS,KAAK,YAAY,OAAO,MAAM,CAAC,EAAE;EAGrD,MAAM,EAAE,MAAM,SAAS,OAAO,GAAG,eAAe;AAEhD,SAAO;GACL,MAAM;GACN,SAAS,KAAK,YAAY,QAAQ;GAClC;GACA,GAAI,EAAA,GAAA,UAAA,SAAS,WAAW,IAAI,EAAE,OAAO,KAAK,YAAY,WAAW,EAAE;GACpE"}
1
+ {"version":3,"file":"MosaicLogger.cjs","names":[],"sources":["../../src/logger/MosaicLogger.ts"],"sourcesContent":["import { isEmpty, isError, mapValues } from \"lodash-es\";\nimport type { Logger as PinoLogger } from \"pino\";\n\nexport interface LogArgs {\n safe?: Record<string, unknown>;\n unsafe?: Record<string, unknown>;\n}\n\nenum LogLevel {\n INFO = \"info\",\n ERROR = \"error\",\n WARN = \"warn\",\n DEBUG = \"debug\",\n}\n\nexport class MosaicLogger {\n public constructor(\n private pino: PinoLogger,\n private redactValue: (value: unknown) => string,\n ) {}\n\n public child(context: LogArgs): MosaicLogger {\n return new MosaicLogger(\n this.pino.child(this.resolveArgs(context)),\n this.redactValue,\n );\n }\n\n public info(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.INFO, args, message, error);\n }\n\n public warn(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.WARN, args, message, error);\n }\n\n public debug(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.DEBUG, args, message, error);\n }\n\n public error(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.ERROR, args, message, error);\n }\n\n private log(\n level: LogLevel,\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.pino[level](\n {\n ...(args != null && { ...this.resolveArgs(args) }),\n ...(error != null && { err: this.serializeError(error) }),\n },\n message,\n );\n }\n\n private resolveArgs({ safe, unsafe }: LogArgs): Record<string, unknown> {\n return {\n ...safe,\n ...(unsafe != null &&\n mapValues(unsafe, (value) => this.redactValue(value))),\n };\n }\n\n private serializeError(error: unknown): SerializedError {\n if (!isError(error)) {\n return { message: this.redactValue(String(error)) };\n }\n\n const { name, message, stack, ...errorProps } = error;\n\n return {\n type: name,\n message: this.redactValue(message),\n stack,\n ...(!isEmpty(errorProps) && { props: this.redactValue(errorProps) }),\n };\n }\n}\n\ninterface SerializedError {\n type?: string;\n message?: string;\n stack?: string;\n props?: string;\n}\n"],"mappings":";;AAeA,IAAa,eAAb,MAAa,aAAa;CAEd;CACA;CAFV,YACE,MACA,aACA;EAFQ,KAAA,OAAA;EACA,KAAA,cAAA;CACP;CAEH,MAAa,SAAgC;EAC3C,OAAO,IAAI,aACT,KAAK,KAAK,MAAM,KAAK,YAAY,OAAO,CAAC,GACzC,KAAK,WACP;CACF;CAEA,KACE,MACA,SACA,OACM;EACN,KAAK,IAAA,QAAmB,MAAM,SAAS,KAAK;CAC9C;CAEA,KACE,MACA,SACA,OACM;EACN,KAAK,IAAA,QAAmB,MAAM,SAAS,KAAK;CAC9C;CAEA,MACE,MACA,SACA,OACM;EACN,KAAK,IAAA,SAAoB,MAAM,SAAS,KAAK;CAC/C;CAEA,MACE,MACA,SACA,OACM;EACN,KAAK,IAAA,SAAoB,MAAM,SAAS,KAAK;CAC/C;CAEA,IACE,OACA,MACA,SACA,OACM;EACN,KAAK,KAAK,OACR;GACE,GAAI,QAAQ,QAAQ,EAAE,GAAG,KAAK,YAAY,IAAI,EAAE;GAChD,GAAI,SAAS,QAAQ,EAAE,KAAK,KAAK,eAAe,KAAK,EAAE;EACzD,GACA,OACF;CACF;CAEA,YAAoB,EAAE,MAAM,UAA4C;EACtE,OAAO;GACL,GAAG;GACH,GAAI,UAAU,SAAA,GAAA,UAAA,WACF,SAAS,UAAU,KAAK,YAAY,KAAK,CAAC;EACxD;CACF;CAEA,eAAuB,OAAiC;EACtD,IAAI,EAAA,GAAA,UAAA,SAAS,KAAK,GAChB,OAAO,EAAE,SAAS,KAAK,YAAY,OAAO,KAAK,CAAC,EAAE;EAGpD,MAAM,EAAE,MAAM,SAAS,OAAO,GAAG,eAAe;EAEhD,OAAO;GACL,MAAM;GACN,SAAS,KAAK,YAAY,OAAO;GACjC;GACA,GAAI,EAAA,GAAA,UAAA,SAAS,UAAU,KAAK,EAAE,OAAO,KAAK,YAAY,UAAU,EAAE;EACpE;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"MosaicLogger.d.cts","names":[],"sources":["../../src/logger/MosaicLogger.ts"],"mappings":";;;UAGiB,OAAA;EACf,IAAA,GAAO,MAAA;EACP,MAAA,GAAS,MAAA;AAAA;AAAA,cAUE,YAAA;EAAA,QAED,IAAA;EAAA,QACA,WAAA;cADA,IAAA,EAAM,MAAA,EACN,WAAA,GAAc,KAAA;EAGjB,KAAA,CAAM,OAAA,EAAS,OAAA,GAAU,YAAA;EAOzB,IAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,IAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,KAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,KAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAAA,QAKM,GAAA;EAAA,QAeA,WAAA;EAAA,QAQA,cAAA;AAAA"}
1
+ {"version":3,"file":"MosaicLogger.d.cts","names":[],"sources":["../../src/logger/MosaicLogger.ts"],"mappings":";;;UAGiB,OAAA;EACf,IAAA,GAAO,MAAA;EACP,MAAA,GAAS,MAAM;AAAA;AAAA,cAUJ,YAAA;EAAA,QAED,IAAA;EAAA,QACA,WAAA;cADA,IAAA,EAAM,MAAA,EACN,WAAA,GAAc,KAAA;EAGjB,KAAA,CAAM,OAAA,EAAS,OAAA,GAAU,YAAA;EAOzB,IAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,IAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,KAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,KAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAAA,QAKM,GAAA;EAAA,QAeA,WAAA;EAAA,QAQA,cAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"MosaicLogger.d.ts","names":[],"sources":["../../src/logger/MosaicLogger.ts"],"mappings":";;;UAGiB,OAAA;EACf,IAAA,GAAO,MAAA;EACP,MAAA,GAAS,MAAA;AAAA;AAAA,cAUE,YAAA;EAAA,QAED,IAAA;EAAA,QACA,WAAA;cADA,IAAA,EAAM,MAAA,EACN,WAAA,GAAc,KAAA;EAGjB,KAAA,CAAM,OAAA,EAAS,OAAA,GAAU,YAAA;EAOzB,IAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,IAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,KAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,KAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAAA,QAKM,GAAA;EAAA,QAeA,WAAA;EAAA,QAQA,cAAA;AAAA"}
1
+ {"version":3,"file":"MosaicLogger.d.ts","names":[],"sources":["../../src/logger/MosaicLogger.ts"],"mappings":";;;UAGiB,OAAA;EACf,IAAA,GAAO,MAAA;EACP,MAAA,GAAS,MAAM;AAAA;AAAA,cAUJ,YAAA;EAAA,QAED,IAAA;EAAA,QACA,WAAA;cADA,IAAA,EAAM,MAAA,EACN,WAAA,GAAc,KAAA;EAGjB,KAAA,CAAM,OAAA,EAAS,OAAA,GAAU,YAAA;EAOzB,IAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,IAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,KAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAKK,KAAA,CACL,IAAA,EAAM,OAAA,cACN,OAAA,UACA,KAAA;EAAA,QAKM,GAAA;EAAA,QAeA,WAAA;EAAA,QAQA,cAAA;AAAA"}
@@ -1,6 +1,8 @@
1
1
  import { isEmpty, isError, mapValues } from "lodash-es";
2
2
  //#region src/logger/MosaicLogger.ts
3
3
  var MosaicLogger = class MosaicLogger {
4
+ pino;
5
+ redactValue;
4
6
  constructor(pino, redactValue) {
5
7
  this.pino = pino;
6
8
  this.redactValue = redactValue;
@@ -1 +1 @@
1
- {"version":3,"file":"MosaicLogger.js","names":[],"sources":["../../src/logger/MosaicLogger.ts"],"sourcesContent":["import { isEmpty, isError, mapValues } from \"lodash-es\";\nimport type { Logger as PinoLogger } from \"pino\";\n\nexport interface LogArgs {\n safe?: Record<string, unknown>;\n unsafe?: Record<string, unknown>;\n}\n\nenum LogLevel {\n INFO = \"info\",\n ERROR = \"error\",\n WARN = \"warn\",\n DEBUG = \"debug\",\n}\n\nexport class MosaicLogger {\n public constructor(\n private pino: PinoLogger,\n private redactValue: (value: unknown) => string,\n ) {}\n\n public child(context: LogArgs): MosaicLogger {\n return new MosaicLogger(\n this.pino.child(this.resolveArgs(context)),\n this.redactValue,\n );\n }\n\n public info(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.INFO, args, message, error);\n }\n\n public warn(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.WARN, args, message, error);\n }\n\n public debug(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.DEBUG, args, message, error);\n }\n\n public error(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.ERROR, args, message, error);\n }\n\n private log(\n level: LogLevel,\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.pino[level](\n {\n ...(args != null && { ...this.resolveArgs(args) }),\n ...(error != null && { err: this.serializeError(error) }),\n },\n message,\n );\n }\n\n private resolveArgs({ safe, unsafe }: LogArgs): Record<string, unknown> {\n return {\n ...safe,\n ...(unsafe != null &&\n mapValues(unsafe, (value) => this.redactValue(value))),\n };\n }\n\n private serializeError(error: unknown): SerializedError {\n if (!isError(error)) {\n return { message: this.redactValue(String(error)) };\n }\n\n const { name, message, stack, ...errorProps } = error;\n\n return {\n type: name,\n message: this.redactValue(message),\n stack,\n ...(!isEmpty(errorProps) && { props: this.redactValue(errorProps) }),\n };\n }\n}\n\ninterface SerializedError {\n type?: string;\n message?: string;\n stack?: string;\n props?: string;\n}\n"],"mappings":";;AAeA,IAAa,eAAb,MAAa,aAAa;CACxB,YACE,MACA,aACA;AAFQ,OAAA,OAAA;AACA,OAAA,cAAA;;CAGV,MAAa,SAAgC;AAC3C,SAAO,IAAI,aACT,KAAK,KAAK,MAAM,KAAK,YAAY,QAAQ,CAAC,EAC1C,KAAK,YACN;;CAGH,KACE,MACA,SACA,OACM;AACN,OAAK,IAAA,QAAmB,MAAM,SAAS,MAAM;;CAG/C,KACE,MACA,SACA,OACM;AACN,OAAK,IAAA,QAAmB,MAAM,SAAS,MAAM;;CAG/C,MACE,MACA,SACA,OACM;AACN,OAAK,IAAA,SAAoB,MAAM,SAAS,MAAM;;CAGhD,MACE,MACA,SACA,OACM;AACN,OAAK,IAAA,SAAoB,MAAM,SAAS,MAAM;;CAGhD,IACE,OACA,MACA,SACA,OACM;AACN,OAAK,KAAK,OACR;GACE,GAAI,QAAQ,QAAQ,EAAE,GAAG,KAAK,YAAY,KAAK,EAAE;GACjD,GAAI,SAAS,QAAQ,EAAE,KAAK,KAAK,eAAe,MAAM,EAAE;GACzD,EACD,QACD;;CAGH,YAAoB,EAAE,MAAM,UAA4C;AACtE,SAAO;GACL,GAAG;GACH,GAAI,UAAU,QACZ,UAAU,SAAS,UAAU,KAAK,YAAY,MAAM,CAAC;GACxD;;CAGH,eAAuB,OAAiC;AACtD,MAAI,CAAC,QAAQ,MAAM,CACjB,QAAO,EAAE,SAAS,KAAK,YAAY,OAAO,MAAM,CAAC,EAAE;EAGrD,MAAM,EAAE,MAAM,SAAS,OAAO,GAAG,eAAe;AAEhD,SAAO;GACL,MAAM;GACN,SAAS,KAAK,YAAY,QAAQ;GAClC;GACA,GAAI,CAAC,QAAQ,WAAW,IAAI,EAAE,OAAO,KAAK,YAAY,WAAW,EAAE;GACpE"}
1
+ {"version":3,"file":"MosaicLogger.js","names":[],"sources":["../../src/logger/MosaicLogger.ts"],"sourcesContent":["import { isEmpty, isError, mapValues } from \"lodash-es\";\nimport type { Logger as PinoLogger } from \"pino\";\n\nexport interface LogArgs {\n safe?: Record<string, unknown>;\n unsafe?: Record<string, unknown>;\n}\n\nenum LogLevel {\n INFO = \"info\",\n ERROR = \"error\",\n WARN = \"warn\",\n DEBUG = \"debug\",\n}\n\nexport class MosaicLogger {\n public constructor(\n private pino: PinoLogger,\n private redactValue: (value: unknown) => string,\n ) {}\n\n public child(context: LogArgs): MosaicLogger {\n return new MosaicLogger(\n this.pino.child(this.resolveArgs(context)),\n this.redactValue,\n );\n }\n\n public info(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.INFO, args, message, error);\n }\n\n public warn(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.WARN, args, message, error);\n }\n\n public debug(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.DEBUG, args, message, error);\n }\n\n public error(\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.log(LogLevel.ERROR, args, message, error);\n }\n\n private log(\n level: LogLevel,\n args: LogArgs | undefined,\n message: string,\n error?: unknown,\n ): void {\n this.pino[level](\n {\n ...(args != null && { ...this.resolveArgs(args) }),\n ...(error != null && { err: this.serializeError(error) }),\n },\n message,\n );\n }\n\n private resolveArgs({ safe, unsafe }: LogArgs): Record<string, unknown> {\n return {\n ...safe,\n ...(unsafe != null &&\n mapValues(unsafe, (value) => this.redactValue(value))),\n };\n }\n\n private serializeError(error: unknown): SerializedError {\n if (!isError(error)) {\n return { message: this.redactValue(String(error)) };\n }\n\n const { name, message, stack, ...errorProps } = error;\n\n return {\n type: name,\n message: this.redactValue(message),\n stack,\n ...(!isEmpty(errorProps) && { props: this.redactValue(errorProps) }),\n };\n }\n}\n\ninterface SerializedError {\n type?: string;\n message?: string;\n stack?: string;\n props?: string;\n}\n"],"mappings":";;AAeA,IAAa,eAAb,MAAa,aAAa;CAEd;CACA;CAFV,YACE,MACA,aACA;EAFQ,KAAA,OAAA;EACA,KAAA,cAAA;CACP;CAEH,MAAa,SAAgC;EAC3C,OAAO,IAAI,aACT,KAAK,KAAK,MAAM,KAAK,YAAY,OAAO,CAAC,GACzC,KAAK,WACP;CACF;CAEA,KACE,MACA,SACA,OACM;EACN,KAAK,IAAA,QAAmB,MAAM,SAAS,KAAK;CAC9C;CAEA,KACE,MACA,SACA,OACM;EACN,KAAK,IAAA,QAAmB,MAAM,SAAS,KAAK;CAC9C;CAEA,MACE,MACA,SACA,OACM;EACN,KAAK,IAAA,SAAoB,MAAM,SAAS,KAAK;CAC/C;CAEA,MACE,MACA,SACA,OACM;EACN,KAAK,IAAA,SAAoB,MAAM,SAAS,KAAK;CAC/C;CAEA,IACE,OACA,MACA,SACA,OACM;EACN,KAAK,KAAK,OACR;GACE,GAAI,QAAQ,QAAQ,EAAE,GAAG,KAAK,YAAY,IAAI,EAAE;GAChD,GAAI,SAAS,QAAQ,EAAE,KAAK,KAAK,eAAe,KAAK,EAAE;EACzD,GACA,OACF;CACF;CAEA,YAAoB,EAAE,MAAM,UAA4C;EACtE,OAAO;GACL,GAAG;GACH,GAAI,UAAU,QACZ,UAAU,SAAS,UAAU,KAAK,YAAY,KAAK,CAAC;EACxD;CACF;CAEA,eAAuB,OAAiC;EACtD,IAAI,CAAC,QAAQ,KAAK,GAChB,OAAO,EAAE,SAAS,KAAK,YAAY,OAAO,KAAK,CAAC,EAAE;EAGpD,MAAM,EAAE,MAAM,SAAS,OAAO,GAAG,eAAe;EAEhD,OAAO;GACL,MAAM;GACN,SAAS,KAAK,YAAY,OAAO;GACjC;GACA,GAAI,CAAC,QAAQ,UAAU,KAAK,EAAE,OAAO,KAAK,YAAY,UAAU,EAAE;EACpE;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"createLogFactory.cjs","names":["redactValueForGrafana","MosaicLogger"],"sources":["../../src/logger/createLogFactory.ts"],"sourcesContent":["import type { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { Logger as PinoLogger } from \"pino\";\nimport { redactValueForGrafana } from \"../utils/redactValueForGrafana\";\nimport { type LogArgs, MosaicLogger } from \"./MosaicLogger\";\n\nexport interface LogFactory {\n getLogger: () => MosaicLogger;\n withLogContext: <TReturn>(\n context: LogArgs,\n callback: () => TReturn,\n ) => TReturn;\n}\n\nexport function createLogFactory(\n pino: PinoLogger,\n asyncLocalStorageFactory: () => AsyncLocalStorage<MosaicLogger>,\n redactValue: (value: unknown) => string = redactValueForGrafana,\n): LogFactory {\n const baseLogger = new MosaicLogger(pino, redactValue);\n const asyncLocalStorage = asyncLocalStorageFactory();\n\n function getLogger(): MosaicLogger {\n return asyncLocalStorage.getStore() ?? baseLogger;\n }\n\n return {\n getLogger,\n withLogContext: (context, callback) => {\n return asyncLocalStorage.run(getLogger().child(context), callback);\n },\n };\n}\n"],"mappings":";;;AAaA,SAAgB,iBACd,MACA,0BACA,cAA0CA,8BAAAA,uBAC9B;CACZ,MAAM,aAAa,IAAIC,qBAAAA,aAAa,MAAM,YAAY;CACtD,MAAM,oBAAoB,0BAA0B;CAEpD,SAAS,YAA0B;AACjC,SAAO,kBAAkB,UAAU,IAAI;;AAGzC,QAAO;EACL;EACA,iBAAiB,SAAS,aAAa;AACrC,UAAO,kBAAkB,IAAI,WAAW,CAAC,MAAM,QAAQ,EAAE,SAAS;;EAErE"}
1
+ {"version":3,"file":"createLogFactory.cjs","names":["redactValueForGrafana","MosaicLogger"],"sources":["../../src/logger/createLogFactory.ts"],"sourcesContent":["import type { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { Logger as PinoLogger } from \"pino\";\nimport { redactValueForGrafana } from \"../utils/redactValueForGrafana\";\nimport { type LogArgs, MosaicLogger } from \"./MosaicLogger\";\n\nexport interface LogFactory {\n getLogger: () => MosaicLogger;\n withLogContext: <TReturn>(\n context: LogArgs,\n callback: () => TReturn,\n ) => TReturn;\n}\n\nexport function createLogFactory(\n pino: PinoLogger,\n asyncLocalStorageFactory: () => AsyncLocalStorage<MosaicLogger>,\n redactValue: (value: unknown) => string = redactValueForGrafana,\n): LogFactory {\n const baseLogger = new MosaicLogger(pino, redactValue);\n const asyncLocalStorage = asyncLocalStorageFactory();\n\n function getLogger(): MosaicLogger {\n return asyncLocalStorage.getStore() ?? baseLogger;\n }\n\n return {\n getLogger,\n withLogContext: (context, callback) => {\n return asyncLocalStorage.run(getLogger().child(context), callback);\n },\n };\n}\n"],"mappings":";;;AAaA,SAAgB,iBACd,MACA,0BACA,cAA0CA,8BAAAA,uBAC9B;CACZ,MAAM,aAAa,IAAIC,qBAAAA,aAAa,MAAM,WAAW;CACrD,MAAM,oBAAoB,yBAAyB;CAEnD,SAAS,YAA0B;EACjC,OAAO,kBAAkB,SAAS,KAAK;CACzC;CAEA,OAAO;EACL;EACA,iBAAiB,SAAS,aAAa;GACrC,OAAO,kBAAkB,IAAI,UAAU,EAAE,MAAM,OAAO,GAAG,QAAQ;EACnE;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"createLogFactory.js","names":[],"sources":["../../src/logger/createLogFactory.ts"],"sourcesContent":["import type { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { Logger as PinoLogger } from \"pino\";\nimport { redactValueForGrafana } from \"../utils/redactValueForGrafana\";\nimport { type LogArgs, MosaicLogger } from \"./MosaicLogger\";\n\nexport interface LogFactory {\n getLogger: () => MosaicLogger;\n withLogContext: <TReturn>(\n context: LogArgs,\n callback: () => TReturn,\n ) => TReturn;\n}\n\nexport function createLogFactory(\n pino: PinoLogger,\n asyncLocalStorageFactory: () => AsyncLocalStorage<MosaicLogger>,\n redactValue: (value: unknown) => string = redactValueForGrafana,\n): LogFactory {\n const baseLogger = new MosaicLogger(pino, redactValue);\n const asyncLocalStorage = asyncLocalStorageFactory();\n\n function getLogger(): MosaicLogger {\n return asyncLocalStorage.getStore() ?? baseLogger;\n }\n\n return {\n getLogger,\n withLogContext: (context, callback) => {\n return asyncLocalStorage.run(getLogger().child(context), callback);\n },\n };\n}\n"],"mappings":";;;AAaA,SAAgB,iBACd,MACA,0BACA,cAA0C,uBAC9B;CACZ,MAAM,aAAa,IAAI,aAAa,MAAM,YAAY;CACtD,MAAM,oBAAoB,0BAA0B;CAEpD,SAAS,YAA0B;AACjC,SAAO,kBAAkB,UAAU,IAAI;;AAGzC,QAAO;EACL;EACA,iBAAiB,SAAS,aAAa;AACrC,UAAO,kBAAkB,IAAI,WAAW,CAAC,MAAM,QAAQ,EAAE,SAAS;;EAErE"}
1
+ {"version":3,"file":"createLogFactory.js","names":[],"sources":["../../src/logger/createLogFactory.ts"],"sourcesContent":["import type { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { Logger as PinoLogger } from \"pino\";\nimport { redactValueForGrafana } from \"../utils/redactValueForGrafana\";\nimport { type LogArgs, MosaicLogger } from \"./MosaicLogger\";\n\nexport interface LogFactory {\n getLogger: () => MosaicLogger;\n withLogContext: <TReturn>(\n context: LogArgs,\n callback: () => TReturn,\n ) => TReturn;\n}\n\nexport function createLogFactory(\n pino: PinoLogger,\n asyncLocalStorageFactory: () => AsyncLocalStorage<MosaicLogger>,\n redactValue: (value: unknown) => string = redactValueForGrafana,\n): LogFactory {\n const baseLogger = new MosaicLogger(pino, redactValue);\n const asyncLocalStorage = asyncLocalStorageFactory();\n\n function getLogger(): MosaicLogger {\n return asyncLocalStorage.getStore() ?? baseLogger;\n }\n\n return {\n getLogger,\n withLogContext: (context, callback) => {\n return asyncLocalStorage.run(getLogger().child(context), callback);\n },\n };\n}\n"],"mappings":";;;AAaA,SAAgB,iBACd,MACA,0BACA,cAA0C,uBAC9B;CACZ,MAAM,aAAa,IAAI,aAAa,MAAM,WAAW;CACrD,MAAM,oBAAoB,yBAAyB;CAEnD,SAAS,YAA0B;EACjC,OAAO,kBAAkB,SAAS,KAAK;CACzC;CAEA,OAAO;EACL;EACA,iBAAiB,SAAS,aAAa;GACrC,OAAO,kBAAkB,IAAI,UAAU,EAAE,MAAM,OAAO,GAAG,QAAQ;EACnE;CACF;AACF"}
@@ -1,4 +1,3 @@
1
- require("../_virtual/_rolldown/runtime.cjs");
2
1
  const require_createLogFactory = require("./createLogFactory.cjs");
3
2
  const require_createPinoInstance = require("./createPinoInstance.cjs");
4
3
  const require_createTracerFactory = require("../tracer/createTracerFactory.cjs");
@@ -1 +1 @@
1
- {"version":3,"file":"createLoggerRuntime.cjs","names":["createPinoInstance","createLogFactory","AsyncLocalStorage","createTracerFactory"],"sources":["../../src/logger/createLoggerRuntime.ts"],"sourcesContent":["import { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { BaseEnvConfig } from \"@percepta/utils\";\nimport type { Logger as PinoLogger } from \"pino\";\nimport {\n createTracerFactory,\n type Tracer,\n type TracerFactory,\n} from \"../tracer/createTracerFactory\";\nimport { createLogFactory, type LogFactory } from \"./createLogFactory\";\nimport { createPinoInstance } from \"./createPinoInstance\";\nimport type { MosaicLogger } from \"./MosaicLogger\";\n\nexport interface CreateLoggerRuntimeConfig {\n readonly env: BaseEnvConfig;\n readonly pino?: PinoLogger;\n}\n\nexport type LoggerRuntime = LogFactory & TracerFactory;\n\nexport function createLoggerRuntime({\n env,\n pino = createPinoInstance(env),\n}: CreateLoggerRuntimeConfig): LoggerRuntime {\n return {\n ...createLogFactory(pino, () => new AsyncLocalStorage<MosaicLogger>()),\n ...createTracerFactory(() => new AsyncLocalStorage<Tracer>()),\n };\n}\n"],"mappings":";;;;;;AAmBA,SAAgB,oBAAoB,EAClC,KACA,OAAOA,2BAAAA,mBAAmB,IAAI,IACa;AAC3C,QAAO;EACL,GAAGC,yBAAAA,iBAAiB,YAAY,IAAIC,iBAAAA,mBAAiC,CAAC;EACtE,GAAGC,4BAAAA,0BAA0B,IAAID,iBAAAA,mBAA2B,CAAC;EAC9D"}
1
+ {"version":3,"file":"createLoggerRuntime.cjs","names":["createPinoInstance","createLogFactory","AsyncLocalStorage","createTracerFactory"],"sources":["../../src/logger/createLoggerRuntime.ts"],"sourcesContent":["import { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { BaseEnvConfig } from \"@percepta/utils\";\nimport type { Logger as PinoLogger } from \"pino\";\nimport {\n createTracerFactory,\n type Tracer,\n type TracerFactory,\n} from \"../tracer/createTracerFactory\";\nimport { createLogFactory, type LogFactory } from \"./createLogFactory\";\nimport { createPinoInstance } from \"./createPinoInstance\";\nimport type { MosaicLogger } from \"./MosaicLogger\";\n\nexport interface CreateLoggerRuntimeConfig {\n readonly env: BaseEnvConfig;\n readonly pino?: PinoLogger;\n}\n\nexport type LoggerRuntime = LogFactory & TracerFactory;\n\nexport function createLoggerRuntime({\n env,\n pino = createPinoInstance(env),\n}: CreateLoggerRuntimeConfig): LoggerRuntime {\n return {\n ...createLogFactory(pino, () => new AsyncLocalStorage<MosaicLogger>()),\n ...createTracerFactory(() => new AsyncLocalStorage<Tracer>()),\n };\n}\n"],"mappings":";;;;;AAmBA,SAAgB,oBAAoB,EAClC,KACA,OAAOA,2BAAAA,mBAAmB,GAAG,KACc;CAC3C,OAAO;EACL,GAAGC,yBAAAA,iBAAiB,YAAY,IAAIC,iBAAAA,kBAAgC,CAAC;EACrE,GAAGC,4BAAAA,0BAA0B,IAAID,iBAAAA,kBAA0B,CAAC;CAC9D;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"createLoggerRuntime.d.cts","names":[],"sources":["../../src/logger/createLoggerRuntime.ts"],"mappings":";;;;;;UAYiB,yBAAA;EAAA,SACN,GAAA,EAAK,aAAA;EAAA,SACL,IAAA,GAAO,MAAA;AAAA;AAAA,KAGN,aAAA,GAAgB,UAAA,GAAa,aAAA;AAAA,iBAEzB,mBAAA,CAAA;EACd,GAAA;EACA;AAAA,GACC,yBAAA,GAA4B,aAAA"}
1
+ {"version":3,"file":"createLoggerRuntime.d.cts","names":[],"sources":["../../src/logger/createLoggerRuntime.ts"],"mappings":";;;;;;UAYiB,yBAAA;EAAA,SACN,GAAA,EAAK,aAAA;EAAA,SACL,IAAA,GAAO,MAAU;AAAA;AAAA,KAGhB,aAAA,GAAgB,UAAA,GAAa,aAAa;AAAA,iBAEtC,mBAAA;EACd,GAAA;EACA;AAAA,GACC,yBAAA,GAA4B,aAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"createLoggerRuntime.d.ts","names":[],"sources":["../../src/logger/createLoggerRuntime.ts"],"mappings":";;;;;;UAYiB,yBAAA;EAAA,SACN,GAAA,EAAK,aAAA;EAAA,SACL,IAAA,GAAO,MAAA;AAAA;AAAA,KAGN,aAAA,GAAgB,UAAA,GAAa,aAAA;AAAA,iBAEzB,mBAAA,CAAA;EACd,GAAA;EACA;AAAA,GACC,yBAAA,GAA4B,aAAA"}
1
+ {"version":3,"file":"createLoggerRuntime.d.ts","names":[],"sources":["../../src/logger/createLoggerRuntime.ts"],"mappings":";;;;;;UAYiB,yBAAA;EAAA,SACN,GAAA,EAAK,aAAA;EAAA,SACL,IAAA,GAAO,MAAU;AAAA;AAAA,KAGhB,aAAA,GAAgB,UAAA,GAAa,aAAa;AAAA,iBAEtC,mBAAA;EACd,GAAA;EACA;AAAA,GACC,yBAAA,GAA4B,aAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"createLoggerRuntime.js","names":[],"sources":["../../src/logger/createLoggerRuntime.ts"],"sourcesContent":["import { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { BaseEnvConfig } from \"@percepta/utils\";\nimport type { Logger as PinoLogger } from \"pino\";\nimport {\n createTracerFactory,\n type Tracer,\n type TracerFactory,\n} from \"../tracer/createTracerFactory\";\nimport { createLogFactory, type LogFactory } from \"./createLogFactory\";\nimport { createPinoInstance } from \"./createPinoInstance\";\nimport type { MosaicLogger } from \"./MosaicLogger\";\n\nexport interface CreateLoggerRuntimeConfig {\n readonly env: BaseEnvConfig;\n readonly pino?: PinoLogger;\n}\n\nexport type LoggerRuntime = LogFactory & TracerFactory;\n\nexport function createLoggerRuntime({\n env,\n pino = createPinoInstance(env),\n}: CreateLoggerRuntimeConfig): LoggerRuntime {\n return {\n ...createLogFactory(pino, () => new AsyncLocalStorage<MosaicLogger>()),\n ...createTracerFactory(() => new AsyncLocalStorage<Tracer>()),\n };\n}\n"],"mappings":";;;;;AAmBA,SAAgB,oBAAoB,EAClC,KACA,OAAO,mBAAmB,IAAI,IACa;AAC3C,QAAO;EACL,GAAG,iBAAiB,YAAY,IAAI,mBAAiC,CAAC;EACtE,GAAG,0BAA0B,IAAI,mBAA2B,CAAC;EAC9D"}
1
+ {"version":3,"file":"createLoggerRuntime.js","names":[],"sources":["../../src/logger/createLoggerRuntime.ts"],"sourcesContent":["import { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { BaseEnvConfig } from \"@percepta/utils\";\nimport type { Logger as PinoLogger } from \"pino\";\nimport {\n createTracerFactory,\n type Tracer,\n type TracerFactory,\n} from \"../tracer/createTracerFactory\";\nimport { createLogFactory, type LogFactory } from \"./createLogFactory\";\nimport { createPinoInstance } from \"./createPinoInstance\";\nimport type { MosaicLogger } from \"./MosaicLogger\";\n\nexport interface CreateLoggerRuntimeConfig {\n readonly env: BaseEnvConfig;\n readonly pino?: PinoLogger;\n}\n\nexport type LoggerRuntime = LogFactory & TracerFactory;\n\nexport function createLoggerRuntime({\n env,\n pino = createPinoInstance(env),\n}: CreateLoggerRuntimeConfig): LoggerRuntime {\n return {\n ...createLogFactory(pino, () => new AsyncLocalStorage<MosaicLogger>()),\n ...createTracerFactory(() => new AsyncLocalStorage<Tracer>()),\n };\n}\n"],"mappings":";;;;;AAmBA,SAAgB,oBAAoB,EAClC,KACA,OAAO,mBAAmB,GAAG,KACc;CAC3C,OAAO;EACL,GAAG,iBAAiB,YAAY,IAAI,kBAAgC,CAAC;EACrE,GAAG,0BAA0B,IAAI,kBAA0B,CAAC;CAC9D;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"createPinoInstance.cjs","names":[],"sources":["../../src/logger/createPinoInstance.ts"],"sourcesContent":["import { type BaseEnvConfig, assertNever } from \"@percepta/utils\";\nimport pino, { type Logger } from \"pino\";\nimport pretty from \"pino-pretty\";\n\nexport function createPinoInstance(config: BaseEnvConfig): Logger {\n const nodeEnv = config.NODE_ENV;\n const level = config.LOG_LEVEL;\n\n switch (nodeEnv) {\n case \"production\":\n return pino({\n level,\n formatters: {\n level: (label) => ({ level: label }),\n },\n });\n case \"development\":\n case \"test\":\n // Development: use pino-pretty synchronously (avoids worker thread issues with Next.js/Turbopack)\n return pino(\n { level },\n pretty({\n colorize: true,\n translateTime: \"SYS:standard\",\n ignore: \"pid,hostname\",\n }),\n );\n default:\n return assertNever(nodeEnv);\n }\n}\n"],"mappings":";;;;;;;AAIA,SAAgB,mBAAmB,QAA+B;CAChE,MAAM,UAAU,OAAO;CACvB,MAAM,QAAQ,OAAO;AAErB,SAAQ,SAAR;EACE,KAAK,aACH,SAAA,GAAA,KAAA,SAAY;GACV;GACA,YAAY,EACV,QAAQ,WAAW,EAAE,OAAO,OAAO,GACpC;GACF,CAAC;EACJ,KAAK;EACL,KAAK,OAEH,SAAA,GAAA,KAAA,SACE,EAAE,OAAO,GAAA,GAAA,YAAA,SACF;GACL,UAAU;GACV,eAAe;GACf,QAAQ;GACT,CAAC,CACH;EACH,QACE,SAAA,GAAA,gBAAA,aAAmB,QAAQ"}
1
+ {"version":3,"file":"createPinoInstance.cjs","names":[],"sources":["../../src/logger/createPinoInstance.ts"],"sourcesContent":["import { type BaseEnvConfig, assertNever } from \"@percepta/utils\";\nimport pino, { type Logger } from \"pino\";\nimport pretty from \"pino-pretty\";\n\nexport function createPinoInstance(config: BaseEnvConfig): Logger {\n const nodeEnv = config.NODE_ENV;\n const level = config.LOG_LEVEL;\n\n switch (nodeEnv) {\n case \"production\":\n return pino({\n level,\n formatters: {\n level: (label) => ({ level: label }),\n },\n });\n case \"development\":\n case \"test\":\n // Development: use pino-pretty synchronously (avoids worker thread issues with Next.js/Turbopack)\n return pino(\n { level },\n pretty({\n colorize: true,\n translateTime: \"SYS:standard\",\n ignore: \"pid,hostname\",\n }),\n );\n default:\n return assertNever(nodeEnv);\n }\n}\n"],"mappings":";;;;;;;AAIA,SAAgB,mBAAmB,QAA+B;CAChE,MAAM,UAAU,OAAO;CACvB,MAAM,QAAQ,OAAO;CAErB,QAAQ,SAAR;EACE,KAAK,cACH,QAAA,GAAA,KAAA,SAAY;GACV;GACA,YAAY,EACV,QAAQ,WAAW,EAAE,OAAO,MAAM,GACpC;EACF,CAAC;EACH,KAAK;EACL,KAAK,QAEH,QAAA,GAAA,KAAA,SACE,EAAE,MAAM,IAAA,GAAA,YAAA,SACD;GACL,UAAU;GACV,eAAe;GACf,QAAQ;EACV,CAAC,CACH;EACF,SACE,QAAA,GAAA,gBAAA,aAAmB,OAAO;CAC9B;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"createPinoInstance.d.cts","names":[],"sources":["../../src/logger/createPinoInstance.ts"],"mappings":";;;;iBAIgB,kBAAA,CAAmB,MAAA,EAAQ,aAAA,GAAgB,MAAA"}
1
+ {"version":3,"file":"createPinoInstance.d.cts","names":[],"sources":["../../src/logger/createPinoInstance.ts"],"mappings":";;;;iBAIgB,kBAAA,CAAmB,MAAA,EAAQ,aAAA,GAAgB,MAAM"}
@@ -1 +1 @@
1
- {"version":3,"file":"createPinoInstance.d.ts","names":[],"sources":["../../src/logger/createPinoInstance.ts"],"mappings":";;;;iBAIgB,kBAAA,CAAmB,MAAA,EAAQ,aAAA,GAAgB,MAAA"}
1
+ {"version":3,"file":"createPinoInstance.d.ts","names":[],"sources":["../../src/logger/createPinoInstance.ts"],"mappings":";;;;iBAIgB,kBAAA,CAAmB,MAAA,EAAQ,aAAA,GAAgB,MAAM"}
@@ -1 +1 @@
1
- {"version":3,"file":"createPinoInstance.js","names":[],"sources":["../../src/logger/createPinoInstance.ts"],"sourcesContent":["import { type BaseEnvConfig, assertNever } from \"@percepta/utils\";\nimport pino, { type Logger } from \"pino\";\nimport pretty from \"pino-pretty\";\n\nexport function createPinoInstance(config: BaseEnvConfig): Logger {\n const nodeEnv = config.NODE_ENV;\n const level = config.LOG_LEVEL;\n\n switch (nodeEnv) {\n case \"production\":\n return pino({\n level,\n formatters: {\n level: (label) => ({ level: label }),\n },\n });\n case \"development\":\n case \"test\":\n // Development: use pino-pretty synchronously (avoids worker thread issues with Next.js/Turbopack)\n return pino(\n { level },\n pretty({\n colorize: true,\n translateTime: \"SYS:standard\",\n ignore: \"pid,hostname\",\n }),\n );\n default:\n return assertNever(nodeEnv);\n }\n}\n"],"mappings":";;;;AAIA,SAAgB,mBAAmB,QAA+B;CAChE,MAAM,UAAU,OAAO;CACvB,MAAM,QAAQ,OAAO;AAErB,SAAQ,SAAR;EACE,KAAK,aACH,QAAO,KAAK;GACV;GACA,YAAY,EACV,QAAQ,WAAW,EAAE,OAAO,OAAO,GACpC;GACF,CAAC;EACJ,KAAK;EACL,KAAK,OAEH,QAAO,KACL,EAAE,OAAO,EACT,OAAO;GACL,UAAU;GACV,eAAe;GACf,QAAQ;GACT,CAAC,CACH;EACH,QACE,QAAO,YAAY,QAAQ"}
1
+ {"version":3,"file":"createPinoInstance.js","names":[],"sources":["../../src/logger/createPinoInstance.ts"],"sourcesContent":["import { type BaseEnvConfig, assertNever } from \"@percepta/utils\";\nimport pino, { type Logger } from \"pino\";\nimport pretty from \"pino-pretty\";\n\nexport function createPinoInstance(config: BaseEnvConfig): Logger {\n const nodeEnv = config.NODE_ENV;\n const level = config.LOG_LEVEL;\n\n switch (nodeEnv) {\n case \"production\":\n return pino({\n level,\n formatters: {\n level: (label) => ({ level: label }),\n },\n });\n case \"development\":\n case \"test\":\n // Development: use pino-pretty synchronously (avoids worker thread issues with Next.js/Turbopack)\n return pino(\n { level },\n pretty({\n colorize: true,\n translateTime: \"SYS:standard\",\n ignore: \"pid,hostname\",\n }),\n );\n default:\n return assertNever(nodeEnv);\n }\n}\n"],"mappings":";;;;AAIA,SAAgB,mBAAmB,QAA+B;CAChE,MAAM,UAAU,OAAO;CACvB,MAAM,QAAQ,OAAO;CAErB,QAAQ,SAAR;EACE,KAAK,cACH,OAAO,KAAK;GACV;GACA,YAAY,EACV,QAAQ,WAAW,EAAE,OAAO,MAAM,GACpC;EACF,CAAC;EACH,KAAK;EACL,KAAK,QAEH,OAAO,KACL,EAAE,MAAM,GACR,OAAO;GACL,UAAU;GACV,eAAe;GACf,QAAQ;EACV,CAAC,CACH;EACF,SACE,OAAO,YAAY,OAAO;CAC9B;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"createTracerFactory.cjs","names":[],"sources":["../../src/tracer/createTracerFactory.ts"],"sourcesContent":["import type { AsyncLocalStorage } from \"node:async_hooks\";\n\nexport interface Tracer {\n traceId: string;\n}\n\nexport interface TracerFactory {\n getTracer: () => Tracer | undefined;\n withTracer: <TReturn>(tracer: Tracer, callback: () => TReturn) => TReturn;\n}\n\nexport function createTracerFactory(\n asyncLocalStorageFactory: () => AsyncLocalStorage<Tracer>,\n): TracerFactory {\n const asyncLocalStorage = asyncLocalStorageFactory();\n\n return {\n getTracer: () => asyncLocalStorage.getStore(),\n withTracer: (tracer, callback) => asyncLocalStorage.run(tracer, callback),\n };\n}\n"],"mappings":";AAWA,SAAgB,oBACd,0BACe;CACf,MAAM,oBAAoB,0BAA0B;AAEpD,QAAO;EACL,iBAAiB,kBAAkB,UAAU;EAC7C,aAAa,QAAQ,aAAa,kBAAkB,IAAI,QAAQ,SAAS;EAC1E"}
1
+ {"version":3,"file":"createTracerFactory.cjs","names":[],"sources":["../../src/tracer/createTracerFactory.ts"],"sourcesContent":["import type { AsyncLocalStorage } from \"node:async_hooks\";\n\nexport interface Tracer {\n traceId: string;\n}\n\nexport interface TracerFactory {\n getTracer: () => Tracer | undefined;\n withTracer: <TReturn>(tracer: Tracer, callback: () => TReturn) => TReturn;\n}\n\nexport function createTracerFactory(\n asyncLocalStorageFactory: () => AsyncLocalStorage<Tracer>,\n): TracerFactory {\n const asyncLocalStorage = asyncLocalStorageFactory();\n\n return {\n getTracer: () => asyncLocalStorage.getStore(),\n withTracer: (tracer, callback) => asyncLocalStorage.run(tracer, callback),\n };\n}\n"],"mappings":";AAWA,SAAgB,oBACd,0BACe;CACf,MAAM,oBAAoB,yBAAyB;CAEnD,OAAO;EACL,iBAAiB,kBAAkB,SAAS;EAC5C,aAAa,QAAQ,aAAa,kBAAkB,IAAI,QAAQ,QAAQ;CAC1E;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"createTracerFactory.d.cts","names":[],"sources":["../../src/tracer/createTracerFactory.ts"],"mappings":";;;UAEiB,MAAA;EACf,OAAA;AAAA;AAAA,UAGe,aAAA;EACf,SAAA,QAAiB,MAAA;EACjB,UAAA,YAAsB,MAAA,EAAQ,MAAA,EAAQ,QAAA,QAAgB,OAAA,KAAY,OAAA;AAAA;AAAA,iBAGpD,mBAAA,CACd,wBAAA,QAAgC,iBAAA,CAAkB,MAAA,IACjD,aAAA"}
1
+ {"version":3,"file":"createTracerFactory.d.cts","names":[],"sources":["../../src/tracer/createTracerFactory.ts"],"mappings":";;;UAEiB,MAAA;EACf,OAAO;AAAA;AAAA,UAGQ,aAAA;EACf,SAAA,QAAiB,MAAA;EACjB,UAAA,YAAsB,MAAA,EAAQ,MAAA,EAAQ,QAAA,QAAgB,OAAA,KAAY,OAAA;AAAA;AAAA,iBAGpD,mBAAA,CACd,wBAAA,QAAgC,iBAAA,CAAkB,MAAA,IACjD,aAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"createTracerFactory.d.ts","names":[],"sources":["../../src/tracer/createTracerFactory.ts"],"mappings":";;;UAEiB,MAAA;EACf,OAAA;AAAA;AAAA,UAGe,aAAA;EACf,SAAA,QAAiB,MAAA;EACjB,UAAA,YAAsB,MAAA,EAAQ,MAAA,EAAQ,QAAA,QAAgB,OAAA,KAAY,OAAA;AAAA;AAAA,iBAGpD,mBAAA,CACd,wBAAA,QAAgC,iBAAA,CAAkB,MAAA,IACjD,aAAA"}
1
+ {"version":3,"file":"createTracerFactory.d.ts","names":[],"sources":["../../src/tracer/createTracerFactory.ts"],"mappings":";;;UAEiB,MAAA;EACf,OAAO;AAAA;AAAA,UAGQ,aAAA;EACf,SAAA,QAAiB,MAAA;EACjB,UAAA,YAAsB,MAAA,EAAQ,MAAA,EAAQ,QAAA,QAAgB,OAAA,KAAY,OAAA;AAAA;AAAA,iBAGpD,mBAAA,CACd,wBAAA,QAAgC,iBAAA,CAAkB,MAAA,IACjD,aAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"createTracerFactory.js","names":[],"sources":["../../src/tracer/createTracerFactory.ts"],"sourcesContent":["import type { AsyncLocalStorage } from \"node:async_hooks\";\n\nexport interface Tracer {\n traceId: string;\n}\n\nexport interface TracerFactory {\n getTracer: () => Tracer | undefined;\n withTracer: <TReturn>(tracer: Tracer, callback: () => TReturn) => TReturn;\n}\n\nexport function createTracerFactory(\n asyncLocalStorageFactory: () => AsyncLocalStorage<Tracer>,\n): TracerFactory {\n const asyncLocalStorage = asyncLocalStorageFactory();\n\n return {\n getTracer: () => asyncLocalStorage.getStore(),\n withTracer: (tracer, callback) => asyncLocalStorage.run(tracer, callback),\n };\n}\n"],"mappings":";AAWA,SAAgB,oBACd,0BACe;CACf,MAAM,oBAAoB,0BAA0B;AAEpD,QAAO;EACL,iBAAiB,kBAAkB,UAAU;EAC7C,aAAa,QAAQ,aAAa,kBAAkB,IAAI,QAAQ,SAAS;EAC1E"}
1
+ {"version":3,"file":"createTracerFactory.js","names":[],"sources":["../../src/tracer/createTracerFactory.ts"],"sourcesContent":["import type { AsyncLocalStorage } from \"node:async_hooks\";\n\nexport interface Tracer {\n traceId: string;\n}\n\nexport interface TracerFactory {\n getTracer: () => Tracer | undefined;\n withTracer: <TReturn>(tracer: Tracer, callback: () => TReturn) => TReturn;\n}\n\nexport function createTracerFactory(\n asyncLocalStorageFactory: () => AsyncLocalStorage<Tracer>,\n): TracerFactory {\n const asyncLocalStorage = asyncLocalStorageFactory();\n\n return {\n getTracer: () => asyncLocalStorage.getStore(),\n withTracer: (tracer, callback) => asyncLocalStorage.run(tracer, callback),\n };\n}\n"],"mappings":";AAWA,SAAgB,oBACd,0BACe;CACf,MAAM,oBAAoB,yBAAyB;CAEnD,OAAO;EACL,iBAAiB,kBAAkB,SAAS;EAC5C,aAAa,QAAQ,aAAa,kBAAkB,IAAI,QAAQ,QAAQ;CAC1E;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"redactValueForGrafana.cjs","names":[],"sources":["../../src/utils/redactValueForGrafana.ts"],"sourcesContent":["export function redactValueForGrafana(value: unknown): string {\n return `<redact>${JSON.stringify(value)}</redact>`;\n}\n"],"mappings":";AAAA,SAAgB,sBAAsB,OAAwB;AAC5D,QAAO,WAAW,KAAK,UAAU,MAAM,CAAC"}
1
+ {"version":3,"file":"redactValueForGrafana.cjs","names":[],"sources":["../../src/utils/redactValueForGrafana.ts"],"sourcesContent":["export function redactValueForGrafana(value: unknown): string {\n return `<redact>${JSON.stringify(value)}</redact>`;\n}\n"],"mappings":";AAAA,SAAgB,sBAAsB,OAAwB;CAC5D,OAAO,WAAW,KAAK,UAAU,KAAK,EAAE;AAC1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"redactValueForGrafana.d.cts","names":[],"sources":["../../src/utils/redactValueForGrafana.ts"],"mappings":";iBAAgB,qBAAA,CAAsB,KAAA"}
1
+ {"version":3,"file":"redactValueForGrafana.d.cts","names":[],"sources":["../../src/utils/redactValueForGrafana.ts"],"mappings":";iBAAgB,qBAAA,CAAsB,KAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"redactValueForGrafana.d.ts","names":[],"sources":["../../src/utils/redactValueForGrafana.ts"],"mappings":";iBAAgB,qBAAA,CAAsB,KAAA"}
1
+ {"version":3,"file":"redactValueForGrafana.d.ts","names":[],"sources":["../../src/utils/redactValueForGrafana.ts"],"mappings":";iBAAgB,qBAAA,CAAsB,KAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"redactValueForGrafana.js","names":[],"sources":["../../src/utils/redactValueForGrafana.ts"],"sourcesContent":["export function redactValueForGrafana(value: unknown): string {\n return `<redact>${JSON.stringify(value)}</redact>`;\n}\n"],"mappings":";AAAA,SAAgB,sBAAsB,OAAwB;AAC5D,QAAO,WAAW,KAAK,UAAU,MAAM,CAAC"}
1
+ {"version":3,"file":"redactValueForGrafana.js","names":[],"sources":["../../src/utils/redactValueForGrafana.ts"],"sourcesContent":["export function redactValueForGrafana(value: unknown): string {\n return `<redact>${JSON.stringify(value)}</redact>`;\n}\n"],"mappings":";AAAA,SAAgB,sBAAsB,OAAwB;CAC5D,OAAO,WAAW,KAAK,UAAU,KAAK,EAAE;AAC1C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@percepta/logger",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "private": false,
5
5
  "description": "Mosaic logging with redaction",
6
6
  "files": [
@@ -31,16 +31,19 @@
31
31
  "lodash-es": "^4.17.21",
32
32
  "pino": "^10.1.0",
33
33
  "pino-pretty": "^13.1.3",
34
- "@percepta/utils": "0.1.11"
34
+ "@percepta/utils": "0.1.13"
35
35
  },
36
36
  "devDependencies": {
37
- "@types/lodash-es": "^4.17.12",
38
- "@percepta/build": "1.1.0"
37
+ "@percepta/build": "^1.2.1",
38
+ "@percepta/raspberry": "^1.0.0",
39
+ "@types/lodash-es": "^4.17.12"
39
40
  },
40
41
  "scripts": {
41
42
  "build": "tsdown",
42
43
  "dev": "tsdown --watch",
43
44
  "clean": "rimraf dist",
44
- "typecheck": "tsc --noEmit"
45
+ "typecheck": "tsc --noEmit",
46
+ "test": "vitest run",
47
+ "test:watch": "vitest"
45
48
  }
46
49
  }