@aifabrix/miso-client 4.3.1 → 4.4.1
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/CHANGELOG.md +1253 -1215
- package/README.md +22 -23
- package/dist/api/applications.api.d.ts +42 -0
- package/dist/api/applications.api.d.ts.map +1 -0
- package/dist/api/applications.api.js +91 -0
- package/dist/api/applications.api.js.map +1 -0
- package/dist/api/index.d.ts +5 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +2 -0
- package/dist/api/index.js.map +1 -1
- package/dist/api/types/applications.types.d.ts +58 -0
- package/dist/api/types/applications.types.d.ts.map +1 -0
- package/dist/api/types/applications.types.js +7 -0
- package/dist/api/types/applications.types.js.map +1 -0
- package/dist/api/types/encryption.types.d.ts +2 -2
- package/dist/api/types/encryption.types.d.ts.map +1 -1
- package/dist/express/client-token-endpoint.d.ts +2 -2
- package/dist/express/client-token-endpoint.d.ts.map +1 -1
- package/dist/express/client-token-endpoint.js +21 -3
- package/dist/express/client-token-endpoint.js.map +1 -1
- package/dist/express/error-handler.d.ts +8 -1
- package/dist/express/error-handler.d.ts.map +1 -1
- package/dist/express/error-handler.js +8 -1
- package/dist/express/error-handler.js.map +1 -1
- package/dist/express/error-response.d.ts +16 -4
- package/dist/express/error-response.d.ts.map +1 -1
- package/dist/express/error-response.js +16 -4
- package/dist/express/error-response.js.map +1 -1
- package/dist/express/error-types.d.ts +13 -0
- package/dist/express/error-types.d.ts.map +1 -1
- package/dist/express/error-types.js +13 -0
- package/dist/express/error-types.js.map +1 -1
- package/dist/express/index.d.ts +8 -4
- package/dist/express/index.d.ts.map +1 -1
- package/dist/express/index.js.map +1 -1
- package/dist/express/logger-context.middleware.d.ts +8 -4
- package/dist/express/logger-context.middleware.d.ts.map +1 -1
- package/dist/express/logger-context.middleware.js +9 -4
- package/dist/express/logger-context.middleware.js.map +1 -1
- package/dist/express/response-middleware.d.ts +4 -0
- package/dist/express/response-middleware.d.ts.map +1 -1
- package/dist/express/response-middleware.js +4 -0
- package/dist/express/response-middleware.js.map +1 -1
- package/dist/index.d.ts +207 -34
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +214 -36
- package/dist/index.js.map +1 -1
- package/dist/services/application-context.service.d.ts +0 -1
- package/dist/services/application-context.service.d.ts.map +1 -1
- package/dist/services/application-context.service.js +12 -7
- package/dist/services/application-context.service.js.map +1 -1
- package/dist/services/auth-cache-helpers.d.ts +22 -0
- package/dist/services/auth-cache-helpers.d.ts.map +1 -0
- package/dist/services/auth-cache-helpers.js +85 -0
- package/dist/services/auth-cache-helpers.js.map +1 -0
- package/dist/services/auth-environment-token.d.ts +20 -0
- package/dist/services/auth-environment-token.d.ts.map +1 -0
- package/dist/services/auth-environment-token.js +94 -0
- package/dist/services/auth-environment-token.js.map +1 -0
- package/dist/services/auth-error-handler.d.ts.map +1 -1
- package/dist/services/auth-error-handler.js +1 -1
- package/dist/services/auth-error-handler.js.map +1 -1
- package/dist/services/auth.service.d.ts +16 -28
- package/dist/services/auth.service.d.ts.map +1 -1
- package/dist/services/auth.service.js +112 -208
- package/dist/services/auth.service.js.map +1 -1
- package/dist/services/browser-permission.service.d.ts +3 -1
- package/dist/services/browser-permission.service.d.ts.map +1 -1
- package/dist/services/browser-permission.service.js +44 -9
- package/dist/services/browser-permission.service.js.map +1 -1
- package/dist/services/browser-role.service.d.ts +3 -1
- package/dist/services/browser-role.service.d.ts.map +1 -1
- package/dist/services/browser-role.service.js +44 -9
- package/dist/services/browser-role.service.js.map +1 -1
- package/dist/services/cache.service.d.ts.map +1 -1
- package/dist/services/cache.service.js +8 -2
- package/dist/services/cache.service.js.map +1 -1
- package/dist/services/encryption.service.d.ts +1 -1
- package/dist/services/encryption.service.js +2 -2
- package/dist/services/encryption.service.js.map +1 -1
- package/dist/services/logger/index.d.ts +6 -4
- package/dist/services/logger/index.d.ts.map +1 -1
- package/dist/services/logger/index.js +1 -4
- package/dist/services/logger/index.js.map +1 -1
- package/dist/services/logger/logger-chain.d.ts +18 -8
- package/dist/services/logger/logger-chain.d.ts.map +1 -1
- package/dist/services/logger/logger-chain.js +35 -41
- package/dist/services/logger/logger-chain.js.map +1 -1
- package/dist/services/logger/logger-context-storage.d.ts +2 -0
- package/dist/services/logger/logger-context-storage.d.ts.map +1 -1
- package/dist/services/logger/logger-context-storage.js.map +1 -1
- package/dist/services/logger/logger-context.d.ts +0 -22
- package/dist/services/logger/logger-context.d.ts.map +1 -1
- package/dist/services/logger/logger-context.js +2 -50
- package/dist/services/logger/logger-context.js.map +1 -1
- package/dist/services/logger/logger.service.d.ts +37 -14
- package/dist/services/logger/logger.service.d.ts.map +1 -1
- package/dist/services/logger/logger.service.js +157 -133
- package/dist/services/logger/logger.service.js.map +1 -1
- package/dist/services/logger/unified-logger.service.d.ts.map +1 -1
- package/dist/services/logger/unified-logger.service.js +2 -34
- package/dist/services/logger/unified-logger.service.js.map +1 -1
- package/dist/services/permission.service.d.ts +12 -5
- package/dist/services/permission.service.d.ts.map +1 -1
- package/dist/services/permission.service.js +50 -10
- package/dist/services/permission.service.js.map +1 -1
- package/dist/services/redis.service.d.ts +29 -0
- package/dist/services/redis.service.d.ts.map +1 -1
- package/dist/services/redis.service.js +48 -5
- package/dist/services/redis.service.js.map +1 -1
- package/dist/services/role.service.d.ts +12 -5
- package/dist/services/role.service.d.ts.map +1 -1
- package/dist/services/role.service.js +38 -9
- package/dist/services/role.service.js.map +1 -1
- package/dist/services/token-validation.service.d.ts +30 -0
- package/dist/services/token-validation.service.d.ts.map +1 -1
- package/dist/services/token-validation.service.js +30 -0
- package/dist/services/token-validation.service.js.map +1 -1
- package/dist/types/config.types.d.ts +38 -1
- package/dist/types/config.types.d.ts.map +1 -1
- package/dist/types/config.types.js.map +1 -1
- package/dist/utils/audit-log-queue.d.ts.map +1 -1
- package/dist/utils/audit-log-queue.js +3 -0
- package/dist/utils/audit-log-queue.js.map +1 -1
- package/dist/utils/client-token-manager.d.ts.map +1 -1
- package/dist/utils/client-token-manager.js +9 -1
- package/dist/utils/client-token-manager.js.map +1 -1
- package/dist/utils/config-loader.d.ts +3 -1
- package/dist/utils/config-loader.d.ts.map +1 -1
- package/dist/utils/config-loader.js +5 -3
- package/dist/utils/config-loader.js.map +1 -1
- package/dist/utils/data-client-audit.d.ts.map +1 -1
- package/dist/utils/data-client-audit.js +15 -2
- package/dist/utils/data-client-audit.js.map +1 -1
- package/dist/utils/data-client-auth.d.ts.map +1 -1
- package/dist/utils/data-client-auth.js +17 -9
- package/dist/utils/data-client-auth.js.map +1 -1
- package/dist/utils/data-client-auto-init.d.ts.map +1 -1
- package/dist/utils/data-client-auto-init.js +110 -119
- package/dist/utils/data-client-auto-init.js.map +1 -1
- package/dist/utils/data-client-request.d.ts +0 -3
- package/dist/utils/data-client-request.d.ts.map +1 -1
- package/dist/utils/data-client-request.js +148 -97
- package/dist/utils/data-client-request.js.map +1 -1
- package/dist/utils/data-client-response.d.ts.map +1 -1
- package/dist/utils/data-client-response.js +93 -63
- package/dist/utils/data-client-response.js.map +1 -1
- package/dist/utils/data-client-utils.d.ts +2 -1
- package/dist/utils/data-client-utils.d.ts.map +1 -1
- package/dist/utils/data-client-utils.js +2 -1
- package/dist/utils/data-client-utils.js.map +1 -1
- package/dist/utils/data-client.d.ts.map +1 -1
- package/dist/utils/data-client.js +4 -1
- package/dist/utils/data-client.js.map +1 -1
- package/dist/utils/data-masker.d.ts +3 -0
- package/dist/utils/data-masker.d.ts.map +1 -1
- package/dist/utils/data-masker.js +3 -0
- package/dist/utils/data-masker.js.map +1 -1
- package/dist/utils/filter-schema.utils.d.ts.map +1 -1
- package/dist/utils/filter-schema.utils.js +64 -46
- package/dist/utils/filter-schema.utils.js.map +1 -1
- package/dist/utils/filter.utils.d.ts.map +1 -1
- package/dist/utils/filter.utils.js +59 -75
- package/dist/utils/filter.utils.js.map +1 -1
- package/dist/utils/http-client-audit.d.ts.map +1 -1
- package/dist/utils/http-client-audit.js +31 -19
- package/dist/utils/http-client-audit.js.map +1 -1
- package/dist/utils/http-client-metadata.d.ts +2 -1
- package/dist/utils/http-client-metadata.d.ts.map +1 -1
- package/dist/utils/http-client-metadata.js +2 -1
- package/dist/utils/http-client-metadata.js.map +1 -1
- package/dist/utils/internal-http-client.d.ts.map +1 -1
- package/dist/utils/internal-http-client.js +13 -7
- package/dist/utils/internal-http-client.js.map +1 -1
- package/package.json +86 -84
|
@@ -9,17 +9,19 @@ const browser_jwt_decoder_1 = require("../utils/browser-jwt-decoder");
|
|
|
9
9
|
const application_context_service_1 = require("./application-context.service");
|
|
10
10
|
class BrowserPermissionService {
|
|
11
11
|
constructor(httpClient, apiClient, cache) {
|
|
12
|
-
this.config = httpClient.config;
|
|
13
12
|
this.cache = cache;
|
|
14
13
|
this.httpClient = httpClient;
|
|
15
14
|
this.apiClient = apiClient;
|
|
16
|
-
this.permissionTTL = this.config.cache?.permissionTTL || 900; // 15 minutes default
|
|
15
|
+
this.permissionTTL = this.httpClient.config.cache?.permissionTTL || 900; // 15 minutes default
|
|
17
16
|
this.applicationContextService = new application_context_service_1.ApplicationContextService(httpClient);
|
|
18
17
|
}
|
|
19
18
|
/**
|
|
20
19
|
* Extract userId from JWT token without making API call
|
|
21
20
|
* Uses browser-compatible JWT decoder
|
|
22
21
|
*/
|
|
22
|
+
/**
|
|
23
|
+
* Extract userId from JWT token without verification.
|
|
24
|
+
*/
|
|
23
25
|
extractUserIdFromToken(token) {
|
|
24
26
|
try {
|
|
25
27
|
const decoded = (0, browser_jwt_decoder_1.decodeJWT)(token);
|
|
@@ -57,7 +59,7 @@ class BrowserPermissionService {
|
|
|
57
59
|
// Cache miss or no userId in token - fetch from controller
|
|
58
60
|
// If we don't have userId, get it from validate endpoint
|
|
59
61
|
if (!userId) {
|
|
60
|
-
const authStrategyToUse = authStrategy || this.config.authStrategy;
|
|
62
|
+
const authStrategyToUse = authStrategy || this.httpClient.config.authStrategy;
|
|
61
63
|
const authStrategyWithToken = authStrategyToUse
|
|
62
64
|
? { ...authStrategyToUse, bearerToken: token }
|
|
63
65
|
: { methods: ['bearer'], bearerToken: token };
|
|
@@ -68,7 +70,7 @@ class BrowserPermissionService {
|
|
|
68
70
|
}
|
|
69
71
|
}
|
|
70
72
|
// Cache miss - fetch from controller using ApiClient
|
|
71
|
-
const authStrategyToUse = authStrategy || this.config.authStrategy;
|
|
73
|
+
const authStrategyToUse = authStrategy || this.httpClient.config.authStrategy;
|
|
72
74
|
const authStrategyWithToken = authStrategyToUse
|
|
73
75
|
? { ...authStrategyToUse, bearerToken: token }
|
|
74
76
|
: { methods: ['bearer'], bearerToken: token };
|
|
@@ -84,7 +86,18 @@ class BrowserPermissionService {
|
|
|
84
86
|
}
|
|
85
87
|
catch (error) {
|
|
86
88
|
// eslint-disable-next-line no-console
|
|
87
|
-
|
|
89
|
+
const statusCode = error?.statusCode ||
|
|
90
|
+
error?.response?.status;
|
|
91
|
+
console.error("Failed to get permissions:", {
|
|
92
|
+
method: "GET",
|
|
93
|
+
path: "/api/auth/permissions",
|
|
94
|
+
statusCode,
|
|
95
|
+
ipAddress: "unknown",
|
|
96
|
+
correlationId: error?.correlationId,
|
|
97
|
+
userId: this.extractUserIdFromToken(token) || undefined,
|
|
98
|
+
errorMessage: error instanceof Error ? error.message : String(error),
|
|
99
|
+
stackTrace: error instanceof Error ? error.stack : undefined,
|
|
100
|
+
});
|
|
88
101
|
return [];
|
|
89
102
|
}
|
|
90
103
|
}
|
|
@@ -126,7 +139,7 @@ class BrowserPermissionService {
|
|
|
126
139
|
async refreshPermissions(token, authStrategy) {
|
|
127
140
|
try {
|
|
128
141
|
// Get user info to extract userId
|
|
129
|
-
const authStrategyToUse = authStrategy || this.config.authStrategy;
|
|
142
|
+
const authStrategyToUse = authStrategy || this.httpClient.config.authStrategy;
|
|
130
143
|
const authStrategyWithToken = authStrategyToUse
|
|
131
144
|
? { ...authStrategyToUse, bearerToken: token }
|
|
132
145
|
: { methods: ['bearer'], bearerToken: token };
|
|
@@ -148,7 +161,18 @@ class BrowserPermissionService {
|
|
|
148
161
|
}
|
|
149
162
|
catch (error) {
|
|
150
163
|
// eslint-disable-next-line no-console
|
|
151
|
-
|
|
164
|
+
const statusCode = error?.statusCode ||
|
|
165
|
+
error?.response?.status;
|
|
166
|
+
console.error("Failed to refresh permissions:", {
|
|
167
|
+
method: "POST",
|
|
168
|
+
path: "/api/auth/permissions/refresh",
|
|
169
|
+
statusCode,
|
|
170
|
+
ipAddress: "unknown",
|
|
171
|
+
correlationId: error?.correlationId,
|
|
172
|
+
userId: this.extractUserIdFromToken(token) || undefined,
|
|
173
|
+
errorMessage: error instanceof Error ? error.message : String(error),
|
|
174
|
+
stackTrace: error instanceof Error ? error.stack : undefined,
|
|
175
|
+
});
|
|
152
176
|
return [];
|
|
153
177
|
}
|
|
154
178
|
}
|
|
@@ -160,7 +184,7 @@ class BrowserPermissionService {
|
|
|
160
184
|
async clearPermissionsCache(token, authStrategy) {
|
|
161
185
|
try {
|
|
162
186
|
// Get user info to extract userId
|
|
163
|
-
const authStrategyToUse = authStrategy || this.config.authStrategy;
|
|
187
|
+
const authStrategyToUse = authStrategy || this.httpClient.config.authStrategy;
|
|
164
188
|
const authStrategyWithToken = authStrategyToUse
|
|
165
189
|
? { ...authStrategyToUse, bearerToken: token }
|
|
166
190
|
: { methods: ['bearer'], bearerToken: token };
|
|
@@ -175,7 +199,18 @@ class BrowserPermissionService {
|
|
|
175
199
|
}
|
|
176
200
|
catch (error) {
|
|
177
201
|
// eslint-disable-next-line no-console
|
|
178
|
-
|
|
202
|
+
const statusCode = error?.statusCode ||
|
|
203
|
+
error?.response?.status;
|
|
204
|
+
console.error("Failed to clear permissions cache:", {
|
|
205
|
+
method: "DELETE",
|
|
206
|
+
path: "/cache/permissions",
|
|
207
|
+
statusCode,
|
|
208
|
+
ipAddress: "unknown",
|
|
209
|
+
correlationId: error?.correlationId,
|
|
210
|
+
userId: this.extractUserIdFromToken(token) || undefined,
|
|
211
|
+
errorMessage: error instanceof Error ? error.message : String(error),
|
|
212
|
+
stackTrace: error instanceof Error ? error.stack : undefined,
|
|
213
|
+
});
|
|
179
214
|
}
|
|
180
215
|
}
|
|
181
216
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-permission.service.js","sourceRoot":"","sources":["../../src/services/browser-permission.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"browser-permission.service.js","sourceRoot":"","sources":["../../src/services/browser-permission.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,6 @@ export declare class BrowserRoleService {
|
|
|
10
10
|
private httpClient;
|
|
11
11
|
private apiClient;
|
|
12
12
|
private cache;
|
|
13
|
-
private config;
|
|
14
13
|
private roleTTL;
|
|
15
14
|
private applicationContextService;
|
|
16
15
|
constructor(httpClient: HttpClient, apiClient: ApiClient, cache: CacheService);
|
|
@@ -18,6 +17,9 @@ export declare class BrowserRoleService {
|
|
|
18
17
|
* Extract userId from JWT token without making API call
|
|
19
18
|
* Uses browser-compatible JWT decoder
|
|
20
19
|
*/
|
|
20
|
+
/**
|
|
21
|
+
* Extract userId from JWT token without verification.
|
|
22
|
+
*/
|
|
21
23
|
private extractUserIdFromToken;
|
|
22
24
|
/**
|
|
23
25
|
* Get user roles with caching
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-role.service.d.ts","sourceRoot":"","sources":["../../src/services/browser-role.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,
|
|
1
|
+
{"version":3,"file":"browser-role.service.d.ts","sourceRoot":"","sources":["../../src/services/browser-role.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,YAAY,EAEb,MAAM,uBAAuB,CAAC;AAS/B,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,yBAAyB,CAA4B;gBAEjD,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY;IAQ7E;;;OAGG;IACH;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAoB9B;;;;;OAKG;IACG,QAAQ,CACZ,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,MAAM,EAAE,CAAC;IA6EpB;;;;;OAKG;IACG,OAAO,CACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,OAAO,CAAC;IAKnB;;;;;OAKG;IACG,UAAU,CACd,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EAAE,EACf,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,OAAO,CAAC;IAKnB;;;;;OAKG;IACG,WAAW,CACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EAAE,EACf,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,OAAO,CAAC;IAKnB;;;;OAIG;IACG,YAAY,CAChB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,MAAM,EAAE,CAAC;IA2DpB;;;;OAIG;IACG,eAAe,CACnB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,IAAI,CAAC;CAuCjB"}
|
|
@@ -9,17 +9,19 @@ const browser_jwt_decoder_1 = require("../utils/browser-jwt-decoder");
|
|
|
9
9
|
const application_context_service_1 = require("./application-context.service");
|
|
10
10
|
class BrowserRoleService {
|
|
11
11
|
constructor(httpClient, apiClient, cache) {
|
|
12
|
-
this.config = httpClient.config;
|
|
13
12
|
this.cache = cache;
|
|
14
13
|
this.httpClient = httpClient;
|
|
15
14
|
this.apiClient = apiClient;
|
|
16
|
-
this.roleTTL = this.config.cache?.roleTTL || 900; // 15 minutes default
|
|
15
|
+
this.roleTTL = this.httpClient.config.cache?.roleTTL || 900; // 15 minutes default
|
|
17
16
|
this.applicationContextService = new application_context_service_1.ApplicationContextService(httpClient);
|
|
18
17
|
}
|
|
19
18
|
/**
|
|
20
19
|
* Extract userId from JWT token without making API call
|
|
21
20
|
* Uses browser-compatible JWT decoder
|
|
22
21
|
*/
|
|
22
|
+
/**
|
|
23
|
+
* Extract userId from JWT token without verification.
|
|
24
|
+
*/
|
|
23
25
|
extractUserIdFromToken(token) {
|
|
24
26
|
try {
|
|
25
27
|
const decoded = (0, browser_jwt_decoder_1.decodeJWT)(token);
|
|
@@ -57,7 +59,7 @@ class BrowserRoleService {
|
|
|
57
59
|
// Cache miss or no userId in token - fetch from controller
|
|
58
60
|
// If we don't have userId, get it from validate endpoint
|
|
59
61
|
if (!userId) {
|
|
60
|
-
const authStrategyToUse = authStrategy || this.config.authStrategy;
|
|
62
|
+
const authStrategyToUse = authStrategy || this.httpClient.config.authStrategy;
|
|
61
63
|
const authStrategyWithToken = authStrategyToUse
|
|
62
64
|
? { ...authStrategyToUse, bearerToken: token }
|
|
63
65
|
: { methods: ['bearer'], bearerToken: token };
|
|
@@ -68,7 +70,7 @@ class BrowserRoleService {
|
|
|
68
70
|
}
|
|
69
71
|
}
|
|
70
72
|
// Cache miss - fetch from controller using ApiClient
|
|
71
|
-
const authStrategyToUse = authStrategy || this.config.authStrategy;
|
|
73
|
+
const authStrategyToUse = authStrategy || this.httpClient.config.authStrategy;
|
|
72
74
|
const authStrategyWithToken = authStrategyToUse
|
|
73
75
|
? { ...authStrategyToUse, bearerToken: token }
|
|
74
76
|
: { methods: ['bearer'], bearerToken: token };
|
|
@@ -84,7 +86,18 @@ class BrowserRoleService {
|
|
|
84
86
|
}
|
|
85
87
|
catch (error) {
|
|
86
88
|
// eslint-disable-next-line no-console
|
|
87
|
-
|
|
89
|
+
const statusCode = error?.statusCode ||
|
|
90
|
+
error?.response?.status;
|
|
91
|
+
console.error("Failed to get roles:", {
|
|
92
|
+
method: "GET",
|
|
93
|
+
path: "/api/auth/roles",
|
|
94
|
+
statusCode,
|
|
95
|
+
ipAddress: "unknown",
|
|
96
|
+
correlationId: error?.correlationId,
|
|
97
|
+
userId: this.extractUserIdFromToken(token) || undefined,
|
|
98
|
+
errorMessage: error instanceof Error ? error.message : String(error),
|
|
99
|
+
stackTrace: error instanceof Error ? error.stack : undefined,
|
|
100
|
+
});
|
|
88
101
|
return [];
|
|
89
102
|
}
|
|
90
103
|
}
|
|
@@ -126,7 +139,7 @@ class BrowserRoleService {
|
|
|
126
139
|
async refreshRoles(token, authStrategy) {
|
|
127
140
|
try {
|
|
128
141
|
// Get user info to extract userId
|
|
129
|
-
const authStrategyToUse = authStrategy || this.config.authStrategy;
|
|
142
|
+
const authStrategyToUse = authStrategy || this.httpClient.config.authStrategy;
|
|
130
143
|
const authStrategyWithToken = authStrategyToUse
|
|
131
144
|
? { ...authStrategyToUse, bearerToken: token }
|
|
132
145
|
: { methods: ['bearer'], bearerToken: token };
|
|
@@ -148,7 +161,18 @@ class BrowserRoleService {
|
|
|
148
161
|
}
|
|
149
162
|
catch (error) {
|
|
150
163
|
// eslint-disable-next-line no-console
|
|
151
|
-
|
|
164
|
+
const statusCode = error?.statusCode ||
|
|
165
|
+
error?.response?.status;
|
|
166
|
+
console.error("Failed to refresh roles:", {
|
|
167
|
+
method: "POST",
|
|
168
|
+
path: "/api/auth/roles/refresh",
|
|
169
|
+
statusCode,
|
|
170
|
+
ipAddress: "unknown",
|
|
171
|
+
correlationId: error?.correlationId,
|
|
172
|
+
userId: this.extractUserIdFromToken(token) || undefined,
|
|
173
|
+
errorMessage: error instanceof Error ? error.message : String(error),
|
|
174
|
+
stackTrace: error instanceof Error ? error.stack : undefined,
|
|
175
|
+
});
|
|
152
176
|
return [];
|
|
153
177
|
}
|
|
154
178
|
}
|
|
@@ -160,7 +184,7 @@ class BrowserRoleService {
|
|
|
160
184
|
async clearRolesCache(token, authStrategy) {
|
|
161
185
|
try {
|
|
162
186
|
// Get user info to extract userId
|
|
163
|
-
const authStrategyToUse = authStrategy || this.config.authStrategy;
|
|
187
|
+
const authStrategyToUse = authStrategy || this.httpClient.config.authStrategy;
|
|
164
188
|
const authStrategyWithToken = authStrategyToUse
|
|
165
189
|
? { ...authStrategyToUse, bearerToken: token }
|
|
166
190
|
: { methods: ['bearer'], bearerToken: token };
|
|
@@ -175,7 +199,18 @@ class BrowserRoleService {
|
|
|
175
199
|
}
|
|
176
200
|
catch (error) {
|
|
177
201
|
// eslint-disable-next-line no-console
|
|
178
|
-
|
|
202
|
+
const statusCode = error?.statusCode ||
|
|
203
|
+
error?.response?.status;
|
|
204
|
+
console.error("Failed to clear roles cache:", {
|
|
205
|
+
method: "DELETE",
|
|
206
|
+
path: "/cache/roles",
|
|
207
|
+
statusCode,
|
|
208
|
+
ipAddress: "unknown",
|
|
209
|
+
correlationId: error?.correlationId,
|
|
210
|
+
userId: this.extractUserIdFromToken(token) || undefined,
|
|
211
|
+
errorMessage: error instanceof Error ? error.message : String(error),
|
|
212
|
+
stackTrace: error instanceof Error ? error.stack : undefined,
|
|
213
|
+
});
|
|
179
214
|
}
|
|
180
215
|
}
|
|
181
216
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-role.service.js","sourceRoot":"","sources":["../../src/services/browser-role.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"browser-role.service.js","sourceRoot":"","sources":["../../src/services/browser-role.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.service.d.ts","sourceRoot":"","sources":["../../src/services/cache.service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/C,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAC,CAAe;IAC7B,OAAO,CAAC,WAAW,CAA+C;IAClE,OAAO,CAAC,eAAe,CAAC,CAAiB;IAEzC;;;OAGG;gBACS,KAAK,CAAC,EAAE,YAAY;IAgBhC;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;;;;OAKG;IACG,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"cache.service.d.ts","sourceRoot":"","sources":["../../src/services/cache.service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/C,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAC,CAAe;IAC7B,OAAO,CAAC,WAAW,CAA+C;IAClE,OAAO,CAAC,eAAe,CAAC,CAAiB;IAEzC;;;OAGG;gBACS,KAAK,CAAC,EAAE,YAAY;IAgBhC;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;;;;OAKG;IACG,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IA+C5C;;;;;;;OAOG;IACG,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA+BlE;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;;;;OAKG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAc3C;;;;;OAKG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAU5B;;;OAGG;IACH,OAAO,IAAI,IAAI;CAOhB"}
|
|
@@ -58,7 +58,10 @@ class CacheService {
|
|
|
58
58
|
}
|
|
59
59
|
catch (error) {
|
|
60
60
|
// Invalid JSON, remove from cache
|
|
61
|
-
console.warn(
|
|
61
|
+
console.warn("Failed to parse cached data:", {
|
|
62
|
+
key,
|
|
63
|
+
errorMessage: error instanceof Error ? error.message : String(error),
|
|
64
|
+
});
|
|
62
65
|
await this.delete(key);
|
|
63
66
|
return null;
|
|
64
67
|
}
|
|
@@ -114,7 +117,10 @@ class CacheService {
|
|
|
114
117
|
return false; // Indicate Redis failed, but memory cache set
|
|
115
118
|
}
|
|
116
119
|
catch (memoryError) {
|
|
117
|
-
console.error(
|
|
120
|
+
console.error("Failed to cache value:", {
|
|
121
|
+
key,
|
|
122
|
+
errorMessage: error instanceof Error ? error.message : String(error),
|
|
123
|
+
});
|
|
118
124
|
return false;
|
|
119
125
|
}
|
|
120
126
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.service.js","sourceRoot":"","sources":["../../src/services/cache.service.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AASH,MAAa,YAAY;IAKvB;;;OAGG;IACH,YAAY,KAAoB;QAPxB,gBAAW,GAAqC,IAAI,GAAG,EAAE,CAAC;QAQhE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,8DAA8D;QAC9D,IAAI,CAAC,eAAe,GAAG,WAAW,CAChC,GAAG,EAAE;YACH,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,EACD,CAAC,GAAG,EAAE,GAAG,IAAI,CACd,CAAC;QACF,mFAAmF;QACnF,IAAI,IAAI,CAAC,eAAe,IAAI,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YAC7E,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc;QACpB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,YAAY,GAAa,EAAE,CAAC;QAElC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACtD,IAAI,KAAK,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC;gBAC1B,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CAAI,GAAW;QACtB,IAAI,CAAC;YACH,+BAA+B;YAC/B,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC3C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACzC,IAAI,MAAM,EAAE,CAAC;oBACX,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAM,CAAC;wBACvC,oDAAoD;wBACpD,qEAAqE;wBACrE,oEAAoE;wBACpE,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;wBACnC,OAAO,MAAM,CAAC;oBAChB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,kCAAkC;wBAClC,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"cache.service.js","sourceRoot":"","sources":["../../src/services/cache.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,7 +25,7 @@ export declare class EncryptionService {
|
|
|
25
25
|
/**
|
|
26
26
|
* Create encryption service
|
|
27
27
|
* @param apiClient - API client for controller communication
|
|
28
|
-
* @param encryptionKey - Encryption key for server-side validation (from
|
|
28
|
+
* @param encryptionKey - Encryption key for server-side validation (from ENCRYPTION_KEY)
|
|
29
29
|
*/
|
|
30
30
|
constructor(apiClient: ApiClient, encryptionKey?: string);
|
|
31
31
|
/**
|
|
@@ -14,7 +14,7 @@ class EncryptionService {
|
|
|
14
14
|
/**
|
|
15
15
|
* Create encryption service
|
|
16
16
|
* @param apiClient - API client for controller communication
|
|
17
|
-
* @param encryptionKey - Encryption key for server-side validation (from
|
|
17
|
+
* @param encryptionKey - Encryption key for server-side validation (from ENCRYPTION_KEY)
|
|
18
18
|
*/
|
|
19
19
|
constructor(apiClient, encryptionKey) {
|
|
20
20
|
this.apiClient = apiClient;
|
|
@@ -63,7 +63,7 @@ class EncryptionService {
|
|
|
63
63
|
*/
|
|
64
64
|
validateEncryptionKey() {
|
|
65
65
|
if (!this.encryptionKey) {
|
|
66
|
-
throw new encryption_error_1.EncryptionError('Encryption key is required. Set
|
|
66
|
+
throw new encryption_error_1.EncryptionError('Encryption key is required. Set ENCRYPTION_KEY environment variable or provide encryptionKey in config.', 'ENCRYPTION_KEY_REQUIRED');
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encryption.service.js","sourceRoot":"","sources":["../../src/services/encryption.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,gEAA4D;AAY5D;;;GAGG;AACH,MAAa,iBAAiB;IAO5B;;;;OAIG;IACH,YAAoB,SAAoB,EAAE,aAAsB;QAA5C,cAAS,GAAT,SAAS,CAAW;QACtC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,aAAqB;QACpD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;QAE1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;YACvD,SAAS;YACT,aAAa;YACb,aAAa,EAAE,IAAI,CAAC,aAAc;SACnC,CAAC,CAAC;QAEH,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;SAC1B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,aAAqB;QAChD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;QAE1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;YACvD,KAAK;YACL,aAAa;YACb,aAAa,EAAE,IAAI,CAAC,aAAc;SACnC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,SAAS,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACK,qBAAqB;QAC3B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,kCAAe,CACvB,
|
|
1
|
+
{"version":3,"file":"encryption.service.js","sourceRoot":"","sources":["../../src/services/encryption.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,gEAA4D;AAY5D;;;GAGG;AACH,MAAa,iBAAiB;IAO5B;;;;OAIG;IACH,YAAoB,SAAoB,EAAE,aAAsB;QAA5C,cAAS,GAAT,SAAS,CAAW;QACtC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,aAAqB;QACpD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;QAE1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;YACvD,SAAS;YACT,aAAa;YACb,aAAa,EAAE,IAAI,CAAC,aAAc;SACnC,CAAC,CAAC;QAEH,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;SAC1B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,aAAqB;QAChD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;QAE1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;YACvD,KAAK;YACL,aAAa;YACb,aAAa,EAAE,IAAI,CAAC,aAAc;SACnC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,SAAS,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACK,qBAAqB;QAC3B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,kCAAe,CACvB,yGAAyG,EACzG,yBAAyB,CAC1B,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,qBAAqB,CAAC,IAAY;QACxC,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,kCAAe,CACvB,sGAAsG,EACtG,wBAAwB,EACxB,IAAI,CACL,CAAC;QACJ,CAAC;IACH,CAAC;;AArFH,8CAsFC;AArFC,sEAAsE;AAC9C,sCAAoB,GAAG,yBAAyB,CAAC"}
|
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
* Logger service module exports
|
|
3
3
|
* Provides LoggerService and LoggerChain for application logging
|
|
4
4
|
*/
|
|
5
|
-
export { LoggerService
|
|
5
|
+
export { LoggerService } from "./logger.service";
|
|
6
|
+
export type { ClientLoggingOptions } from "./logger.service";
|
|
6
7
|
export { LoggerChain } from "./logger-chain";
|
|
7
|
-
export { UnifiedLoggerService
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
8
|
+
export { UnifiedLoggerService } from "./unified-logger.service";
|
|
9
|
+
export type { UnifiedLogger } from "./unified-logger.service";
|
|
10
|
+
export { LoggerContextStorage } from "./logger-context-storage";
|
|
11
|
+
export { getLogger, registerLoggerService, } from "./unified-logger.factory";
|
|
10
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/logger/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/logger/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EACL,SAAS,EACT,qBAAqB,GACtB,MAAM,0BAA0B,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Provides LoggerService and LoggerChain for application logging
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.registerLoggerService = exports.
|
|
7
|
+
exports.registerLoggerService = exports.getLogger = exports.LoggerContextStorage = exports.UnifiedLoggerService = exports.LoggerChain = exports.LoggerService = void 0;
|
|
8
8
|
var logger_service_1 = require("./logger.service");
|
|
9
9
|
Object.defineProperty(exports, "LoggerService", { enumerable: true, get: function () { return logger_service_1.LoggerService; } });
|
|
10
10
|
var logger_chain_1 = require("./logger-chain");
|
|
@@ -15,8 +15,5 @@ var logger_context_storage_1 = require("./logger-context-storage");
|
|
|
15
15
|
Object.defineProperty(exports, "LoggerContextStorage", { enumerable: true, get: function () { return logger_context_storage_1.LoggerContextStorage; } });
|
|
16
16
|
var unified_logger_factory_1 = require("./unified-logger.factory");
|
|
17
17
|
Object.defineProperty(exports, "getLogger", { enumerable: true, get: function () { return unified_logger_factory_1.getLogger; } });
|
|
18
|
-
Object.defineProperty(exports, "setLoggerContext", { enumerable: true, get: function () { return unified_logger_factory_1.setLoggerContext; } });
|
|
19
|
-
Object.defineProperty(exports, "clearLoggerContext", { enumerable: true, get: function () { return unified_logger_factory_1.clearLoggerContext; } });
|
|
20
|
-
Object.defineProperty(exports, "mergeLoggerContext", { enumerable: true, get: function () { return unified_logger_factory_1.mergeLoggerContext; } });
|
|
21
18
|
Object.defineProperty(exports, "registerLoggerService", { enumerable: true, get: function () { return unified_logger_factory_1.registerLoggerService; } });
|
|
22
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/logger/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/logger/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AAEtB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA;AAE7B,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA;AAC7B,mEAGkC;AAFhC,mHAAA,SAAS,OAAA;AACT,+HAAA,qBAAqB,OAAA"}
|
|
@@ -11,12 +11,9 @@ export declare class LoggerChain {
|
|
|
11
11
|
private logger;
|
|
12
12
|
private context;
|
|
13
13
|
private options;
|
|
14
|
+
private contextStorage;
|
|
14
15
|
constructor(logger: LoggerService, context?: Record<string, unknown>, options?: ClientLoggingOptions);
|
|
15
16
|
addContext(key: string, value: unknown): LoggerChain;
|
|
16
|
-
addUser(userId: string): LoggerChain;
|
|
17
|
-
addApplication(applicationId: string): LoggerChain;
|
|
18
|
-
addCorrelation(correlationId: string): LoggerChain;
|
|
19
|
-
withToken(token: string): LoggerChain;
|
|
20
17
|
withoutMasking(): LoggerChain;
|
|
21
18
|
/**
|
|
22
19
|
* Add indexed logging context fields for fast queries
|
|
@@ -53,9 +50,8 @@ export declare class LoggerChain {
|
|
|
53
50
|
*/
|
|
54
51
|
withCredentialContext(credentialId?: string, credentialType?: string): LoggerChain;
|
|
55
52
|
/**
|
|
56
|
-
* Add
|
|
53
|
+
* Add response metrics for performance logging
|
|
57
54
|
*
|
|
58
|
-
* @param requestSize - Optional request size in bytes
|
|
59
55
|
* @param responseSize - Optional response size in bytes
|
|
60
56
|
* @param durationMs - Optional request duration in milliseconds
|
|
61
57
|
* @returns LoggerChain instance for method chaining
|
|
@@ -63,11 +59,11 @@ export declare class LoggerChain {
|
|
|
63
59
|
* @example
|
|
64
60
|
* ```typescript
|
|
65
61
|
* await logger
|
|
66
|
-
* .
|
|
62
|
+
* .withResponseMetrics(2048, 150)
|
|
67
63
|
* .info('Upstream API call completed');
|
|
68
64
|
* ```
|
|
69
65
|
*/
|
|
70
|
-
|
|
66
|
+
withResponseMetrics(responseSize?: number, durationMs?: number): LoggerChain;
|
|
71
67
|
/**
|
|
72
68
|
* Auto-extract logging context from Express Request
|
|
73
69
|
* Extracts: IP, method, path, user-agent, correlation ID, user from JWT
|
|
@@ -83,8 +79,22 @@ export declare class LoggerChain {
|
|
|
83
79
|
* ```
|
|
84
80
|
*/
|
|
85
81
|
withRequest(req: Request): LoggerChain;
|
|
82
|
+
/**
|
|
83
|
+
* Log error with optional stack trace.
|
|
84
|
+
* @param message - Error message.
|
|
85
|
+
* @param stackTrace - Optional stack trace.
|
|
86
|
+
*/
|
|
86
87
|
error(message: string, stackTrace?: string): Promise<void>;
|
|
88
|
+
/**
|
|
89
|
+
* Log informational message.
|
|
90
|
+
* @param message - Log message.
|
|
91
|
+
*/
|
|
87
92
|
info(message: string): Promise<void>;
|
|
93
|
+
/**
|
|
94
|
+
* Log audit event.
|
|
95
|
+
* @param action - Audit action.
|
|
96
|
+
* @param resource - Resource type.
|
|
97
|
+
*/
|
|
88
98
|
audit(action: string, resource: string): Promise<void>;
|
|
89
99
|
}
|
|
90
100
|
//# sourceMappingURL=logger-chain.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger-chain.d.ts","sourceRoot":"","sources":["../../../src/services/logger/logger-chain.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"logger-chain.d.ts","sourceRoot":"","sources":["../../../src/services/logger/logger-chain.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAIpE;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,cAAc,CAAsC;gBAG1D,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EACrC,OAAO,GAAE,oBAAyB;IAOpC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,WAAW;IAKpD,cAAc,IAAI,WAAW;IAK7B;;;;;;;;;;;;;;;;;OAiBG;IACH,kBAAkB,CAAC,OAAO,EAAE,qBAAqB,GAAG,WAAW;IAU/D;;;;;;;;;;;;;OAaG;IACH,qBAAqB,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,WAAW;IAMlF;;;;;;;;;;;;;OAaG;IACH,mBAAmB,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,WAAW;IAM5E;;;;;;;;;;;;;OAaG;IACH,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW;IAoCtC;;;;OAIG;IACG,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhE;;;OAGG;IACG,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C;;;;OAIG;IACG,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG7D"}
|