@contractspec/lib.logger 1.56.0 → 1.57.0
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.
- package/dist/context.browser.d.mts +0 -1
- package/dist/context.browser.d.mts.map +1 -1
- package/dist/context.d.mts +0 -1
- package/dist/context.d.mts.map +1 -1
- package/dist/context.node.d.mts +0 -1
- package/dist/context.node.d.mts.map +1 -1
- package/dist/elysia-plugin.d.mts +2 -2
- package/dist/elysia-plugin.d.mts.map +1 -1
- package/dist/elysia-plugin.mjs +4 -4
- package/dist/elysia-plugin.mjs.map +1 -1
- package/dist/formatters.d.mts.map +1 -1
- package/dist/logger.browser.d.mts.map +1 -1
- package/dist/logger.node.d.mts.map +1 -1
- package/dist/timer.d.mts.map +1 -1
- package/dist/tracer.browser.d.mts.map +1 -1
- package/dist/tracer.node.d.mts.map +1 -1
- package/dist/types.d.mts +1 -1
- package/dist/types.d.mts.map +1 -1
- package/dist/types.mjs +8 -8
- package/dist/types.mjs.map +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.browser.d.mts","names":[],"sources":["../src/context.browser.ts"],"
|
|
1
|
+
{"version":3,"file":"context.browser.d.mts","names":[],"sources":["../src/context.browser.ts"],"mappings":";;;;;;AAmCA;;cAAa,UAAA;EAAA,eACI,QAAA;EAAA,eACA,eAAA;EAAA,OAER,WAAA,CAAA,GAAe,UAAA;EAUqB;;;EAA3C,GAAA,GAAA,CAAO,OAAA,EAAS,WAAA,EAAa,EAAA,QAAU,CAAA,GAAI,CAAA;EAqBsB;;;EAAjE,MAAA,GAAA,CAAU,iBAAA,EAAmB,OAAA,CAAQ,WAAA,GAAc,EAAA,QAAU,CAAA,GAAI,CAAA;EAgD9C;;;EApCnB,GAAA,CAAI,GAAA,UAAa,KAAA;EA7CF;;;EAuDf,GAAA,GAAA,CAAO,GAAA,WAAc,CAAA;EA3CjB;;;EAmDJ,UAAA,CAAA,GAAc,WAAA;EAnDe;;;EA2D7B,QAAA,CAAS,KAAA,EAAO,YAAA;EAtCa;;;EAgD7B,eAAA,CAAA,GAAmB,YAAA;EAhDgC;;;EAwDnD,UAAA,CAAA;AAAA"}
|
package/dist/context.d.mts
CHANGED
package/dist/context.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.mts","names":[],"sources":["../src/context.ts"],"
|
|
1
|
+
{"version":3,"file":"context.d.mts","names":[],"sources":["../src/context.ts"],"mappings":";;;UAYiB,aAAA;EACf,GAAA,IAAO,OAAA,EADqB,WAAA,EACmB,EAAA,QAAU,CAAA,GAAI,CAAA;EAC7D,MAAA,IACE,iBAAA,EAAmB,OAAA,CAFyC,WAAA,GAG5D,EAAA,QAAU,CAAA,GACT,CAAA;EACH,GAAA,CAAI,GAAA,UAAa,KAAA;EACjB,GAAA,IAAO,GAAA,WAAc,CAAA;EACrB,UAAA,IADsB,WAAA;EAEtB,QAAA,CAAS,KAAA,EADkC,YAAA;EAE3C,eAAA,IAD8C,YAAA;EAE9C,UAAA;AAAA"}
|
package/dist/context.node.d.mts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.node.d.mts","names":[],"sources":["../src/context.node.ts"],"
|
|
1
|
+
{"version":3,"file":"context.node.d.mts","names":[],"sources":["../src/context.node.ts"],"mappings":";;;;;AAWA;cAAa,UAAA;EAAA,eACI,QAAA;EAAA,QACP,OAAA;;SAMD,WAAA,CAAA,GAAe,UAAA;EAUqB;;;EAA3C,GAAA,GAAA,CAAO,OAAA,EAAS,WAAA,EAAa,EAAA,QAAU,CAAA,GAAI,CAAA;EAWsB;;;EAAjE,MAAA,GAAA,CAAU,iBAAA,EAAmB,OAAA,CAAQ,WAAA,GAAc,EAAA,QAAU,CAAA,GAAI,CAAA;EAgD9C;;;EApCnB,GAAA,CAAI,GAAA,UAAa,KAAA;EAvCT;;;EAiDR,GAAA,GAAA,CAAO,GAAA,WAAc,CAAA;EAjCrB;;;EAyCA,UAAA,CAAA,GAAc,WAAA;EAzCyB;;;EAiDvC,QAAA,CAAS,KAAA,EAAO,YAAA;EAtCT;;;EAgDP,eAAA,CAAA,GAAmB,YAAA;EAhD0C;;;EAwD7D,UAAA,CAAA;AAAA"}
|
package/dist/elysia-plugin.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ContextData } from "./types.mjs";
|
|
2
2
|
import { Logger } from "./logger.node.mjs";
|
|
3
|
-
import * as
|
|
3
|
+
import * as elysia from "elysia";
|
|
4
4
|
import { Elysia } from "elysia";
|
|
5
5
|
|
|
6
6
|
//#region src/elysia-plugin.d.ts
|
|
@@ -52,7 +52,7 @@ declare function elysiaLogger<T extends Elysia>(config?: ElysiaLoggerConfig): (a
|
|
|
52
52
|
resolve: {};
|
|
53
53
|
schema: {};
|
|
54
54
|
standaloneSchema: {};
|
|
55
|
-
response:
|
|
55
|
+
response: elysia.ExtractErrorFromHandle<{
|
|
56
56
|
readonly logInfo: (message: string, metadata?: Record<string, any>) => void;
|
|
57
57
|
readonly logError: (message: string, error?: Error, metadata?: Record<string, any>) => void;
|
|
58
58
|
readonly traceOperation: <T_1>(operationName: string, operation: () => T_1 | Promise<T_1>) => Promise<T_1>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elysia-plugin.d.mts","names":[],"sources":["../src/elysia-plugin.ts"],"
|
|
1
|
+
{"version":3,"file":"elysia-plugin.d.mts","names":[],"sources":["../src/elysia-plugin.ts"],"mappings":";;;;;;UAKiB,kBAAA;EACf,MAAA,GAAS,MAAA;EACT,WAAA;EACA,YAAA;EACA,YAAA;AAAA;;;;;iBAOc,YAAA,WAAuB,MAAA,CAAA,CACrC,MAAA,GAAQ,kBAAA,IAYS,GAAA,EAAK,CAAA,KAAC,MAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCA+EQ,QAAA,GAAa,MAAA;IAAA,qCAIrB,KAAA,GACP,KAAA,EAAK,QAAA,GAEF,MAAA;IAAA,sDAKU,SAAA,QACJ,GAAA,GAAI,OAAA,CAAQ,GAAA,MAC5B,OAAA,CAAQ,GAAA;EAAA;;;;YAAD,MAAA,CAAA,sBAAA;IAAA,oCAde,QAAA,GAAa,MAAA;IAAA,qCAIrB,KAAA,GACP,KAAA,EAAK,QAAA,GAEF,MAAA;IAAA,sDAKU,SAAA,QACJ,GAAA,GAAI,OAAA,CAAQ,GAAA,MAC5B,OAAA,CAAQ,GAAA;EAAA;AAAA"}
|
package/dist/elysia-plugin.mjs
CHANGED
|
@@ -38,22 +38,22 @@ function elysiaLogger(config = {}) {
|
|
|
38
38
|
startTime
|
|
39
39
|
};
|
|
40
40
|
}).onAfterHandle((ctx) => {
|
|
41
|
-
const { request, startTime, requestContext, logger
|
|
41
|
+
const { request, startTime, requestContext, logger } = ctx;
|
|
42
42
|
if (!startTime || !requestContext) return;
|
|
43
43
|
const duration = performance.now() - startTime;
|
|
44
44
|
const path = new URL(request.url).pathname;
|
|
45
|
-
if (logResponses) logger
|
|
45
|
+
if (logResponses) logger.info(`← 200 ${request.method} ${path}`, {
|
|
46
46
|
method: request.method,
|
|
47
47
|
path,
|
|
48
48
|
duration: `${duration.toFixed(2)}ms`,
|
|
49
49
|
requestId: requestContext.requestId
|
|
50
50
|
});
|
|
51
51
|
}).onError((ctx) => {
|
|
52
|
-
const { request, error, code, startTime, requestContext, logger
|
|
52
|
+
const { request, error, code, startTime, requestContext, logger } = ctx;
|
|
53
53
|
if (!startTime || !requestContext) return;
|
|
54
54
|
const duration = performance.now() - startTime;
|
|
55
55
|
const path = new URL(request.url).pathname;
|
|
56
|
-
logger
|
|
56
|
+
logger?.error(`✖ ${code} ${request.method} ${path}`, {
|
|
57
57
|
method: request.method,
|
|
58
58
|
path,
|
|
59
59
|
error: error?.toString?.() || "Unknown error",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elysia-plugin.mjs","names":[],"sources":["../src/elysia-plugin.ts"],"sourcesContent":["import { Logger } from './logger.node';\nimport { LogContext } from './context.node';\nimport type { ContextData } from './types';\nimport { Elysia } from 'elysia';\n\nexport interface ElysiaLoggerConfig {\n logger?: Logger;\n logRequests?: boolean;\n logResponses?: boolean;\n excludePaths?: string[];\n}\n\n/**\n * Simple ElysiaJS Logger Plugin\n * Provides automatic request logging and tracing\n */\nexport function elysiaLogger<T extends Elysia>(\n config: ElysiaLoggerConfig = {}\n) {\n const {\n logger = new Logger(),\n logRequests = true,\n logResponses = true,\n excludePaths = ['/health', '/metrics'],\n } = config;\n\n const context = LogContext.getInstance();\n\n // For type compatibility, we use a factory function\n return function (app: T) {\n return app\n .derive((ctx) => {\n const { request, path } = ctx;\n\n // Skip excluded paths\n if (excludePaths.some((excludePath) => path.startsWith(excludePath))) {\n return { logger };\n }\n\n // Create request context\n const url = new URL(request.url);\n const requestContext: ContextData = {\n requestId: context.generateId(),\n method: request.method,\n url: request.url,\n path: url.pathname,\n userAgent: request.headers.get('user-agent') || undefined,\n timestamp: new Date().toISOString(),\n };\n\n const startTime = performance.now();\n\n // Run in context\n context.run(requestContext, () => {\n // Log request\n if (logRequests) {\n logger.info(`→ ${request.method} ${path}`, {\n method: request.method,\n path,\n userAgent: requestContext.userAgent,\n requestId: requestContext.requestId,\n });\n }\n });\n\n return {\n logger,\n requestContext,\n startTime,\n };\n })\n .onAfterHandle((ctx) => {\n const { request, startTime, requestContext, logger } = ctx;\n\n if (!startTime || !requestContext) return;\n\n const duration = performance.now() - startTime;\n const path = new URL(request.url).pathname;\n\n if (logResponses) {\n logger.info(`← 200 ${request.method} ${path}`, {\n method: request.method,\n path,\n duration: `${duration.toFixed(2)}ms`,\n requestId: requestContext.requestId,\n });\n }\n })\n .onError((ctx) => {\n const { request, error, code, startTime, requestContext, logger } = ctx;\n\n if (!startTime || !requestContext) return;\n\n const duration = performance.now() - startTime;\n const path = new URL(request.url).pathname;\n\n logger?.error(`✖ ${code} ${request.method} ${path}`, {\n method: request.method,\n path,\n error: error?.toString?.() || 'Unknown error',\n code,\n duration: `${duration.toFixed(2)}ms`,\n requestId: requestContext.requestId,\n });\n })\n .derive(() => ({\n // Helper functions available in route handlers\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n logInfo: (message: string, metadata?: Record<string, any>) => {\n logger.info(message, metadata);\n },\n logError: (\n message: string,\n error?: Error,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata?: Record<string, any>\n ) => {\n logger.error(message, metadata, error);\n },\n traceOperation: async <T>(\n operationName: string,\n operation: () => T | Promise<T>\n ): Promise<T> => {\n return logger.trace(\n {\n operationType: 'custom',\n operationName,\n autoTiming: true,\n },\n operation\n );\n },\n }));\n };\n}\n"],"mappings":";;;;;;;;;AAgBA,SAAgB,aACd,SAA6B,EAAE,EAC/B;CACA,MAAM,EACJ,SAAS,IAAI,QAAQ,EACrB,cAAc,MACd,eAAe,MACf,eAAe,CAAC,WAAW,WAAW,KACpC;CAEJ,MAAM,UAAU,WAAW,aAAa;AAGxC,QAAO,SAAU,KAAQ;AACvB,SAAO,IACJ,QAAQ,QAAQ;GACf,MAAM,EAAE,SAAS,SAAS;AAG1B,OAAI,aAAa,MAAM,gBAAgB,KAAK,WAAW,YAAY,CAAC,CAClE,QAAO,EAAE,QAAQ;GAInB,MAAM,MAAM,IAAI,IAAI,QAAQ,IAAI;GAChC,MAAM,iBAA8B;IAClC,WAAW,QAAQ,YAAY;IAC/B,QAAQ,QAAQ;IAChB,KAAK,QAAQ;IACb,MAAM,IAAI;IACV,WAAW,QAAQ,QAAQ,IAAI,aAAa,IAAI;IAChD,4BAAW,IAAI,MAAM,EAAC,aAAa;IACpC;GAED,MAAM,YAAY,YAAY,KAAK;AAGnC,WAAQ,IAAI,sBAAsB;AAEhC,QAAI,YACF,QAAO,KAAK,KAAK,QAAQ,OAAO,GAAG,QAAQ;KACzC,QAAQ,QAAQ;KAChB;KACA,WAAW,eAAe;KAC1B,WAAW,eAAe;KAC3B,CAAC;KAEJ;AAEF,UAAO;IACL;IACA;IACA;IACD;IACD,CACD,eAAe,QAAQ;GACtB,MAAM,EAAE,SAAS,WAAW,gBAAgB,
|
|
1
|
+
{"version":3,"file":"elysia-plugin.mjs","names":[],"sources":["../src/elysia-plugin.ts"],"sourcesContent":["import { Logger } from './logger.node';\nimport { LogContext } from './context.node';\nimport type { ContextData } from './types';\nimport { Elysia } from 'elysia';\n\nexport interface ElysiaLoggerConfig {\n logger?: Logger;\n logRequests?: boolean;\n logResponses?: boolean;\n excludePaths?: string[];\n}\n\n/**\n * Simple ElysiaJS Logger Plugin\n * Provides automatic request logging and tracing\n */\nexport function elysiaLogger<T extends Elysia>(\n config: ElysiaLoggerConfig = {}\n) {\n const {\n logger = new Logger(),\n logRequests = true,\n logResponses = true,\n excludePaths = ['/health', '/metrics'],\n } = config;\n\n const context = LogContext.getInstance();\n\n // For type compatibility, we use a factory function\n return function (app: T) {\n return app\n .derive((ctx) => {\n const { request, path } = ctx;\n\n // Skip excluded paths\n if (excludePaths.some((excludePath) => path.startsWith(excludePath))) {\n return { logger };\n }\n\n // Create request context\n const url = new URL(request.url);\n const requestContext: ContextData = {\n requestId: context.generateId(),\n method: request.method,\n url: request.url,\n path: url.pathname,\n userAgent: request.headers.get('user-agent') || undefined,\n timestamp: new Date().toISOString(),\n };\n\n const startTime = performance.now();\n\n // Run in context\n context.run(requestContext, () => {\n // Log request\n if (logRequests) {\n logger.info(`→ ${request.method} ${path}`, {\n method: request.method,\n path,\n userAgent: requestContext.userAgent,\n requestId: requestContext.requestId,\n });\n }\n });\n\n return {\n logger,\n requestContext,\n startTime,\n };\n })\n .onAfterHandle((ctx) => {\n const { request, startTime, requestContext, logger } = ctx;\n\n if (!startTime || !requestContext) return;\n\n const duration = performance.now() - startTime;\n const path = new URL(request.url).pathname;\n\n if (logResponses) {\n logger.info(`← 200 ${request.method} ${path}`, {\n method: request.method,\n path,\n duration: `${duration.toFixed(2)}ms`,\n requestId: requestContext.requestId,\n });\n }\n })\n .onError((ctx) => {\n const { request, error, code, startTime, requestContext, logger } = ctx;\n\n if (!startTime || !requestContext) return;\n\n const duration = performance.now() - startTime;\n const path = new URL(request.url).pathname;\n\n logger?.error(`✖ ${code} ${request.method} ${path}`, {\n method: request.method,\n path,\n error: error?.toString?.() || 'Unknown error',\n code,\n duration: `${duration.toFixed(2)}ms`,\n requestId: requestContext.requestId,\n });\n })\n .derive(() => ({\n // Helper functions available in route handlers\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n logInfo: (message: string, metadata?: Record<string, any>) => {\n logger.info(message, metadata);\n },\n logError: (\n message: string,\n error?: Error,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata?: Record<string, any>\n ) => {\n logger.error(message, metadata, error);\n },\n traceOperation: async <T>(\n operationName: string,\n operation: () => T | Promise<T>\n ): Promise<T> => {\n return logger.trace(\n {\n operationType: 'custom',\n operationName,\n autoTiming: true,\n },\n operation\n );\n },\n }));\n };\n}\n"],"mappings":";;;;;;;;;AAgBA,SAAgB,aACd,SAA6B,EAAE,EAC/B;CACA,MAAM,EACJ,SAAS,IAAI,QAAQ,EACrB,cAAc,MACd,eAAe,MACf,eAAe,CAAC,WAAW,WAAW,KACpC;CAEJ,MAAM,UAAU,WAAW,aAAa;AAGxC,QAAO,SAAU,KAAQ;AACvB,SAAO,IACJ,QAAQ,QAAQ;GACf,MAAM,EAAE,SAAS,SAAS;AAG1B,OAAI,aAAa,MAAM,gBAAgB,KAAK,WAAW,YAAY,CAAC,CAClE,QAAO,EAAE,QAAQ;GAInB,MAAM,MAAM,IAAI,IAAI,QAAQ,IAAI;GAChC,MAAM,iBAA8B;IAClC,WAAW,QAAQ,YAAY;IAC/B,QAAQ,QAAQ;IAChB,KAAK,QAAQ;IACb,MAAM,IAAI;IACV,WAAW,QAAQ,QAAQ,IAAI,aAAa,IAAI;IAChD,4BAAW,IAAI,MAAM,EAAC,aAAa;IACpC;GAED,MAAM,YAAY,YAAY,KAAK;AAGnC,WAAQ,IAAI,sBAAsB;AAEhC,QAAI,YACF,QAAO,KAAK,KAAK,QAAQ,OAAO,GAAG,QAAQ;KACzC,QAAQ,QAAQ;KAChB;KACA,WAAW,eAAe;KAC1B,WAAW,eAAe;KAC3B,CAAC;KAEJ;AAEF,UAAO;IACL;IACA;IACA;IACD;IACD,CACD,eAAe,QAAQ;GACtB,MAAM,EAAE,SAAS,WAAW,gBAAgB,WAAW;AAEvD,OAAI,CAAC,aAAa,CAAC,eAAgB;GAEnC,MAAM,WAAW,YAAY,KAAK,GAAG;GACrC,MAAM,OAAO,IAAI,IAAI,QAAQ,IAAI,CAAC;AAElC,OAAI,aACF,QAAO,KAAK,SAAS,QAAQ,OAAO,GAAG,QAAQ;IAC7C,QAAQ,QAAQ;IAChB;IACA,UAAU,GAAG,SAAS,QAAQ,EAAE,CAAC;IACjC,WAAW,eAAe;IAC3B,CAAC;IAEJ,CACD,SAAS,QAAQ;GAChB,MAAM,EAAE,SAAS,OAAO,MAAM,WAAW,gBAAgB,WAAW;AAEpE,OAAI,CAAC,aAAa,CAAC,eAAgB;GAEnC,MAAM,WAAW,YAAY,KAAK,GAAG;GACrC,MAAM,OAAO,IAAI,IAAI,QAAQ,IAAI,CAAC;AAElC,WAAQ,MAAM,KAAK,KAAK,GAAG,QAAQ,OAAO,GAAG,QAAQ;IACnD,QAAQ,QAAQ;IAChB;IACA,OAAO,OAAO,YAAY,IAAI;IAC9B;IACA,UAAU,GAAG,SAAS,QAAQ,EAAE,CAAC;IACjC,WAAW,eAAe;IAC3B,CAAC;IACF,CACD,cAAc;GAGb,UAAU,SAAiB,aAAmC;AAC5D,WAAO,KAAK,SAAS,SAAS;;GAEhC,WACE,SACA,OAEA,aACG;AACH,WAAO,MAAM,SAAS,UAAU,MAAM;;GAExC,gBAAgB,OACd,eACA,cACe;AACf,WAAO,OAAO,MACZ;KACE,eAAe;KACf;KACA,YAAY;KACb,EACD,UACD;;GAEJ,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatters.d.mts","names":[],"sources":["../src/formatters.ts"],"
|
|
1
|
+
{"version":3,"file":"formatters.d.mts","names":[],"sources":["../src/formatters.ts"],"mappings":";;;cAkCa,YAAA,YAAwB,SAAA;EAAA,QAC3B,YAAA;cAEI,YAAA;EAIZ,MAAA,CAAO,KAAA,EAAO,QAAA;EAAA,QAoDN,eAAA;EAAA,QAIA,eAAA;EAAA,QAWA,cAAA;EAAA,QAWA,aAAA;EAAA,QAMA,cAAA;EAAA,QAKA,WAAA;EAAA,QAcA,YAAA;EAAA,QAoBA,WAAA;EAAA,QAiBA,QAAA;AAAA;AAAA,cAMG,mBAAA,YAA+B,SAAA;EAC1C,MAAA,CAAO,KAAA,EAAO,QAAA;AAAA;AAAA,cAiDH,eAAA,YAA2B,SAAA;EAAA,QAC9B,QAAA;EAAA,QACA,UAAA;cAGN,QAAA,WACA,UAAA,IAAc,IAAA,EAAM,IAAA;EAMtB,MAAA,CAAO,KAAA,EAAO,QAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.browser.d.mts","names":[],"sources":["../src/logger.browser.ts"],"
|
|
1
|
+
{"version":3,"file":"logger.browser.d.mts","names":[],"sources":["../src/logger.browser.ts"],"mappings":";;;;cAca,MAAA;EAAA,QACH,MAAA;EAAA,QACA,SAAA;EAAA,QACA,OAAA;EAAA,QACA,MAAA;EAAA,QACA,YAAA;cAEI,MAAA,GAAS,OAAA,CAAQ,YAAA;EA0B7B,QAAA,CAAS,OAAA,UAAiB,QAAA,GAAW,MAAA;EAIrC,KAAA,CAAM,OAAA,UAAiB,QAAA,GAAW,MAAA;EAIlC,IAAA,CAAK,OAAA,UAAiB,QAAA,GAAW,MAAA;EAIjC,IAAA,CAAK,OAAA,UAAiB,QAAA,GAAW,MAAA;EAIjC,KAAA,CACE,OAAA,UACA,QAAA,GAAW,MAAA,mBACX,KAAA,GAAQ,KAAA;EAKV,KAAA,CACE,OAAA,UACA,QAAA,GAAW,MAAA,mBACX,KAAA,GAAQ,KAAA;EAMV,WAAA,GAAA,CAAe,OAAA,EAAS,WAAA,EAAa,EAAA,QAAU,CAAA,GAAI,CAAA;EAInD,aAAA,GAAA,CAAiB,iBAAA,EAAmB,OAAA,CAAQ,WAAA,GAAc,EAAA,QAAU,CAAA,GAAI,CAAA;EAIxE,UAAA,CAAW,GAAA,UAAa,KAAA;EAIxB,UAAA,CAAA,GAAc,WAAA;EAKd,KAAA,EAAO,WAAA;EAWP,UAAA,CAAA;EAIA,SAAA,CAAU,OAAA,EAAS,cAAA,GAAc,YAAA;EAOjC,UAAA,CAAW,MAAA;EAOX,gBAAA,CAAiB,GAAA,UAAa,KAAA;EAM9B,YAAA,CAAA,GAAgB,IAAA;EAOhB,UAAA,CAAW,EAAA,YAAc,KAAA;EAOzB,SAAA,CAAU,EAAA;EAOV,QAAA,CAAS,EAAA,WAAa,KAAA;EAKtB,KAAA,CAAM,OAAA,EAAS,OAAA,CAAQ,WAAA,IAAe,MAAA;EAQtC,QAAA,CAAS,KAAA,EAAO,QAAA;EAIhB,YAAA,CAAa,SAAA,EAAW,SAAA;EAKlB,OAAA,GAAA,CACJ,aAAA,UACA,EAAA,QAAU,CAAA,GAAI,OAAA,CAAQ,CAAA,GACtB,OAAA;IAAY,SAAA;IAAqB,QAAA,GAAW,QAAA;EAAA,IAC3C,OAAA,CAAQ,CAAA;EA4CX,UAAA,CACE,MAAA,UACA,GAAA,UACA,UAAA,WACA,QAAA;EAeI,KAAA,CAAA,GAAS,OAAA;EAKf,QAAA,CAAA;IACE,YAAA;IACA,WAAA;IACA,MAAA,EAAQ,YAAA;EAAA;EAAA,UAUA,MAAA,CAAO,OAAA,UAAiB,KAAA,EAAO,QAAA;EAAA,QASjC,GAAA;EAAA,QAuCA,eAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.node.d.mts","names":[],"sources":["../src/logger.node.ts"],"
|
|
1
|
+
{"version":3,"file":"logger.node.d.mts","names":[],"sources":["../src/logger.node.ts"],"mappings":";;;;cAca,MAAA;EAAA,QACH,MAAA;EAAA,QACA,SAAA;EAAA,QACA,OAAA;EAAA,QACA,MAAA;EAAA,QACA,YAAA;cAEI,MAAA,GAAS,OAAA,CAAQ,YAAA;EA0B7B,QAAA,CAAS,OAAA,UAAiB,QAAA,GAAW,MAAA;EAIrC,KAAA,CAAM,OAAA,UAAiB,QAAA,GAAW,MAAA;EAIlC,IAAA,CAAK,OAAA,UAAiB,QAAA,GAAW,MAAA;EAIjC,IAAA,CAAK,OAAA,UAAiB,QAAA,GAAW,MAAA;EAIjC,KAAA,CACE,OAAA,UACA,QAAA,GAAW,MAAA,mBACX,KAAA,GAAQ,KAAA;EAKV,KAAA,CACE,OAAA,UACA,QAAA,GAAW,MAAA,mBACX,KAAA,GAAQ,KAAA;EAMV,WAAA,GAAA,CAAe,OAAA,EAAS,WAAA,EAAa,EAAA,QAAU,CAAA,GAAI,CAAA;EAInD,aAAA,GAAA,CAAiB,iBAAA,EAAmB,OAAA,CAAQ,WAAA,GAAc,EAAA,QAAU,CAAA,GAAI,CAAA;EAIxE,UAAA,CAAW,GAAA,UAAa,KAAA;EAIxB,UAAA,CAAA,GAAc,WAAA;EAKd,KAAA,EAAO,WAAA;EAWP,UAAA,CAAA;EAIA,SAAA,CAAU,OAAA,EAAS,cAAA,GAAc,YAAA;EAOjC,UAAA,CAAW,MAAA;EAOX,gBAAA,CAAiB,GAAA,UAAa,KAAA;EAM9B,YAAA,CAAA,GAAgB,IAAA;EAOhB,UAAA,CAAW,EAAA,YAAc,KAAA;EAOzB,SAAA,CAAU,EAAA;EAOV,QAAA,CAAS,EAAA,WAAa,KAAA;EAKtB,KAAA,CAAM,OAAA,EAAS,OAAA,CAAQ,WAAA,IAAe,MAAA;EAQtC,QAAA,CAAS,KAAA,EAAO,QAAA;EAIhB,YAAA,CAAa,SAAA,EAAW,SAAA;EAKlB,OAAA,GAAA,CACJ,aAAA,UACA,EAAA,QAAU,CAAA,GAAI,OAAA,CAAQ,CAAA,GACtB,OAAA;IAAY,SAAA;IAAqB,QAAA,GAAW,QAAA;EAAA,IAC3C,OAAA,CAAQ,CAAA;EA4CX,UAAA,CACE,MAAA,UACA,GAAA,UACA,UAAA,WACA,QAAA;EAeI,KAAA,CAAA,GAAS,OAAA;EAKf,QAAA,CAAA;IACE,YAAA;IACA,WAAA;IACA,MAAA,EAAQ,YAAA;EAAA;EAAA,UAUA,MAAA,CAAO,OAAA,UAAiB,KAAA,EAAO,QAAA;EAAA,QASjC,GAAA;EAAA,QAuCA,eAAA;AAAA"}
|
package/dist/timer.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timer.d.mts","names":[],"sources":["../src/timer.ts"],"
|
|
1
|
+
{"version":3,"file":"timer.d.mts","names":[],"sources":["../src/timer.ts"],"mappings":";;;cAEa,KAAA,YAAiB,OAAA;EAAA,SACnB,EAAA;EAAA,QACD,SAAA;EAAA,QACA,IAAA;EAAA,QACA,OAAA;EAAA,QACA,QAAA;cAEI,EAAA;EANH;;;EAcT,IAAA,CAAA;EAVQ;;;EA+BR,GAAA,CAAI,KAAA;EAAJ;;;EAoBA,UAAA,CAAA;EAUa;;;EAAb,OAAA,CAAA;IAAa,KAAA;IAAgB,IAAA;IAAc,OAAA;EAAA;EAWjC;;;EAJV,UAAA,CAAA;IACE,EAAA;IACA,SAAA;IACA,SAAA;IACA,IAAA;MAAQ,KAAA;MAAgB,IAAA;MAAc,OAAA;IAAA;EAAA;EA2E1B;;;EA9Dd,KAAA,CAAA;AAAA;;;;cAWW,YAAA;EAAA,QACH,MAAA;EAqBR;;;EAhBA,KAAA,CAAM,EAAA,YAAc,KAAA;EAsCpB;;;EA7BA,GAAA,CAAI,EAAA,WAAa,KAAA;EAoCa;;AAQhC;EArCE,IAAA,CAAK,EAAA;EAqCoB;;;EAxBzB,SAAA,CAAA,GAAa,KAAA;EA2BiC;;;EAlB9C,KAAA,CAAA;EAe0B;;;EAR1B,UAAA,CAAA,GAAc,UAAA,CAAW,KAAA;AAAA;;;;iBAQL,KAAA,GAAA,CACpB,SAAA,QAAiB,OAAA,CAAQ,CAAA,GACzB,OAAA;EAAY,EAAA;EAAa,UAAA,IAAc,OAAA;AAAA,IACtC,OAAA;EAAU,MAAA,EAAQ,CAAA;EAAG,OAAA;EAAiB,KAAA,EAAO,KAAA;AAAA;AAmBhD;;;AAAA,iBAAgB,SAAA,GAAA,CACd,SAAA,QAAiB,CAAA,EACjB,OAAA;EAAY,EAAA;EAAa,UAAA,IAAc,OAAA;AAAA;EACpC,MAAA,EAAQ,CAAA;EAAG,OAAA;EAAiB,KAAA,EAAO,KAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracer.browser.d.mts","names":[],"sources":["../src/tracer.browser.ts"],"
|
|
1
|
+
{"version":3,"file":"tracer.browser.d.mts","names":[],"sources":["../src/tracer.browser.ts"],"mappings":";;;cAIa,MAAA;EAAA,QACH,OAAA;EAAA,QACA,WAAA;;EAFS;;;EAWjB,SAAA,CAAU,OAAA,EAAS,cAAA,GAAiB,YAAA;EAkDxB;;;EA1BZ,UAAA,CAAW,MAAA;EA2BR;;;EAHG,KAAA,GAAA,CACJ,OAAA,EAAS,cAAA,EACT,EAAA,QAAU,CAAA,GAAI,OAAA,CAAQ,CAAA,IACrB,OAAA,CAAQ,CAAA;EA4E+B;;;EAlC1C,WAAA,CAAY,GAAA,UAAa,KAAA;;;;EAUzB,OAAA,CAAA,GAAW,IAAA;EAvGyB;;;EAiHpC,eAAA,CAAA,GAAmB,YAAA;EAjEP;;;EAwEZ,cAAA,CAAA,GAAkB,YAAA;EAtEF;;;EA6EhB,YAAA,CAAa,MAAA,WAAiB,YAAA;EA5EnB;;;EAAA,QAmFH,eAAA;EA/BR;;;EAAA,QAsCQ,cAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracer.node.d.mts","names":[],"sources":["../src/tracer.node.ts"],"
|
|
1
|
+
{"version":3,"file":"tracer.node.d.mts","names":[],"sources":["../src/tracer.node.ts"],"mappings":";;;cAIa,MAAA;EAAA,QACH,OAAA;EAAA,QACA,WAAA;;EAFS;;;EAWjB,SAAA,CAAU,OAAA,EAAS,cAAA,GAAiB,YAAA;EAkDxB;;;EA1BZ,UAAA,CAAW,MAAA;EA2BR;;;EAHG,KAAA,GAAA,CACJ,OAAA,EAAS,cAAA,EACT,EAAA,QAAU,CAAA,GAAI,OAAA,CAAQ,CAAA,IACrB,OAAA,CAAQ,CAAA;EA4E+B;;;EAlC1C,WAAA,CAAY,GAAA,UAAa,KAAA;;;;EAUzB,OAAA,CAAA,GAAW,IAAA;EAvGyB;;;EAiHpC,eAAA,CAAA,GAAmB,YAAA;EAjEP;;;EAwEZ,cAAA,CAAA,GAAkB,YAAA;EAtEF;;;EA6EhB,YAAA,CAAa,MAAA,WAAiB,YAAA;EA5EnB;;;EAAA,QAmFH,eAAA;EA/BR;;;EAAA,QAsCQ,cAAA;AAAA"}
|
package/dist/types.d.mts
CHANGED
package/dist/types.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.mts","names":[],"sources":["../src/types.ts"],"
|
|
1
|
+
{"version":3,"file":"types.d.mts","names":[],"sources":["../src/types.ts"],"mappings":";aAAY,QAAA;EACV,KAAA;EACA,KAAA;EACA,IAAA;EACA,IAAA;EACA,KAAA;EACA,KAAA;AAAA;AAAA,UAGe,QAAA;EACf,KAAA,EAAO,QAAA;EACP,OAAA;EACA,SAAA,EAAW,IAAA;EACX,OAAA;EACA,QAAA;EACA,MAAA;EAEA,OAAA,GAAU,MAAA;EAEV,QAAA,GAAW,MAAA;EACX,QAAA;EACA,KAAA,GAAQ,KAAA;EACR,IAAA;AAAA;AAAA,UAGe,YAAA;EACf,OAAA;EACA,QAAA;EACA,MAAA;EACA,aAAA;EACA,aAAA;EACA,SAAA;EAEA,QAAA,EAAU,MAAA;EACV,IAAA;AAAA;AAAA,UAGe,cAAA;EACf,aAAA;EAOA,aAAA;EAEA,QAAA,GAAW,MAAA;EACX,IAAA;EACA,UAAA;AAAA;AAAA,UAGe,YAAA;EACf,KAAA,EAAO,QAAA;EACP,WAAA;EACA,aAAA;EACA,YAAA;EACA,aAAA;EACA,YAAA;EACA,eAAA;EACA,eAAA;AAAA;AAAA,UAGe,SAAA;EACf,MAAA,CAAO,KAAA,EAAO,QAAA;AAAA;AAAA,UAGC,KAAA;EAAA,SACN,EAAA;EAET,IAAA;EACA,GAAA,CAAI,KAAA;EACJ,UAAA;AAAA;AAAA,UAGe,WAAA;EAAA,CAEd,GAAA;EACD,MAAA;EACA,SAAA;EACA,SAAA;EACA,EAAA;EACA,SAAA;AAAA;AAAA,KAGU,SAAA,IACV,OAAA,UAEA,QAAA,GAAW,MAAA;AAAA,KAED,WAAA,OACV,OAAA,EAAS,cAAA,EACT,EAAA,QAAU,CAAA,GAAI,OAAA,CAAQ,CAAA,MACnB,OAAA,CAAQ,CAAA"}
|
package/dist/types.mjs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
//#region src/types.ts
|
|
2
|
-
let LogLevel = /* @__PURE__ */ function(LogLevel
|
|
3
|
-
LogLevel
|
|
4
|
-
LogLevel
|
|
5
|
-
LogLevel
|
|
6
|
-
LogLevel
|
|
7
|
-
LogLevel
|
|
8
|
-
LogLevel
|
|
9
|
-
return LogLevel
|
|
2
|
+
let LogLevel = /* @__PURE__ */ function(LogLevel) {
|
|
3
|
+
LogLevel[LogLevel["TRACE"] = 0] = "TRACE";
|
|
4
|
+
LogLevel[LogLevel["DEBUG"] = 1] = "DEBUG";
|
|
5
|
+
LogLevel[LogLevel["INFO"] = 2] = "INFO";
|
|
6
|
+
LogLevel[LogLevel["WARN"] = 3] = "WARN";
|
|
7
|
+
LogLevel[LogLevel["ERROR"] = 4] = "ERROR";
|
|
8
|
+
LogLevel[LogLevel["FATAL"] = 5] = "FATAL";
|
|
9
|
+
return LogLevel;
|
|
10
10
|
}({});
|
|
11
11
|
|
|
12
12
|
//#endregion
|
package/dist/types.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.mjs","names":[],"sources":["../src/types.ts"],"sourcesContent":["export enum LogLevel {\n TRACE = 0,\n DEBUG = 1,\n INFO = 2,\n WARN = 3,\n ERROR = 4,\n FATAL = 5,\n}\n\nexport interface LogEntry {\n level: LogLevel;\n message: string;\n timestamp: Date;\n traceId?: string;\n parentId?: string;\n spanId?: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n context?: Record<string, any>;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata?: Record<string, any>;\n duration?: number;\n error?: Error;\n tags?: string[];\n}\n\nexport interface TraceContext {\n traceId: string;\n parentId?: string;\n spanId: string;\n operationType: string;\n operationName: string;\n startTime: number;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata: Record<string, any>;\n tags: string[];\n}\n\nexport interface TracingOptions {\n operationType:\n | 'http'\n | 'websocket'\n | 'cron'\n | 'queue'\n | 'database'\n | 'custom';\n operationName: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata?: Record<string, any>;\n tags?: string[];\n autoTiming?: boolean;\n}\n\nexport interface LoggerConfig {\n level: LogLevel;\n environment: 'development' | 'production' | 'test';\n enableTracing: boolean;\n enableTiming: boolean;\n enableContext: boolean;\n enableColors: boolean;\n maxContextDepth: number;\n timestampFormat: 'iso' | 'epoch' | 'relative';\n}\n\nexport interface Formatter {\n format(entry: LogEntry): string;\n}\n\nexport interface Timer {\n readonly id: string;\n // private startTime: number;\n stop(): number;\n lap(label?: string): number;\n getElapsed(): number;\n}\n\nexport interface ContextData {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n userId?: string;\n requestId?: string;\n sessionId?: string;\n ip?: string;\n userAgent?: string;\n}\n\nexport type LogMethod = (\n message: string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata?: Record<string, any>\n) => void;\nexport type TraceMethod = <T>(\n options: TracingOptions,\n fn: () => T | Promise<T>\n) => Promise<T>;\n"],"mappings":";AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"types.mjs","names":[],"sources":["../src/types.ts"],"sourcesContent":["export enum LogLevel {\n TRACE = 0,\n DEBUG = 1,\n INFO = 2,\n WARN = 3,\n ERROR = 4,\n FATAL = 5,\n}\n\nexport interface LogEntry {\n level: LogLevel;\n message: string;\n timestamp: Date;\n traceId?: string;\n parentId?: string;\n spanId?: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n context?: Record<string, any>;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata?: Record<string, any>;\n duration?: number;\n error?: Error;\n tags?: string[];\n}\n\nexport interface TraceContext {\n traceId: string;\n parentId?: string;\n spanId: string;\n operationType: string;\n operationName: string;\n startTime: number;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata: Record<string, any>;\n tags: string[];\n}\n\nexport interface TracingOptions {\n operationType:\n | 'http'\n | 'websocket'\n | 'cron'\n | 'queue'\n | 'database'\n | 'custom';\n operationName: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata?: Record<string, any>;\n tags?: string[];\n autoTiming?: boolean;\n}\n\nexport interface LoggerConfig {\n level: LogLevel;\n environment: 'development' | 'production' | 'test';\n enableTracing: boolean;\n enableTiming: boolean;\n enableContext: boolean;\n enableColors: boolean;\n maxContextDepth: number;\n timestampFormat: 'iso' | 'epoch' | 'relative';\n}\n\nexport interface Formatter {\n format(entry: LogEntry): string;\n}\n\nexport interface Timer {\n readonly id: string;\n // private startTime: number;\n stop(): number;\n lap(label?: string): number;\n getElapsed(): number;\n}\n\nexport interface ContextData {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n userId?: string;\n requestId?: string;\n sessionId?: string;\n ip?: string;\n userAgent?: string;\n}\n\nexport type LogMethod = (\n message: string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n metadata?: Record<string, any>\n) => void;\nexport type TraceMethod = <T>(\n options: TracingOptions,\n fn: () => T | Promise<T>\n) => Promise<T>;\n"],"mappings":";AAAA,IAAY,8CAAL;AACL;AACA;AACA;AACA;AACA;AACA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@contractspec/lib.logger",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.57.0",
|
|
4
4
|
"description": "Comprehensive logging library optimized for Bun with ElysiaJS integration",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"contractspec",
|
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
"dev": "bun build:bundle --watch"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@contractspec/tool.typescript": "1.
|
|
28
|
-
"@contractspec/tool.tsdown": "1.
|
|
29
|
-
"tsdown": "^0.
|
|
27
|
+
"@contractspec/tool.typescript": "1.57.0",
|
|
28
|
+
"@contractspec/tool.tsdown": "1.57.0",
|
|
29
|
+
"tsdown": "^0.20.3",
|
|
30
30
|
"typescript": "^5.9.3"
|
|
31
31
|
},
|
|
32
32
|
"peerDependencies": {
|