@affectively/aeon 1.0.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/LICENSE +21 -0
- package/README.md +332 -0
- package/dist/core/index.cjs +4 -0
- package/dist/core/index.cjs.map +1 -0
- package/dist/core/index.d.cts +146 -0
- package/dist/core/index.d.ts +146 -0
- package/dist/core/index.js +3 -0
- package/dist/core/index.js.map +1 -0
- package/dist/distributed/index.cjs +1874 -0
- package/dist/distributed/index.cjs.map +1 -0
- package/dist/distributed/index.d.cts +2 -0
- package/dist/distributed/index.d.ts +2 -0
- package/dist/distributed/index.js +1869 -0
- package/dist/distributed/index.js.map +1 -0
- package/dist/index-C_4CMV5c.d.cts +1207 -0
- package/dist/index-C_4CMV5c.d.ts +1207 -0
- package/dist/index.cjs +4671 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +812 -0
- package/dist/index.d.ts +812 -0
- package/dist/index.js +4632 -0
- package/dist/index.js.map +1 -0
- package/dist/utils/index.cjs +64 -0
- package/dist/utils/index.cjs.map +1 -0
- package/dist/utils/index.d.cts +38 -0
- package/dist/utils/index.d.ts +38 -0
- package/dist/utils/index.js +57 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/versioning/index.cjs +871 -0
- package/dist/versioning/index.cjs.map +1 -0
- package/dist/versioning/index.d.cts +472 -0
- package/dist/versioning/index.d.ts +472 -0
- package/dist/versioning/index.js +866 -0
- package/dist/versioning/index.js.map +1 -0
- package/package.json +142 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
// src/utils/logger.ts
|
|
4
|
+
var consoleLogger = {
|
|
5
|
+
debug: (...args) => {
|
|
6
|
+
console.debug("[AEON:DEBUG]", ...args);
|
|
7
|
+
},
|
|
8
|
+
info: (...args) => {
|
|
9
|
+
console.info("[AEON:INFO]", ...args);
|
|
10
|
+
},
|
|
11
|
+
warn: (...args) => {
|
|
12
|
+
console.warn("[AEON:WARN]", ...args);
|
|
13
|
+
},
|
|
14
|
+
error: (...args) => {
|
|
15
|
+
console.error("[AEON:ERROR]", ...args);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
var noopLogger = {
|
|
19
|
+
debug: () => {
|
|
20
|
+
},
|
|
21
|
+
info: () => {
|
|
22
|
+
},
|
|
23
|
+
warn: () => {
|
|
24
|
+
},
|
|
25
|
+
error: () => {
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
var currentLogger = consoleLogger;
|
|
29
|
+
function getLogger() {
|
|
30
|
+
return currentLogger;
|
|
31
|
+
}
|
|
32
|
+
function setLogger(logger2) {
|
|
33
|
+
currentLogger = logger2;
|
|
34
|
+
}
|
|
35
|
+
function resetLogger() {
|
|
36
|
+
currentLogger = consoleLogger;
|
|
37
|
+
}
|
|
38
|
+
function disableLogging() {
|
|
39
|
+
currentLogger = noopLogger;
|
|
40
|
+
}
|
|
41
|
+
function createNamespacedLogger(namespace) {
|
|
42
|
+
const logger2 = getLogger();
|
|
43
|
+
return {
|
|
44
|
+
debug: (...args) => logger2.debug(`[${namespace}]`, ...args),
|
|
45
|
+
info: (...args) => logger2.info(`[${namespace}]`, ...args),
|
|
46
|
+
warn: (...args) => logger2.warn(`[${namespace}]`, ...args),
|
|
47
|
+
error: (...args) => logger2.error(`[${namespace}]`, ...args)
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
var logger = {
|
|
51
|
+
debug: (...args) => getLogger().debug(...args),
|
|
52
|
+
info: (...args) => getLogger().info(...args),
|
|
53
|
+
warn: (...args) => getLogger().warn(...args),
|
|
54
|
+
error: (...args) => getLogger().error(...args)
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
exports.createNamespacedLogger = createNamespacedLogger;
|
|
58
|
+
exports.disableLogging = disableLogging;
|
|
59
|
+
exports.getLogger = getLogger;
|
|
60
|
+
exports.logger = logger;
|
|
61
|
+
exports.resetLogger = resetLogger;
|
|
62
|
+
exports.setLogger = setLogger;
|
|
63
|
+
//# sourceMappingURL=index.cjs.map
|
|
64
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/logger.ts"],"names":["logger"],"mappings":";;;AAoBA,IAAM,aAAA,GAAwB;AAAA,EAC5B,KAAA,EAAO,IAAI,IAAA,KAAoB;AAE7B,IAAA,OAAA,CAAQ,KAAA,CAAM,cAAA,EAAgB,GAAG,IAAI,CAAA;AAAA,EACvC,CAAA;AAAA,EACA,IAAA,EAAM,IAAI,IAAA,KAAoB;AAE5B,IAAA,OAAA,CAAQ,IAAA,CAAK,aAAA,EAAe,GAAG,IAAI,CAAA;AAAA,EACrC,CAAA;AAAA,EACA,IAAA,EAAM,IAAI,IAAA,KAAoB;AAE5B,IAAA,OAAA,CAAQ,IAAA,CAAK,aAAA,EAAe,GAAG,IAAI,CAAA;AAAA,EACrC,CAAA;AAAA,EACA,KAAA,EAAO,IAAI,IAAA,KAAoB;AAE7B,IAAA,OAAA,CAAQ,KAAA,CAAM,cAAA,EAAgB,GAAG,IAAI,CAAA;AAAA,EACvC;AACF,CAAA;AAKA,IAAM,UAAA,GAAqB;AAAA,EACzB,OAAO,MAAM;AAAA,EAAC,CAAA;AAAA,EACd,MAAM,MAAM;AAAA,EAAC,CAAA;AAAA,EACb,MAAM,MAAM;AAAA,EAAC,CAAA;AAAA,EACb,OAAO,MAAM;AAAA,EAAC;AAChB,CAAA;AAKA,IAAI,aAAA,GAAwB,aAAA;AAKrB,SAAS,SAAA,GAAoB;AAClC,EAAA,OAAO,aAAA;AACT;AAKO,SAAS,UAAUA,OAAAA,EAAsB;AAC9C,EAAA,aAAA,GAAgBA,OAAAA;AAClB;AAKO,SAAS,WAAA,GAAoB;AAClC,EAAA,aAAA,GAAgB,aAAA;AAClB;AAKO,SAAS,cAAA,GAAuB;AACrC,EAAA,aAAA,GAAgB,UAAA;AAClB;AAKO,SAAS,uBAAuB,SAAA,EAA2B;AAChE,EAAA,MAAMA,UAAS,SAAA,EAAU;AACzB,EAAA,OAAO;AAAA,IACL,KAAA,EAAO,IAAI,IAAA,KAAoBA,OAAAA,CAAO,MAAM,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,CAAA,EAAK,GAAG,IAAI,CAAA;AAAA,IACrE,IAAA,EAAM,IAAI,IAAA,KAAoBA,OAAAA,CAAO,KAAK,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,CAAA,EAAK,GAAG,IAAI,CAAA;AAAA,IACnE,IAAA,EAAM,IAAI,IAAA,KAAoBA,OAAAA,CAAO,KAAK,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,CAAA,EAAK,GAAG,IAAI,CAAA;AAAA,IACnE,KAAA,EAAO,IAAI,IAAA,KAAoBA,OAAAA,CAAO,MAAM,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,CAAA,EAAK,GAAG,IAAI;AAAA,GACvE;AACF;AAGO,IAAM,MAAA,GAAiB;AAAA,EAC5B,OAAO,CAAA,GAAI,IAAA,KAAoB,WAAU,CAAE,KAAA,CAAM,GAAG,IAAI,CAAA;AAAA,EACxD,MAAM,CAAA,GAAI,IAAA,KAAoB,WAAU,CAAE,IAAA,CAAK,GAAG,IAAI,CAAA;AAAA,EACtD,MAAM,CAAA,GAAI,IAAA,KAAoB,WAAU,CAAE,IAAA,CAAK,GAAG,IAAI,CAAA;AAAA,EACtD,OAAO,CAAA,GAAI,IAAA,KAAoB,WAAU,CAAE,KAAA,CAAM,GAAG,IAAI;AAC1D","file":"index.cjs","sourcesContent":["/**\n * Aeon Logger Interface\n *\n * Provides a pluggable logging interface that can be configured\n * by consumers to integrate with their preferred logging solution.\n */\n\n/**\n * Logger interface that consumers can implement\n */\nexport interface Logger {\n debug: (...args: unknown[]) => void;\n info: (...args: unknown[]) => void;\n warn: (...args: unknown[]) => void;\n error: (...args: unknown[]) => void;\n}\n\n/**\n * Default console logger implementation\n */\nconst consoleLogger: Logger = {\n debug: (...args: unknown[]) => {\n // eslint-disable-next-line no-console\n console.debug('[AEON:DEBUG]', ...args);\n },\n info: (...args: unknown[]) => {\n // eslint-disable-next-line no-console\n console.info('[AEON:INFO]', ...args);\n },\n warn: (...args: unknown[]) => {\n // eslint-disable-next-line no-console\n console.warn('[AEON:WARN]', ...args);\n },\n error: (...args: unknown[]) => {\n // eslint-disable-next-line no-console\n console.error('[AEON:ERROR]', ...args);\n },\n};\n\n/**\n * No-op logger for production or when logging is disabled\n */\nconst noopLogger: Logger = {\n debug: () => {},\n info: () => {},\n warn: () => {},\n error: () => {},\n};\n\n/**\n * Current logger instance\n */\nlet currentLogger: Logger = consoleLogger;\n\n/**\n * Get the current logger instance\n */\nexport function getLogger(): Logger {\n return currentLogger;\n}\n\n/**\n * Set a custom logger implementation\n */\nexport function setLogger(logger: Logger): void {\n currentLogger = logger;\n}\n\n/**\n * Reset to the default console logger\n */\nexport function resetLogger(): void {\n currentLogger = consoleLogger;\n}\n\n/**\n * Disable all logging\n */\nexport function disableLogging(): void {\n currentLogger = noopLogger;\n}\n\n/**\n * Create a namespaced logger\n */\nexport function createNamespacedLogger(namespace: string): Logger {\n const logger = getLogger();\n return {\n debug: (...args: unknown[]) => logger.debug(`[${namespace}]`, ...args),\n info: (...args: unknown[]) => logger.info(`[${namespace}]`, ...args),\n warn: (...args: unknown[]) => logger.warn(`[${namespace}]`, ...args),\n error: (...args: unknown[]) => logger.error(`[${namespace}]`, ...args),\n };\n}\n\n// Export default logger for convenience\nexport const logger: Logger = {\n debug: (...args: unknown[]) => getLogger().debug(...args),\n info: (...args: unknown[]) => getLogger().info(...args),\n warn: (...args: unknown[]) => getLogger().warn(...args),\n error: (...args: unknown[]) => getLogger().error(...args),\n};\n"]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Aeon Logger Interface
|
|
3
|
+
*
|
|
4
|
+
* Provides a pluggable logging interface that can be configured
|
|
5
|
+
* by consumers to integrate with their preferred logging solution.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Logger interface that consumers can implement
|
|
9
|
+
*/
|
|
10
|
+
interface Logger {
|
|
11
|
+
debug: (...args: unknown[]) => void;
|
|
12
|
+
info: (...args: unknown[]) => void;
|
|
13
|
+
warn: (...args: unknown[]) => void;
|
|
14
|
+
error: (...args: unknown[]) => void;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Get the current logger instance
|
|
18
|
+
*/
|
|
19
|
+
declare function getLogger(): Logger;
|
|
20
|
+
/**
|
|
21
|
+
* Set a custom logger implementation
|
|
22
|
+
*/
|
|
23
|
+
declare function setLogger(logger: Logger): void;
|
|
24
|
+
/**
|
|
25
|
+
* Reset to the default console logger
|
|
26
|
+
*/
|
|
27
|
+
declare function resetLogger(): void;
|
|
28
|
+
/**
|
|
29
|
+
* Disable all logging
|
|
30
|
+
*/
|
|
31
|
+
declare function disableLogging(): void;
|
|
32
|
+
/**
|
|
33
|
+
* Create a namespaced logger
|
|
34
|
+
*/
|
|
35
|
+
declare function createNamespacedLogger(namespace: string): Logger;
|
|
36
|
+
declare const logger: Logger;
|
|
37
|
+
|
|
38
|
+
export { type Logger, createNamespacedLogger, disableLogging, getLogger, logger, resetLogger, setLogger };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Aeon Logger Interface
|
|
3
|
+
*
|
|
4
|
+
* Provides a pluggable logging interface that can be configured
|
|
5
|
+
* by consumers to integrate with their preferred logging solution.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Logger interface that consumers can implement
|
|
9
|
+
*/
|
|
10
|
+
interface Logger {
|
|
11
|
+
debug: (...args: unknown[]) => void;
|
|
12
|
+
info: (...args: unknown[]) => void;
|
|
13
|
+
warn: (...args: unknown[]) => void;
|
|
14
|
+
error: (...args: unknown[]) => void;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Get the current logger instance
|
|
18
|
+
*/
|
|
19
|
+
declare function getLogger(): Logger;
|
|
20
|
+
/**
|
|
21
|
+
* Set a custom logger implementation
|
|
22
|
+
*/
|
|
23
|
+
declare function setLogger(logger: Logger): void;
|
|
24
|
+
/**
|
|
25
|
+
* Reset to the default console logger
|
|
26
|
+
*/
|
|
27
|
+
declare function resetLogger(): void;
|
|
28
|
+
/**
|
|
29
|
+
* Disable all logging
|
|
30
|
+
*/
|
|
31
|
+
declare function disableLogging(): void;
|
|
32
|
+
/**
|
|
33
|
+
* Create a namespaced logger
|
|
34
|
+
*/
|
|
35
|
+
declare function createNamespacedLogger(namespace: string): Logger;
|
|
36
|
+
declare const logger: Logger;
|
|
37
|
+
|
|
38
|
+
export { type Logger, createNamespacedLogger, disableLogging, getLogger, logger, resetLogger, setLogger };
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// src/utils/logger.ts
|
|
2
|
+
var consoleLogger = {
|
|
3
|
+
debug: (...args) => {
|
|
4
|
+
console.debug("[AEON:DEBUG]", ...args);
|
|
5
|
+
},
|
|
6
|
+
info: (...args) => {
|
|
7
|
+
console.info("[AEON:INFO]", ...args);
|
|
8
|
+
},
|
|
9
|
+
warn: (...args) => {
|
|
10
|
+
console.warn("[AEON:WARN]", ...args);
|
|
11
|
+
},
|
|
12
|
+
error: (...args) => {
|
|
13
|
+
console.error("[AEON:ERROR]", ...args);
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
var noopLogger = {
|
|
17
|
+
debug: () => {
|
|
18
|
+
},
|
|
19
|
+
info: () => {
|
|
20
|
+
},
|
|
21
|
+
warn: () => {
|
|
22
|
+
},
|
|
23
|
+
error: () => {
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
var currentLogger = consoleLogger;
|
|
27
|
+
function getLogger() {
|
|
28
|
+
return currentLogger;
|
|
29
|
+
}
|
|
30
|
+
function setLogger(logger2) {
|
|
31
|
+
currentLogger = logger2;
|
|
32
|
+
}
|
|
33
|
+
function resetLogger() {
|
|
34
|
+
currentLogger = consoleLogger;
|
|
35
|
+
}
|
|
36
|
+
function disableLogging() {
|
|
37
|
+
currentLogger = noopLogger;
|
|
38
|
+
}
|
|
39
|
+
function createNamespacedLogger(namespace) {
|
|
40
|
+
const logger2 = getLogger();
|
|
41
|
+
return {
|
|
42
|
+
debug: (...args) => logger2.debug(`[${namespace}]`, ...args),
|
|
43
|
+
info: (...args) => logger2.info(`[${namespace}]`, ...args),
|
|
44
|
+
warn: (...args) => logger2.warn(`[${namespace}]`, ...args),
|
|
45
|
+
error: (...args) => logger2.error(`[${namespace}]`, ...args)
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
var logger = {
|
|
49
|
+
debug: (...args) => getLogger().debug(...args),
|
|
50
|
+
info: (...args) => getLogger().info(...args),
|
|
51
|
+
warn: (...args) => getLogger().warn(...args),
|
|
52
|
+
error: (...args) => getLogger().error(...args)
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export { createNamespacedLogger, disableLogging, getLogger, logger, resetLogger, setLogger };
|
|
56
|
+
//# sourceMappingURL=index.js.map
|
|
57
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/logger.ts"],"names":["logger"],"mappings":";AAoBA,IAAM,aAAA,GAAwB;AAAA,EAC5B,KAAA,EAAO,IAAI,IAAA,KAAoB;AAE7B,IAAA,OAAA,CAAQ,KAAA,CAAM,cAAA,EAAgB,GAAG,IAAI,CAAA;AAAA,EACvC,CAAA;AAAA,EACA,IAAA,EAAM,IAAI,IAAA,KAAoB;AAE5B,IAAA,OAAA,CAAQ,IAAA,CAAK,aAAA,EAAe,GAAG,IAAI,CAAA;AAAA,EACrC,CAAA;AAAA,EACA,IAAA,EAAM,IAAI,IAAA,KAAoB;AAE5B,IAAA,OAAA,CAAQ,IAAA,CAAK,aAAA,EAAe,GAAG,IAAI,CAAA;AAAA,EACrC,CAAA;AAAA,EACA,KAAA,EAAO,IAAI,IAAA,KAAoB;AAE7B,IAAA,OAAA,CAAQ,KAAA,CAAM,cAAA,EAAgB,GAAG,IAAI,CAAA;AAAA,EACvC;AACF,CAAA;AAKA,IAAM,UAAA,GAAqB;AAAA,EACzB,OAAO,MAAM;AAAA,EAAC,CAAA;AAAA,EACd,MAAM,MAAM;AAAA,EAAC,CAAA;AAAA,EACb,MAAM,MAAM;AAAA,EAAC,CAAA;AAAA,EACb,OAAO,MAAM;AAAA,EAAC;AAChB,CAAA;AAKA,IAAI,aAAA,GAAwB,aAAA;AAKrB,SAAS,SAAA,GAAoB;AAClC,EAAA,OAAO,aAAA;AACT;AAKO,SAAS,UAAUA,OAAAA,EAAsB;AAC9C,EAAA,aAAA,GAAgBA,OAAAA;AAClB;AAKO,SAAS,WAAA,GAAoB;AAClC,EAAA,aAAA,GAAgB,aAAA;AAClB;AAKO,SAAS,cAAA,GAAuB;AACrC,EAAA,aAAA,GAAgB,UAAA;AAClB;AAKO,SAAS,uBAAuB,SAAA,EAA2B;AAChE,EAAA,MAAMA,UAAS,SAAA,EAAU;AACzB,EAAA,OAAO;AAAA,IACL,KAAA,EAAO,IAAI,IAAA,KAAoBA,OAAAA,CAAO,MAAM,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,CAAA,EAAK,GAAG,IAAI,CAAA;AAAA,IACrE,IAAA,EAAM,IAAI,IAAA,KAAoBA,OAAAA,CAAO,KAAK,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,CAAA,EAAK,GAAG,IAAI,CAAA;AAAA,IACnE,IAAA,EAAM,IAAI,IAAA,KAAoBA,OAAAA,CAAO,KAAK,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,CAAA,EAAK,GAAG,IAAI,CAAA;AAAA,IACnE,KAAA,EAAO,IAAI,IAAA,KAAoBA,OAAAA,CAAO,MAAM,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,CAAA,EAAK,GAAG,IAAI;AAAA,GACvE;AACF;AAGO,IAAM,MAAA,GAAiB;AAAA,EAC5B,OAAO,CAAA,GAAI,IAAA,KAAoB,WAAU,CAAE,KAAA,CAAM,GAAG,IAAI,CAAA;AAAA,EACxD,MAAM,CAAA,GAAI,IAAA,KAAoB,WAAU,CAAE,IAAA,CAAK,GAAG,IAAI,CAAA;AAAA,EACtD,MAAM,CAAA,GAAI,IAAA,KAAoB,WAAU,CAAE,IAAA,CAAK,GAAG,IAAI,CAAA;AAAA,EACtD,OAAO,CAAA,GAAI,IAAA,KAAoB,WAAU,CAAE,KAAA,CAAM,GAAG,IAAI;AAC1D","file":"index.js","sourcesContent":["/**\n * Aeon Logger Interface\n *\n * Provides a pluggable logging interface that can be configured\n * by consumers to integrate with their preferred logging solution.\n */\n\n/**\n * Logger interface that consumers can implement\n */\nexport interface Logger {\n debug: (...args: unknown[]) => void;\n info: (...args: unknown[]) => void;\n warn: (...args: unknown[]) => void;\n error: (...args: unknown[]) => void;\n}\n\n/**\n * Default console logger implementation\n */\nconst consoleLogger: Logger = {\n debug: (...args: unknown[]) => {\n // eslint-disable-next-line no-console\n console.debug('[AEON:DEBUG]', ...args);\n },\n info: (...args: unknown[]) => {\n // eslint-disable-next-line no-console\n console.info('[AEON:INFO]', ...args);\n },\n warn: (...args: unknown[]) => {\n // eslint-disable-next-line no-console\n console.warn('[AEON:WARN]', ...args);\n },\n error: (...args: unknown[]) => {\n // eslint-disable-next-line no-console\n console.error('[AEON:ERROR]', ...args);\n },\n};\n\n/**\n * No-op logger for production or when logging is disabled\n */\nconst noopLogger: Logger = {\n debug: () => {},\n info: () => {},\n warn: () => {},\n error: () => {},\n};\n\n/**\n * Current logger instance\n */\nlet currentLogger: Logger = consoleLogger;\n\n/**\n * Get the current logger instance\n */\nexport function getLogger(): Logger {\n return currentLogger;\n}\n\n/**\n * Set a custom logger implementation\n */\nexport function setLogger(logger: Logger): void {\n currentLogger = logger;\n}\n\n/**\n * Reset to the default console logger\n */\nexport function resetLogger(): void {\n currentLogger = consoleLogger;\n}\n\n/**\n * Disable all logging\n */\nexport function disableLogging(): void {\n currentLogger = noopLogger;\n}\n\n/**\n * Create a namespaced logger\n */\nexport function createNamespacedLogger(namespace: string): Logger {\n const logger = getLogger();\n return {\n debug: (...args: unknown[]) => logger.debug(`[${namespace}]`, ...args),\n info: (...args: unknown[]) => logger.info(`[${namespace}]`, ...args),\n warn: (...args: unknown[]) => logger.warn(`[${namespace}]`, ...args),\n error: (...args: unknown[]) => logger.error(`[${namespace}]`, ...args),\n };\n}\n\n// Export default logger for convenience\nexport const logger: Logger = {\n debug: (...args: unknown[]) => getLogger().debug(...args),\n info: (...args: unknown[]) => getLogger().info(...args),\n warn: (...args: unknown[]) => getLogger().warn(...args),\n error: (...args: unknown[]) => getLogger().error(...args),\n};\n"]}
|