@cargolift-cdi/lib-common 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/LICENSE +9 -0
  2. package/README.jwt-logger-context.md +44 -0
  3. package/README.md +232 -0
  4. package/dist/auth/api-client.decorator.d.ts +2 -0
  5. package/dist/auth/api-client.decorator.js +4 -0
  6. package/dist/auth/api-client.decorator.js.map +1 -0
  7. package/dist/auth/auth.guard.d.ts +13 -0
  8. package/dist/auth/auth.guard.js +95 -0
  9. package/dist/auth/auth.guard.js.map +1 -0
  10. package/dist/auth/auth.module.d.ts +2 -0
  11. package/dist/auth/auth.module.js +19 -0
  12. package/dist/auth/auth.module.js.map +1 -0
  13. package/dist/auth/jwt-verifier.service.d.ts +22 -0
  14. package/dist/auth/jwt-verifier.service.js +164 -0
  15. package/dist/auth/jwt-verifier.service.js.map +1 -0
  16. package/dist/auth/roles.decorator.d.ts +2 -0
  17. package/dist/auth/roles.decorator.js +4 -0
  18. package/dist/auth/roles.decorator.js.map +1 -0
  19. package/dist/auth/user.decorator.d.ts +1 -0
  20. package/dist/auth/user.decorator.js +6 -0
  21. package/dist/auth/user.decorator.js.map +1 -0
  22. package/dist/errors/application.error.d.ts +7 -0
  23. package/dist/errors/application.error.js +12 -0
  24. package/dist/errors/application.error.js.map +1 -0
  25. package/dist/errors/base.error.d.ts +22 -0
  26. package/dist/errors/base.error.js +37 -0
  27. package/dist/errors/base.error.js.map +1 -0
  28. package/dist/errors/business.error.d.ts +7 -0
  29. package/dist/errors/business.error.js +12 -0
  30. package/dist/errors/business.error.js.map +1 -0
  31. package/dist/errors/invalid-payload-business.error.d.ts +7 -0
  32. package/dist/errors/invalid-payload-business.error.js +10 -0
  33. package/dist/errors/invalid-payload-business.error.js.map +1 -0
  34. package/dist/errors/invalid-schema-validation.error.d.ts +9 -0
  35. package/dist/errors/invalid-schema-validation.error.js +8 -0
  36. package/dist/errors/invalid-schema-validation.error.js.map +1 -0
  37. package/dist/errors/not-found-business.error.d.ts +7 -0
  38. package/dist/errors/not-found-business.error.js +20 -0
  39. package/dist/errors/not-found-business.error.js.map +1 -0
  40. package/dist/filters/api-exceptions.filter.d.ts +8 -0
  41. package/dist/filters/api-exceptions.filter.js +113 -0
  42. package/dist/filters/api-exceptions.filter.js.map +1 -0
  43. package/dist/index.d.ts +16 -0
  44. package/dist/index.js +17 -0
  45. package/dist/index.js.map +1 -0
  46. package/dist/logger/app-logger.module.d.ts +13 -0
  47. package/dist/logger/app-logger.module.js +42 -0
  48. package/dist/logger/app-logger.module.js.map +1 -0
  49. package/dist/logger/app-logger.token.d.ts +1 -0
  50. package/dist/logger/app-logger.token.js +2 -0
  51. package/dist/logger/app-logger.token.js.map +1 -0
  52. package/dist/logger/logger.async-context.d.ts +10 -0
  53. package/dist/logger/logger.async-context.js +20 -0
  54. package/dist/logger/logger.async-context.js.map +1 -0
  55. package/dist/logger/logger.module.d.ts +2 -0
  56. package/dist/logger/logger.module.js +19 -0
  57. package/dist/logger/logger.module.js.map +1 -0
  58. package/dist/logger/logger.service.d.ts +27 -0
  59. package/dist/logger/logger.service.js +275 -0
  60. package/dist/logger/logger.service.js.map +1 -0
  61. package/dist/middleware/api-logger.middleware.d.ts +8 -0
  62. package/dist/middleware/api-logger.middleware.js +83 -0
  63. package/dist/middleware/api-logger.middleware.js.map +1 -0
  64. package/dist/tsconfig.tsbuildinfo +1 -0
  65. package/dist/util/payload.util.d.ts +4 -0
  66. package/dist/util/payload.util.js +34 -0
  67. package/dist/util/payload.util.js.map +1 -0
  68. package/package.json +38 -0
