@ethora/sdk-backend 25.12.15

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.
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Logger utility for the Ethora SDK
3
+ */
4
+ export declare enum LogLevel {
5
+ DEBUG = "debug",
6
+ INFO = "info",
7
+ WARN = "warn",
8
+ ERROR = "error"
9
+ }
10
+ /**
11
+ * Logger interface
12
+ */
13
+ export interface Logger {
14
+ debug(message: string, ...args: unknown[]): void;
15
+ info(message: string, ...args: unknown[]): void;
16
+ warn(message: string, ...args: unknown[]): void;
17
+ error(message: string, error?: Error | unknown, ...args: unknown[]): void;
18
+ }
19
+ /**
20
+ * Gets a logger instance for the given context
21
+ *
22
+ * @param context - The context/name for the logger (typically the module name)
23
+ * @returns Logger instance
24
+ */
25
+ export declare function getLogger(context: string): Logger;
26
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACjD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;CAC3E;AA8CD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAKjD"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ /**
3
+ * Logger utility for the Ethora SDK
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LogLevel = void 0;
7
+ exports.getLogger = getLogger;
8
+ var LogLevel;
9
+ (function (LogLevel) {
10
+ LogLevel["DEBUG"] = "debug";
11
+ LogLevel["INFO"] = "info";
12
+ LogLevel["WARN"] = "warn";
13
+ LogLevel["ERROR"] = "error";
14
+ })(LogLevel || (exports.LogLevel = LogLevel = {}));
15
+ /**
16
+ * Simple console logger implementation
17
+ */
18
+ class ConsoleLogger {
19
+ constructor(context) {
20
+ this.context = context;
21
+ }
22
+ formatMessage(level, message) {
23
+ const timestamp = new Date().toISOString();
24
+ return `[${timestamp}] [${level.toUpperCase()}] [${this.context}] ${message}`;
25
+ }
26
+ debug(message, ...args) {
27
+ if (process.env.NODE_ENV !== "production") {
28
+ console.debug(this.formatMessage(LogLevel.DEBUG, message), ...args);
29
+ }
30
+ }
31
+ info(message, ...args) {
32
+ console.info(this.formatMessage(LogLevel.INFO, message), ...args);
33
+ }
34
+ warn(message, ...args) {
35
+ console.warn(this.formatMessage(LogLevel.WARN, message), ...args);
36
+ }
37
+ error(message, error, ...args) {
38
+ const errorInfo = error instanceof Error ? error.stack : error;
39
+ console.error(this.formatMessage(LogLevel.ERROR, message), errorInfo || "", ...args);
40
+ }
41
+ }
42
+ /**
43
+ * Logger cache to reuse logger instances
44
+ */
45
+ const loggerCache = new Map();
46
+ /**
47
+ * Gets a logger instance for the given context
48
+ *
49
+ * @param context - The context/name for the logger (typically the module name)
50
+ * @returns Logger instance
51
+ */
52
+ function getLogger(context) {
53
+ if (!loggerCache.has(context)) {
54
+ loggerCache.set(context, new ConsoleLogger(context));
55
+ }
56
+ return loggerCache.get(context);
57
+ }
58
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAqEH,8BAKC;AAxED,IAAY,QAKX;AALD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;AACjB,CAAC,EALW,QAAQ,wBAAR,QAAQ,QAKnB;AAYD;;GAEG;AACH,MAAM,aAAa;IAGjB,YAAY,OAAe;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEO,aAAa,CAAC,KAAe,EAAE,OAAe;QACpD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,OAAO,IAAI,SAAS,MAAM,KAAK,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;IAChF,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,GAAG,IAAe;QACvC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC1C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,GAAG,IAAe;QACtC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,GAAG,IAAe;QACtC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,KAAuB,EAAE,GAAG,IAAe;QAChE,MAAM,SAAS,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/D,OAAO,CAAC,KAAK,CACX,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,EAC3C,SAAS,IAAI,EAAE,EACf,GAAG,IAAI,CACR,CAAC;IACJ,CAAC;CACF;AAED;;GAEG;AACH,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;AAE9C;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,OAAe;IACvC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,WAAW,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC;AACnC,CAAC"}
package/package.json ADDED
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "@ethora/sdk-backend",
3
+ "version": "25.12.15",
4
+ "description": "TypeScript SDK for integrating with Ethora chat service backend API",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "files": [
8
+ "dist",
9
+ "README.md"
10
+ ],
11
+ "scripts": {
12
+ "build": "tsc",
13
+ "build:watch": "tsc --watch",
14
+ "clean": "rm -rf dist",
15
+ "prepublishOnly": "npm run build"
16
+ },
17
+ "keywords": [
18
+ "ethora",
19
+ "chat",
20
+ "sdk",
21
+ "typescript",
22
+ "backend"
23
+ ],
24
+ "author": "Ethora",
25
+ "license": "MIT",
26
+ "dependencies": {
27
+ "axios": "^1.6.0",
28
+ "jsonwebtoken": "^9.0.2"
29
+ },
30
+ "devDependencies": {
31
+ "@types/jsonwebtoken": "^9.0.6",
32
+ "@types/node": "^20.10.0",
33
+ "typescript": "^5.3.3"
34
+ },
35
+ "peerDependencies": {
36
+ "axios": "^1.6.0"
37
+ }
38
+ }