@@ -0,0 +1 @@
1
+ export declare const User: (...dataOrPipes: (string | import("@nestjs/common").PipeTransform<any, any> | import("@nestjs/common").Type<import("@nestjs/common").PipeTransform<any, any>>)[]) => ParameterDecorator;
@@ -0,0 +1,6 @@
1
+ import { createParamDecorator } from '@nestjs/common';
2
+ export const User = createParamDecorator((data, ctx) => {
3
+ const req = ctx.switchToHttp().getRequest();
4
+ return data ? req.user?.[data] : req.user;
5
+ });
6
+ //# sourceMappingURL=user.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.decorator.js","sourceRoot":"","sources":["../../src/auth/user.decorator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAoB,MAAM,gBAAgB,CAAC;AAExE,MAAM,CAAC,MAAM,IAAI,GAAG,oBAAoB,CAAC,CAAC,IAAwB,EAAE,GAAqB,EAAE,EAAE;IAC3F,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;IAC5C,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAC5C,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { BaseError, ErrorOptions } from "./base.error.js";
2
+ export declare class ApplicationError extends BaseError {
3
+ constructor(message?: string, code?: string, options?: ErrorOptions);
4
+ }
5
+ export declare class ApplicationFatalError extends ApplicationError {
6
+ constructor(message?: string, code?: string, options?: ErrorOptions);
7
+ }
@@ -0,0 +1,12 @@
1
+ import { BaseError } from "./base.error.js";
2
+ export class ApplicationError extends BaseError {
3
+ constructor(message, code, options) {
4
+ super(message ?? "Generic application error", code ?? "APPLICATION_ERROR", options);
5
+ }
6
+ }
7
+ export class ApplicationFatalError extends ApplicationError {
8
+ constructor(message, code, options) {
9
+ super(message ?? "Generic application fatal error", code ?? "APPLICATION_FATAL_ERROR", options);
10
+ }
11
+ }
12
+ //# sourceMappingURL=application.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"application.error.js","sourceRoot":"","sources":["../../src/errors/application.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,iBAAiB,CAAC;AAE1D,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,OAAgB,EAAE,IAAa,EAAE,OAAsB;QACjE,KAAK,CAAC,OAAO,IAAI,2BAA2B,EAAE,IAAI,IAAI,mBAAmB,EAAE,OAAO,CAAC,CAAC;IACtF,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,gBAAgB;IACzD,YAAY,OAAgB,EAAE,IAAa,EAAE,OAAsB;QACjE,KAAK,CAAC,OAAO,IAAI,iCAAiC,EAAE,IAAI,IAAI,yBAAyB,EAAE,OAAO,CAAC,CAAC;IAClG,CAAC;CACF"}
@@ -0,0 +1,22 @@
1
+ export type ErrorOptions = {
2
+ code?: string;
3
+ cause?: Error | string | string[];
4
+ data?: Record<string, unknown>;
5
+ };
6
+ export declare abstract class BaseError extends Error {
7
+ readonly code?: string;
8
+ readonly data?: Record<string, unknown>;
9
+ readonly cause?: Error | string | string[];
10
+ protected constructor(message?: string, code?: string, options?: ErrorOptions);
11
+ toJSON(): {
12
+ message: string;
13
+ code: string;
14
+ data: Record<string, unknown>;
15
+ stack: string;
16
+ cause: string | string[] | {
17
+ name: string;
18
+ message: string;
19
+ stack: string;
20
+ };
21
+ };
22
+ }
@@ -0,0 +1,37 @@
1
+ export class BaseError extends Error {
2
+ constructor(message, code, options) {
3
+ super(message);
4
+ this.code = code ?? "UnknownError";
5
+ this.data = options?.data;
6
+ this.cause = options?.cause;
7
+ Object.setPrototypeOf(this, new.target.prototype);
8
+ if (Error.captureStackTrace) {
9
+ Error.captureStackTrace(this, new.target);
10
+ }
11
+ if (this.stack) {
12
+ const stack = this.stack;
13
+ Object.defineProperty(this, "stack", {
14
+ value: stack,
15
+ enumerable: true,
16
+ writable: true,
17
+ configurable: true,
18
+ });
19
+ }
20
+ }
21
+ toJSON() {
22
+ return {
23
+ message: this.message,
24
+ code: this.code,
25
+ data: this.data,
26
+ stack: this.stack,
27
+ cause: this.cause instanceof Error
28
+ ? {
29
+ name: this.cause.name,
30
+ message: this.cause.message,
31
+ stack: this.cause.stack,
32
+ }
33
+ : this.cause,
34
+ };
35
+ }
36
+ }
37
+ //# sourceMappingURL=base.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.error.js","sourceRoot":"","sources":["../../src/errors/base.error.ts"],"names":[],"mappings":"AAMA,MAAM,OAAgB,SAAU,SAAQ,KAAK;IAK3C,YAAsB,OAAgB,EAAE,IAAa,EAAE,OAAsB;QAC3E,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,cAAc,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC;QAE5B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC5B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;QAGD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACzB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE;gBACnC,KAAK,EAAE,KAAK;gBACZ,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,IAAI;gBACd,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YAEjB,KAAK,EACH,IAAI,CAAC,KAAK,YAAY,KAAK;gBACzB,CAAC,CAAC;oBACE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;oBACrB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;oBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;iBACxB;gBACH,CAAC,CAAC,IAAI,CAAC,KAAK;SACjB,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { BaseError, ErrorOptions } from "./base.error.js";
2
+ export declare class BusinessError extends BaseError {
3
+ constructor(message?: string, code?: string, options?: ErrorOptions);
4
+ }
5
+ export declare class BusinessFatalError extends BusinessError {
6
+ constructor(message?: string, code?: string, options?: ErrorOptions);
7
+ }
@@ -0,0 +1,12 @@
1
+ import { BaseError } from "./base.error.js";
2
+ export class BusinessError extends BaseError {
3
+ constructor(message, code, options) {
4
+ super(message ?? "Unknown Business error", code ?? "BUSINESS_ERROR", options);
5
+ }
6
+ }
7
+ export class BusinessFatalError extends BusinessError {
8
+ constructor(message, code, options) {
9
+ super(message ?? "Unknown Business fatal error", code ?? "BUSINESS_FATAL_ERROR", options);
10
+ }
11
+ }
12
+ //# sourceMappingURL=business.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"business.error.js","sourceRoot":"","sources":["../../src/errors/business.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,iBAAiB,CAAC;AAE1D,MAAM,OAAO,aAAc,SAAQ,SAAS;IAC1C,YAAY,OAAgB,EAAE,IAAa,EAAE,OAAsB;QACjE,KAAK,CAAC,OAAO,IAAI,wBAAwB,EAAE,IAAI,IAAI,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;CACF;AACD,MAAM,OAAO,kBAAmB,SAAQ,aAAa;IACnD,YAAY,OAAgB,EAAE,IAAa,EAAE,OAAsB;QACjE,KAAK,CAAC,OAAO,IAAI,8BAA8B,EAAE,IAAI,IAAI,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAC5F,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { HttpException } from "@nestjs/common";
2
+ import { ErrorOptions } from "./base.error.js";
3
+ export declare class InvalidPayloadBusinessError extends HttpException {
4
+ data: Record<string, unknown>;
5
+ cause: Error | string | string[];
6
+ constructor(message: string, errors: string[], options?: ErrorOptions);
7
+ }
@@ -0,0 +1,10 @@
1
+ import { HttpException, HttpStatus } from "@nestjs/common";
2
+ export class InvalidPayloadBusinessError extends HttpException {
3
+ constructor(message, errors, options) {
4
+ super({ message: errors }, HttpStatus.BAD_REQUEST);
5
+ this.cause = options?.cause;
6
+ this.data = options?.data;
7
+ this.name = "InvalidPayloadBusinessError";
8
+ }
9
+ }
10
+ //# sourceMappingURL=invalid-payload-business.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invalid-payload-business.error.js","sourceRoot":"","sources":["../../src/errors/invalid-payload-business.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI3D,MAAM,OAAO,2BAA4B,SAAQ,aAAa;IAG5D,YAAY,OAAe,EAAE,MAAgB,EAAE,OAAsB;QACnE,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAC,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAE5C,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import { HttpException } from "@nestjs/common";
2
+ export type ErrorOptions = {
3
+ code?: string;
4
+ cause?: unknown;
5
+ data?: Record<string, unknown>;
6
+ };
7
+ export declare class InvalidSchemaValidation extends HttpException {
8
+ constructor(errors: string | string[]);
9
+ }
@@ -0,0 +1,8 @@
1
+ import { HttpException, HttpStatus } from "@nestjs/common";
2
+ export class InvalidSchemaValidation extends HttpException {
3
+ constructor(errors) {
4
+ super({ message: errors }, HttpStatus.BAD_REQUEST);
5
+ this.name = "InvalidSchemaValidation";
6
+ }
7
+ }
8
+ //# sourceMappingURL=invalid-schema-validation.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invalid-schema-validation.error.js","sourceRoot":"","sources":["../../src/errors/invalid-schema-validation.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAS3D,MAAM,OAAO,uBAAwB,SAAQ,aAAa;IACxD,YAAY,MAAyB;QACnC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAC,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IAExC,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { ErrorOptions } from "./base.error.js";
2
+ import { BusinessError } from "./business.error.js";
3
+ export declare class NotFoundBusinessError extends BusinessError {
4
+ constructor(message: string, resourceType: string, resourceId: string | number, options?: ErrorOptions);
5
+ get resourceType(): string | undefined;
6
+ get resourceId(): string | number | undefined;
7
+ }
@@ -0,0 +1,20 @@
1
+ import { BusinessError } from "./business.error.js";
2
+ export class NotFoundBusinessError extends BusinessError {
3
+ constructor(message, resourceType, resourceId, options) {
4
+ super(message ?? `${resourceType} '${resourceId}' not found`, "BUSINESS_RESOURCE_NOT_FOUND", {
5
+ ...options,
6
+ data: {
7
+ resourceType,
8
+ resourceId,
9
+ ...(options?.data ?? {})
10
+ }
11
+ });
12
+ }
13
+ get resourceType() {
14
+ return this.data?.resourceType ?? undefined;
15
+ }
16
+ get resourceId() {
17
+ return this.data?.resourceId ?? undefined;
18
+ }
19
+ }
20
+ //# sourceMappingURL=not-found-business.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-found-business.error.js","sourceRoot":"","sources":["../../src/errors/not-found-business.error.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,MAAM,OAAO,qBAAsB,SAAQ,aAAa;IACtD,YAAY,OAAe,EAAE,YAAoB,EAAE,UAA2B,EAAE,OAAsB;QACpG,KAAK,CACH,OAAO,IAAI,GAAG,YAAY,KAAK,UAAU,aAAa,EACtD,6BAA6B,EAC7B;YACE,GAAG,OAAO;YACV,IAAI,EAAE;gBACJ,YAAY;gBACZ,UAAU;gBACV,GAAG,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;aACzB;SACF,CACF,CAAC;IACJ,CAAC;IAED,IAAI,YAAY;QACd,OAAQ,IAAI,CAAC,IAAI,EAAE,YAAuB,IAAI,SAAS,CAAC;IAC1D,CAAC;IAED,IAAI,UAAU;QACZ,OAAQ,IAAI,CAAC,IAAI,EAAE,UAA8B,IAAI,SAAS,CAAC;IACjE,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ import { ExceptionFilter, ArgumentsHost } from "@nestjs/common";
2
+ import { LoggerContextService } from "../logger/logger.service.js";
3
+ export declare class APIExceptionsFilter implements ExceptionFilter {
4
+ private readonly logger;
5
+ constructor(logger: LoggerContextService);
6
+ private getMessage;
7
+ catch(exception: any, host: ArgumentsHost): void;
8
+ }
@@ -0,0 +1,113 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Catch, HttpException, Logger, Injectable, Scope } from "@nestjs/common";
11
+ import { LoggerContextService } from "../logger/logger.service.js";
12
+ let APIExceptionsFilter = class APIExceptionsFilter {
13
+ constructor(logger) {
14
+ this.logger = logger;
15
+ }
16
+ getMessage(error) {
17
+ if (typeof error === "string") {
18
+ return error.split("\n")[0];
19
+ }
20
+ switch (error?.code) {
21
+ case "EHOSTUNREACH":
22
+ case "ECONNREFUSED":
23
+ case "ENETUNREACH":
24
+ case "ECONNRESET":
25
+ case "ETIMEDOUT":
26
+ case "ENOTFOUND":
27
+ return "Erro interno => " + error?.code || "Erro desconhecido";
28
+ case 406:
29
+ return "Erro interno => Operation failed: QueueDeclare; 406 (PRECONDITION-FAILED)";
30
+ }
31
+ return error?.message || "Erro interno inesperado #1";
32
+ }
33
+ catch(exception, host) {
34
+ const ctx = host.switchToHttp();
35
+ const response = ctx.getResponse();
36
+ const request = ctx.getRequest();
37
+ const status = exception instanceof HttpException ? exception.getStatus() : 500;
38
+ let errorMsg = "";
39
+ let errorCode = "";
40
+ let trace = "";
41
+ if (!exception) {
42
+ errorMsg = "Erro interno inesperado #2";
43
+ }
44
+ else if (typeof exception === "string") {
45
+ errorMsg = exception.split("\n")[0];
46
+ }
47
+ else if (exception?.response?.code) {
48
+ errorCode = exception?.response?.code;
49
+ trace = exception?.response?.stack || undefined;
50
+ errorMsg = this.getMessage(exception?.response);
51
+ }
52
+ else if (exception.err) {
53
+ errorCode = exception.err.code || exception.err?.status || "";
54
+ errorMsg = this.getMessage(exception.err);
55
+ }
56
+ else if (exception.message) {
57
+ errorCode = exception.code || exception?.status || "";
58
+ errorMsg = this.getMessage(exception);
59
+ }
60
+ else if (exception.toString && typeof exception.toString === "function") {
61
+ errorMsg = exception.toString();
62
+ }
63
+ else {
64
+ try {
65
+ exception = JSON.stringify(exception);
66
+ }
67
+ catch {
68
+ errorMsg = exception.toString();
69
+ }
70
+ }
71
+ if (!trace) {
72
+ trace = exception?.response?.stack || exception?.stack || exception?.err?.stack || exception.response || exception.toString || undefined;
73
+ }
74
+ if (!this.logger.isContextSet()) {
75
+ this.logger?.setContextRequest(request || response);
76
+ }
77
+ const error = {
78
+ code: errorCode || (status >= 400 && status < 500 ? "BAD_REQUEST" : "INTERNAL_ERROR"),
79
+ message: exception?.response?.message || exception?.message || exception?.err?.message || "Erro interno inesperado #4",
80
+ stack_trace: trace,
81
+ cause: exception?.cause || null,
82
+ };
83
+ if (this.logger?.error) {
84
+ if (status >= 400 && status < 500) {
85
+ this.logger.businessError(errorMsg + ": " + exception?.response?.message || exception?.message || "" || exception?.err?.message || "", error);
86
+ }
87
+ else {
88
+ this.logger.error(errorMsg + ": " + exception?.response?.message || exception?.message || "" || exception?.err?.message || "", error);
89
+ }
90
+ }
91
+ else {
92
+ Logger.error(exception?.response?.message || exception?.message || exception?.err?.message || errorMsg, trace, "APIExceptionsFilter");
93
+ }
94
+ response.status(status).json({
95
+ message: status >= 400 && status < 500
96
+ ? exception?.response?.message || errorMsg || "Erro interno ao processar solicitação"
97
+ : "Erro interno ao processar solicitação",
98
+ error: {
99
+ message: errorMsg,
100
+ statusCode: status,
101
+ path: request.url,
102
+ timestamp: new Date().toISOString(),
103
+ },
104
+ });
105
+ }
106
+ };
107
+ APIExceptionsFilter = __decorate([
108
+ Injectable({ scope: Scope.REQUEST }),
109
+ Catch(),
110
+ __metadata("design:paramtypes", [LoggerContextService])
111
+ ], APIExceptionsFilter);
112
+ export { APIExceptionsFilter };
113
+ //# sourceMappingURL=api-exceptions.filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-exceptions.filter.js","sourceRoot":"","sources":["../../src/filters/api-exceptions.filter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAmB,KAAK,EAAiB,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACjH,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAK5D,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,YAA6B,MAA4B;QAA5B,WAAM,GAAN,MAAM,CAAsB;IAAG,CAAC;IAGrD,UAAU,CAAC,KAAK;QACtB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC;QACD,QAAQ,KAAK,EAAE,IAAI,EAAE,CAAC;YACpB,KAAK,cAAc,CAAC;YACpB,KAAK,cAAc,CAAC;YACpB,KAAK,aAAa,CAAC;YACnB,KAAK,YAAY,CAAC;YAClB,KAAK,WAAW,CAAC;YACjB,KAAK,WAAW;gBACd,OAAO,kBAAkB,GAAG,KAAK,EAAE,IAAI,IAAI,mBAAmB,CAAC;YAEjE,KAAK,GAAG;gBACN,OAAO,2EAA2E,CAAC;QACvF,CAAC;QACD,OAAO,KAAK,EAAE,OAAO,IAAI,4BAA4B,CAAC;IACxD,CAAC;IAGD,KAAK,CAAC,SAAc,EAAE,IAAmB;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QAEjC,MAAM,MAAM,GAAG,SAAS,YAAY,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAEhF,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,QAAQ,GAAG,4BAA4B,CAAC;QAC1C,CAAC;aAAM,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YACzC,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC;aAAM,IAAI,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YACrC,SAAS,GAAG,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC;YACtC,KAAK,GAAG,SAAS,EAAE,QAAQ,EAAE,KAAK,IAAI,SAAS,CAAC;YAChD,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAElD,CAAC;aAAM,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC;YACzB,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI,SAAS,CAAC,GAAG,EAAE,MAAM,IAAI,EAAE,CAAC;YAC9D,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;aAAM,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YAC7B,SAAS,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,EAAE,MAAM,IAAI,EAAE,CAAC;YACtD,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;aAAM,IAAI,SAAS,CAAC,QAAQ,IAAI,OAAO,SAAS,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC1E,QAAQ,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,QAAQ,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,SAAS,EAAE,QAAQ,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,SAAS,EAAE,GAAG,EAAE,KAAK,IAAI,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC;QAC3I,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC;QACtD,CAAC;QA2BD,MAAM,KAAK,GAAG;YACZ,IAAI,EAAE,SAAS,IAAI,CAAC,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC;YACrF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,IAAI,SAAS,EAAE,OAAO,IAAI,SAAS,EAAE,GAAG,EAAE,OAAO,IAAI,4BAA4B;YACtH,WAAW,EAAE,KAAK;YAClB,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,IAAI;SAChC,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;YACvB,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;gBAClC,IAAI,CAAC,MAAM,CAAC,aAAa,CACvB,QAAQ,GAAG,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,OAAO,IAAI,SAAS,EAAE,OAAO,IAAI,EAAE,IAAI,SAAS,EAAE,GAAG,EAAE,OAAO,IAAI,EAAE,EAC3G,KAAK,CACN,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,QAAQ,GAAG,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,OAAO,IAAI,SAAS,EAAE,OAAO,IAAI,EAAE,IAAI,SAAS,EAAE,GAAG,EAAE,OAAO,IAAI,EAAE,EAC3G,KAAK,CACN,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YAEN,MAAM,CAAC,KAAK,CACV,SAAS,EAAE,QAAQ,EAAE,OAAO,IAAI,SAAS,EAAE,OAAO,IAAI,SAAS,EAAE,GAAG,EAAE,OAAO,IAAI,QAAQ,EACzF,KAAK,EACL,qBAAqB,CACtB,CAAC;QACJ,CAAC;QAED,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;YAC3B,OAAO,EACL,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG;gBAC3B,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,IAAI,QAAQ,IAAI,uCAAuC;gBACrF,CAAC,CAAC,uCAAuC;YAC7C,KAAK,EAAE;gBACL,OAAO,EAAE,QAAQ;gBACjB,UAAU,EAAE,MAAM;gBAClB,IAAI,EAAE,OAAO,CAAC,GAAG;gBACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AArIY,mBAAmB;IAF/B,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IACpC,KAAK,EAAE;qCAE+B,oBAAoB;GAD9C,mBAAmB,CAqI/B"}
@@ -0,0 +1,16 @@
1
+ export * from "./filters/api-exceptions.filter.js";
2
+ export * from './middleware/api-logger.middleware.js';
3
+ export * from "./errors/business.error.js";
4
+ export * from "./errors/not-found-business.error.js";
5
+ export * from "./errors/application.error.js";
6
+ export * from "./errors/invalid-payload-business.error.js";
7
+ export * from './logger/logger.service.js';
8
+ export * from './logger/logger.module.js';
9
+ export * from './logger/app-logger.module.js';
10
+ export * from './logger/app-logger.token.js';
11
+ export * from './logger/logger.async-context.js';
12
+ export * from './auth/auth.module.js';
13
+ export * from './auth/auth.guard.js';
14
+ export * from './auth/roles.decorator.js';
15
+ export * from './auth/api-client.decorator.js';
16
+ export * from "./util/payload.util.js";
package/dist/index.js ADDED
@@ -0,0 +1,17 @@
1
+ export * from "./filters/api-exceptions.filter.js";
2
+ export * from './middleware/api-logger.middleware.js';
3
+ export * from "./errors/business.error.js";
4
+ export * from "./errors/not-found-business.error.js";
5
+ export * from "./errors/application.error.js";
6
+ export * from "./errors/invalid-payload-business.error.js";
7
+ export * from './logger/logger.service.js';
8
+ export * from './logger/logger.module.js';
9
+ export * from './logger/app-logger.module.js';
10
+ export * from './logger/app-logger.token.js';
11
+ export * from './logger/logger.async-context.js';
12
+ export * from './auth/auth.module.js';
13
+ export * from './auth/auth.guard.js';
14
+ export * from './auth/roles.decorator.js';
15
+ export * from './auth/api-client.decorator.js';
16
+ export * from "./util/payload.util.js";
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,oCAAoC,CAAC;AAGnD,cAAc,uCAAuC,CAAC;AAGtD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sCAAsC,CAAC;AACrD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4CAA4C,CAAC;AAG3D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AAGjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAA;AACzC,cAAc,gCAAgC,CAAC;AAG/C,cAAc,wBAAwB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ export type AppLoggerOptions = {
3
+ application?: {
4
+ name?: string;
5
+ function?: string;
6
+ action?: string;
7
+ method?: string;
8
+ };
9
+ defaults?: Record<string, any>;
10
+ };
11
+ export declare class AppLoggerModule {
12
+ static forRoot(options?: AppLoggerOptions): DynamicModule;
13
+ }
@@ -0,0 +1,42 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var AppLoggerModule_1;
8
+ import { Module } from '@nestjs/common';
9
+ import { LoggerContextService } from './logger.service.js';
10
+ import { APP_LOGGER } from './app-logger.token.js';
11
+ let AppLoggerModule = AppLoggerModule_1 = class AppLoggerModule {
12
+ static forRoot(options = {}) {
13
+ const provider = {
14
+ provide: APP_LOGGER,
15
+ useFactory: () => {
16
+ const logger = new LoggerContextService();
17
+ logger.setContext({
18
+ application: {
19
+ name: options.application?.name || process.env.APP_NAME || 'app',
20
+ function: options.application?.function || 'service',
21
+ action: options.application?.action,
22
+ method: options.application?.method,
23
+ },
24
+ source: undefined,
25
+ ...options.defaults,
26
+ });
27
+ return logger;
28
+ },
29
+ };
30
+ return {
31
+ module: AppLoggerModule_1,
32
+ providers: [provider],
33
+ exports: [provider],
34
+ global: false,
35
+ };
36
+ }
37
+ };
38
+ AppLoggerModule = AppLoggerModule_1 = __decorate([
39
+ Module({})
40
+ ], AppLoggerModule);
41
+ export { AppLoggerModule };
42
+ //# sourceMappingURL=app-logger.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-logger.module.js","sourceRoot":"","sources":["../../src/logger/app-logger.module.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAiB,MAAM,EAAY,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAa5C,IAAM,eAAe,uBAArB,MAAM,eAAe;IAC1B,MAAM,CAAC,OAAO,CAAC,UAA4B,EAAE;QAC3C,MAAM,QAAQ,GAAa;YACzB,OAAO,EAAE,UAAU;YACnB,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,MAAM,GAAG,IAAI,oBAAoB,EAAE,CAAC;gBAE1C,MAAM,CAAC,UAAU,CAAC;oBAChB,WAAW,EAAE;wBACX,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,KAAK;wBAChE,QAAQ,EAAE,OAAO,CAAC,WAAW,EAAE,QAAQ,IAAI,SAAS;wBACpD,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM;wBACnC,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM;qBACpC;oBACD,MAAM,EAAE,SAAS;oBACjB,GAAG,OAAO,CAAC,QAAQ;iBACpB,CAAC,CAAC;gBACH,OAAO,MAAM,CAAC;YAChB,CAAC;SACF,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,iBAAe;YACvB,SAAS,EAAE,CAAC,QAAQ,CAAC;YACrB,OAAO,EAAE,CAAC,QAAQ,CAAC;YACnB,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC;CACF,CAAA;AA5BY,eAAe;IAD3B,MAAM,CAAC,EAAE,CAAC;GACE,eAAe,CA4B3B"}
@@ -0,0 +1 @@
1
+ export declare const APP_LOGGER: unique symbol;
@@ -0,0 +1,2 @@
1
+ export const APP_LOGGER = Symbol('APP_LOGGER');
2
+ //# sourceMappingURL=app-logger.token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-logger.token.js","sourceRoot":"","sources":["../../src/logger/app-logger.token.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { ContextMessage } from '@cargolift-cdi/types';
2
+ import { AsyncLocalStorage } from 'node:async_hooks';
3
+ export interface LoggerAsyncStore {
4
+ context: Partial<ContextMessage>;
5
+ }
6
+ export declare const loggerAsyncStorage: AsyncLocalStorage<LoggerAsyncStore>;
7
+ export declare function getLoggerStore(): LoggerAsyncStore | undefined;
8
+ export declare function getLoggerContext(): Partial<ContextMessage>;
9
+ export declare function updateLoggerContext(partial: Partial<ContextMessage>): Partial<ContextMessage>;
10
+ export declare function runWithLoggerContext<T>(initial: Partial<ContextMessage>, fn: () => T): T;
@@ -0,0 +1,20 @@
1
+ import { AsyncLocalStorage } from 'node:async_hooks';
2
+ export const loggerAsyncStorage = new AsyncLocalStorage();
3
+ export function getLoggerStore() {
4
+ return loggerAsyncStorage.getStore();
5
+ }
6
+ export function getLoggerContext() {
7
+ return { ...(getLoggerStore()?.context || {}) };
8
+ }
9
+ export function updateLoggerContext(partial) {
10
+ const store = loggerAsyncStorage.getStore();
11
+ if (!store) {
12
+ return { ...partial };
13
+ }
14
+ store.context = { ...store.context, ...partial };
15
+ return { ...store.context };
16
+ }
17
+ export function runWithLoggerContext(initial, fn) {
18
+ return loggerAsyncStorage.run({ context: { ...initial } }, fn);
19
+ }
20
+ //# sourceMappingURL=logger.async-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.async-context.js","sourceRoot":"","sources":["../../src/logger/logger.async-context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAWrD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,iBAAiB,EAAoB,CAAC;AAK5E,MAAM,UAAU,cAAc;IAC5B,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAC;AACvC,CAAC;AAGD,MAAM,UAAU,gBAAgB;IAC9B,OAAO,EAAE,GAAG,CAAC,cAAc,EAAE,EAAE,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;AAClD,CAAC;AAGD,MAAM,UAAU,mBAAmB,CAAC,OAAgC;IAClE,MAAM,KAAK,GAAG,kBAAkB,CAAC,QAAQ,EAAE,CAAC;IAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;QAEX,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;IACxB,CAAC;IACD,KAAK,CAAC,OAAO,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;IACjD,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;AAC9B,CAAC;AAGD,MAAM,UAAU,oBAAoB,CAAI,OAAgC,EAAE,EAAW;IACnF,OAAO,kBAAkB,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACjE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare class LoggerModule {
2
+ }
@@ -0,0 +1,19 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Module, Global } from '@nestjs/common';
8
+ import { LoggerContextService } from './logger.service.js';
9
+ let LoggerModule = class LoggerModule {
10
+ };
11
+ LoggerModule = __decorate([
12
+ Global(),
13
+ Module({
14
+ providers: [LoggerContextService],
15
+ exports: [LoggerContextService],
16
+ })
17
+ ], LoggerModule);
18
+ export { LoggerModule };
19
+ //# sourceMappingURL=logger.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.module.js","sourceRoot":"","sources":["../../src/logger/logger.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAQpD,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,YAAY;IALxB,MAAM,EAAE;IACR,MAAM,CAAC;QACN,SAAS,EAAE,CAAC,oBAAoB,CAAC;QACjC,OAAO,EAAE,CAAC,oBAAoB,CAAC;KAChC,CAAC;GACW,YAAY,CAAG"}
@@ -0,0 +1,27 @@
1
+ import { LoggerService } from "@nestjs/common";
2
+ import type { ContextMessage, RabbitMQMessage } from "@cargolift-cdi/types";
3
+ import { ContextSource } from "@cargolift-cdi/types";
4
+ export declare class LoggerContextService implements LoggerService {
5
+ private readonly pinoLogger;
6
+ constructor();
7
+ setDefaultContext(req?: any, rabbitMQMessage?: RabbitMQMessage, context?: ContextMessage): void;
8
+ setContextRequest(req: any, context?: ContextMessage): void;
9
+ setContextRabbitMQ(rabbitMQMessage: RabbitMQMessage, context?: ContextMessage): void;
10
+ setContext(context?: ContextMessage, req?: any, rabbitMQMessage?: RabbitMQMessage): void;
11
+ setLogInbound(inbound: Partial<ContextMessage["inbound"]>): void;
12
+ addTrace(application: string, functionName: string): void;
13
+ addWarn(message: string, logType?: "application" | "business", extraContext?: Record<string, any>): void;
14
+ getContext(): Partial<ContextMessage>;
15
+ updateSource(partial: Partial<ContextSource>): any;
16
+ isContextSet(): boolean;
17
+ private buildLog;
18
+ info(message: string, extraContext?: Record<string, any>): void;
19
+ debug(message: string, extraContext?: Record<string, any>): void;
20
+ log(message: string, extraContext?: Record<string, any>): void;
21
+ error(message: string, errorContext?: Record<string, any>, extraContext?: Record<string, any>): void;
22
+ warn(message: string, extraContext?: Record<string, any>): void;
23
+ businessError(message: string, extraContext?: Record<string, any>): void;
24
+ businessWarn(message: string, extraContext?: Record<string, any>): void;
25
+ buildRabbitContext(msg: RabbitMQMessage, staticBindings?: Record<string, any>): Partial<ContextMessage>;
26
+ private buildWarnEntry;
27
+ }