cqrs-boilerplate-code 1.0.1 → 1.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 (75) hide show
  1. package/dist/common-infra/common-infra.module.d.ts +2 -0
  2. package/dist/common-infra/common-infra.module.js +15 -7
  3. package/dist/common-infra/common-infra.module.js.map +1 -1
  4. package/dist/common-infra/database/database.module.d.ts +2 -0
  5. package/dist/common-infra/database/database.module.js +18 -12
  6. package/dist/common-infra/database/database.module.js.map +1 -1
  7. package/dist/common-infra/index.d.ts +2 -0
  8. package/dist/{middleware → common-infra}/index.js +2 -5
  9. package/dist/common-infra/index.js.map +1 -0
  10. package/dist/core-common/core-common.module.d.ts +2 -0
  11. package/dist/core-common/core-common.module.js +16 -8
  12. package/dist/core-common/core-common.module.js.map +1 -1
  13. package/dist/core-common/index.d.ts +12 -5
  14. package/dist/core-common/index.js +9 -2
  15. package/dist/core-common/index.js.map +1 -1
  16. package/dist/core-common/logger/logger.interface.d.ts +7 -0
  17. package/dist/core-common/logger/logger.interface.js +3 -0
  18. package/dist/core-common/logger/logger.interface.js.map +1 -0
  19. package/dist/core-common/logger/logger.module.d.ts +4 -0
  20. package/dist/core-common/logger/logger.module.js +20 -8
  21. package/dist/core-common/logger/logger.module.js.map +1 -1
  22. package/dist/core-common/logger/{index.js → logger.service.js} +1 -1
  23. package/dist/core-common/logger/logger.service.js.map +1 -0
  24. package/dist/tsconfig.build.tsbuildinfo +1 -1
  25. package/package.json +2 -7
  26. package/src/common-infra/common-infra.module.ts +17 -0
  27. package/src/common-infra/database/database.module.ts +23 -0
  28. package/src/common-infra/database/typeorm.config.ts +18 -0
  29. package/src/common-infra/index.ts +2 -0
  30. package/src/core-common/constant/app.constant.ts +2 -0
  31. package/src/core-common/core-common.module.ts +19 -0
  32. package/src/core-common/error/custom-error/already-exists.error.ts +17 -0
  33. package/src/core-common/error/custom-error/bad-request.error.ts +8 -0
  34. package/src/core-common/error/custom-error/conflict.error.ts +17 -0
  35. package/src/core-common/error/custom-error/custom-validation-error.ts +9 -0
  36. package/src/core-common/error/custom-error/forbidden.error.ts +8 -0
  37. package/src/core-common/error/custom-error/internal-server.error.ts +11 -0
  38. package/src/core-common/error/custom-error/not-found.error.ts +8 -0
  39. package/src/core-common/error/custom-error/service-unavailable.error.ts +8 -0
  40. package/src/core-common/error/custom-error/unauthorized.error.ts +8 -0
  41. package/src/core-common/error/custom-error/unprocess-entity.error.ts +8 -0
  42. package/src/core-common/error/custom-error/validation.error.ts +8 -0
  43. package/src/core-common/error/generic.error.ts +31 -0
  44. package/src/core-common/error/index.ts +10 -0
  45. package/src/core-common/index.ts +13 -0
  46. package/src/core-common/logger/logger.interface.ts +8 -0
  47. package/src/core-common/logger/logger.module.ts +23 -0
  48. package/src/core-common/logger/logger.service.ts +175 -0
  49. package/src/core-common/response-model/generic-error-response.model.ts +44 -0
  50. package/src/core-common/response-model/generic-success-response.model.ts +25 -0
  51. package/src/core-common/result-model/result.ts +38 -0
  52. package/tsconfig.build.json +10 -0
  53. package/tsconfig.json +58 -0
  54. package/dist/core-common/logger/index.js.map +0 -1
  55. package/dist/core-common/logger/logger.provider.d.ts +0 -2
  56. package/dist/core-common/logger/logger.provider.js +0 -9
  57. package/dist/core-common/logger/logger.provider.js.map +0 -1
  58. package/dist/middleware/async-storage.middleware.d.ts +0 -8
  59. package/dist/middleware/async-storage.middleware.js +0 -38
  60. package/dist/middleware/async-storage.middleware.js.map +0 -1
  61. package/dist/middleware/filter/global-exeception.filter.d.ts +0 -5
  62. package/dist/middleware/filter/global-exeception.filter.js +0 -98
  63. package/dist/middleware/filter/global-exeception.filter.js.map +0 -1
  64. package/dist/middleware/index.d.ts +0 -5
  65. package/dist/middleware/index.js.map +0 -1
  66. package/dist/middleware/interceptor/response-handler.d.ts +0 -9
  67. package/dist/middleware/interceptor/response-handler.js +0 -59
  68. package/dist/middleware/interceptor/response-handler.js.map +0 -1
  69. package/dist/middleware/platform-auth.middleware.d.ts +0 -5
  70. package/dist/middleware/platform-auth.middleware.js +0 -22
  71. package/dist/middleware/platform-auth.middleware.js.map +0 -1
  72. package/dist/middleware/utils/http-response.formatter.d.ts +0 -11
  73. package/dist/middleware/utils/http-response.formatter.js +0 -78
  74. package/dist/middleware/utils/http-response.formatter.js.map +0 -1
  75. /package/dist/core-common/logger/{index.d.ts → logger.service.d.ts} +0 -0
@@ -1,2 +1,4 @@
1
+ import { DynamicModule } from "@nestjs/common";
1
2
  export declare class CommonInfraModule {
3
+ static forRoot(): DynamicModule;
2
4
  }
@@ -5,18 +5,26 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  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;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var CommonInfraModule_1;
8
9
  Object.defineProperty(exports, "__esModule", { value: true });
9
10
  exports.CommonInfraModule = void 0;
10
11
  const common_1 = require("@nestjs/common");
12
+ const config_1 = require("@nestjs/config");
11
13
  const database_module_1 = require("./database/database.module");
12
- let CommonInfraModule = class CommonInfraModule {
14
+ let CommonInfraModule = CommonInfraModule_1 = class CommonInfraModule {
15
+ static forRoot() {
16
+ return {
17
+ module: CommonInfraModule_1,
18
+ imports: [
19
+ config_1.ConfigModule,
20
+ database_module_1.DBModule,
21
+ ],
22
+ exports: [database_module_1.DBModule],
23
+ };
24
+ }
13
25
  };
14
26
  exports.CommonInfraModule = CommonInfraModule;
15
- exports.CommonInfraModule = CommonInfraModule = __decorate([
16
- (0, common_1.Module)({
17
- imports: [database_module_1.DBModule],
18
- providers: [],
19
- exports: [],
20
- })
27
+ exports.CommonInfraModule = CommonInfraModule = CommonInfraModule_1 = __decorate([
28
+ (0, common_1.Module)({})
21
29
  ], CommonInfraModule);
22
30
  //# sourceMappingURL=common-infra.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-infra.module.js","sourceRoot":"","sources":["../../src/common-infra/common-infra.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,gEAAsD;AAO/C,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;CAAG,CAAA;AAApB,8CAAiB;4BAAjB,iBAAiB;IAL7B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,0BAAQ,CAAC;QACnB,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,EAAE;KACZ,CAAC;GACW,iBAAiB,CAAG","sourcesContent":["import { Module } from \"@nestjs/common\";\nimport { DBModule } from \"./database/database.module\";\n\n@Module({\n imports: [DBModule],\n providers: [],\n exports: [],\n})\nexport class CommonInfraModule {}\n"]}
1
+ {"version":3,"file":"common-infra.module.js","sourceRoot":"","sources":["../../src/common-infra/common-infra.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;AACvD,2CAA8C;AAC9C,gEAAsD;AAG/C,IAAM,iBAAiB,yBAAvB,MAAM,iBAAiB;IAC5B,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,MAAM,EAAE,mBAAiB;YACzB,OAAO,EAAE;gBACP,qBAAY;gBACZ,0BAAQ;aACT;YACD,OAAO,EAAE,CAAC,0BAAQ,CAAC;SACpB,CAAC;IACJ,CAAC;CACF,CAAA;AAXY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,iBAAiB,CAW7B","sourcesContent":["import { DynamicModule, Module } from \"@nestjs/common\";\nimport { ConfigModule } from \"@nestjs/config\";\nimport { DBModule } from \"./database/database.module\";\n\n@Module({})\nexport class CommonInfraModule {\n static forRoot(): DynamicModule {\n return {\n module: CommonInfraModule,\n imports: [\n ConfigModule, // assumes consumer app config\n DBModule,\n ],\n exports: [DBModule],\n };\n }\n}\n"]}
@@ -1,2 +1,4 @@
1
+ import { DynamicModule } from "@nestjs/common";
1
2
  export declare class DBModule {
3
+ static forRoot(): DynamicModule;
2
4
  }
@@ -5,24 +5,30 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  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;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var DBModule_1;
8
9
  Object.defineProperty(exports, "__esModule", { value: true });
9
10
  exports.DBModule = void 0;
10
11
  const common_1 = require("@nestjs/common");
11
- const typeorm_1 = require("@nestjs/typeorm");
12
12
  const config_1 = require("@nestjs/config");
13
+ const typeorm_1 = require("@nestjs/typeorm");
13
14
  const typeorm_config_1 = require("./typeorm.config");
14
- let DBModule = class DBModule {
15
+ let DBModule = DBModule_1 = class DBModule {
16
+ static forRoot() {
17
+ return {
18
+ module: DBModule_1,
19
+ imports: [
20
+ typeorm_1.TypeOrmModule.forRootAsync({
21
+ imports: [config_1.ConfigModule],
22
+ inject: [config_1.ConfigService],
23
+ useFactory: (configService) => (0, typeorm_config_1.typeOrmConfig)(configService),
24
+ }),
25
+ ],
26
+ exports: [typeorm_1.TypeOrmModule],
27
+ };
28
+ }
15
29
  };
16
30
  exports.DBModule = DBModule;
17
- exports.DBModule = DBModule = __decorate([
18
- (0, common_1.Module)({
19
- imports: [
20
- typeorm_1.TypeOrmModule.forRootAsync({
21
- imports: [config_1.ConfigModule],
22
- inject: [config_1.ConfigService],
23
- useFactory: typeorm_config_1.typeOrmConfig,
24
- }),
25
- ],
26
- })
31
+ exports.DBModule = DBModule = DBModule_1 = __decorate([
32
+ (0, common_1.Module)({})
27
33
  ], DBModule);
28
34
  //# sourceMappingURL=database.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.module.js","sourceRoot":"","sources":["../../../src/common-infra/database/database.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,6CAAgD;AAChD,2CAA6D;AAC7D,qDAAiD;AAW1C,IAAM,QAAQ,GAAd,MAAM,QAAQ;CAAG,CAAA;AAAX,4BAAQ;mBAAR,QAAQ;IATpB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,YAAY,CAAC;gBACzB,OAAO,EAAE,CAAC,qBAAY,CAAC;gBACvB,MAAM,EAAE,CAAC,sBAAa,CAAC;gBACvB,UAAU,EAAE,8BAAa;aAC1B,CAAC;SACH;KACF,CAAC;GACW,QAAQ,CAAG","sourcesContent":["import { Module } from \"@nestjs/common\";\nimport { TypeOrmModule } from \"@nestjs/typeorm\";\nimport { ConfigModule, ConfigService } from \"@nestjs/config\";\nimport { typeOrmConfig } from \"./typeorm.config\";\n\n@Module({\n imports: [\n TypeOrmModule.forRootAsync({\n imports: [ConfigModule],\n inject: [ConfigService],\n useFactory: typeOrmConfig,\n }),\n ],\n})\nexport class DBModule {}\n"]}
1
+ {"version":3,"file":"database.module.js","sourceRoot":"","sources":["../../../src/common-infra/database/database.module.ts"],"names":[],"mappings":";;;;;;;;;;AACA,2CAAuD;AACvD,2CAA6D;AAC7D,6CAAgD;AAChD,qDAAiD;AAG1C,IAAM,QAAQ,gBAAd,MAAM,QAAQ;IACnB,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,MAAM,EAAE,UAAQ;YAChB,OAAO,EAAE;gBACP,uBAAa,CAAC,YAAY,CAAC;oBACzB,OAAO,EAAE,CAAC,qBAAY,CAAC;oBACvB,MAAM,EAAE,CAAC,sBAAa,CAAC;oBACvB,UAAU,EAAE,CAAC,aAA4B,EAAE,EAAE,CAC3C,IAAA,8BAAa,EAAC,aAAa,CAAC;iBAC/B,CAAC;aACH;YACD,OAAO,EAAE,CAAC,uBAAa,CAAC;SACzB,CAAC;IACJ,CAAC;CACF,CAAA;AAfY,4BAAQ;mBAAR,QAAQ;IADpB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,QAAQ,CAepB","sourcesContent":["// src/database/database.module.ts\nimport { DynamicModule, Module } from \"@nestjs/common\";\nimport { ConfigModule, ConfigService } from \"@nestjs/config\";\nimport { TypeOrmModule } from \"@nestjs/typeorm\";\nimport { typeOrmConfig } from \"./typeorm.config\";\n\n@Module({})\nexport class DBModule {\n static forRoot(): DynamicModule {\n return {\n module: DBModule,\n imports: [\n TypeOrmModule.forRootAsync({\n imports: [ConfigModule],\n inject: [ConfigService],\n useFactory: (configService: ConfigService) =>\n typeOrmConfig(configService),\n }),\n ],\n exports: [TypeOrmModule],\n };\n }\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export * from "./common-infra.module";
2
+ export * from "./database/typeorm.config";
@@ -14,9 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./async-storage.middleware"), exports);
18
- __exportStar(require("./platform-auth.middleware"), exports);
19
- __exportStar(require("./utils/http-response.formatter"), exports);
20
- __exportStar(require("./interceptor/response-handler"), exports);
21
- __exportStar(require("./filter/global-exeception.filter"), exports);
17
+ __exportStar(require("./common-infra.module"), exports);
18
+ __exportStar(require("./database/typeorm.config"), exports);
22
19
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common-infra/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,4DAA0C","sourcesContent":["export * from \"./common-infra.module\";\nexport * from \"./database/typeorm.config\";\n"]}
@@ -1,2 +1,4 @@
1
+ import { DynamicModule } from "@nestjs/common";
1
2
  export declare class CoreCommonModule {
3
+ static forRoot(): DynamicModule;
2
4
  }
@@ -5,19 +5,27 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  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;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var CoreCommonModule_1;
8
9
  Object.defineProperty(exports, "__esModule", { value: true });
9
10
  exports.CoreCommonModule = void 0;
10
11
  const common_1 = require("@nestjs/common");
11
12
  const logger_module_1 = require("./logger/logger.module");
12
- const logger_provider_1 = require("./logger/logger.provider");
13
- let CoreCommonModule = class CoreCommonModule {
13
+ let CoreCommonModule = CoreCommonModule_1 = class CoreCommonModule {
14
+ static forRoot() {
15
+ return {
16
+ module: CoreCommonModule_1,
17
+ imports: [
18
+ logger_module_1.LoggerModule.forRoot(),
19
+ ],
20
+ exports: [
21
+ logger_module_1.LoggerModule,
22
+ ],
23
+ };
24
+ }
14
25
  };
15
26
  exports.CoreCommonModule = CoreCommonModule;
16
- exports.CoreCommonModule = CoreCommonModule = __decorate([
17
- (0, common_1.Module)({
18
- imports: [logger_module_1.LoggerModule],
19
- providers: [logger_provider_1.LoggerProvider],
20
- exports: [],
21
- })
27
+ exports.CoreCommonModule = CoreCommonModule = CoreCommonModule_1 = __decorate([
28
+ (0, common_1.Global)(),
29
+ (0, common_1.Module)({})
22
30
  ], CoreCommonModule);
23
31
  //# sourceMappingURL=core-common.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core-common.module.js","sourceRoot":"","sources":["../../src/core-common/core-common.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,0DAAsD;AACtD,8DAA0D;AAOnD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,4CAAgB;2BAAhB,gBAAgB;IAL5B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,4BAAY,CAAC;QACvB,SAAS,EAAE,CAAC,gCAAc,CAAC;QAC3B,OAAO,EAAE,EAAE;KACZ,CAAC;GACW,gBAAgB,CAAG","sourcesContent":["import { Module } from \"@nestjs/common\";\nimport { LoggerModule } from \"./logger/logger.module\";\nimport { LoggerProvider } from \"./logger/logger.provider\";\n\n@Module({\n imports: [LoggerModule],\n providers: [LoggerProvider],\n exports: [],\n})\nexport class CoreCommonModule {}\n"]}
1
+ {"version":3,"file":"core-common.module.js","sourceRoot":"","sources":["../../src/core-common/core-common.module.ts"],"names":[],"mappings":";;;;;;;;;;AACA,2CAA+D;AAC/D,0DAAsD;AAI/C,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAC3B,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,MAAM,EAAE,kBAAgB;YACxB,OAAO,EAAE;gBACP,4BAAY,CAAC,OAAO,EAAE;aACvB;YACD,OAAO,EAAE;gBACP,4BAAY;aACb;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAZY,4CAAgB;2BAAhB,gBAAgB;IAF5B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gBAAgB,CAY5B","sourcesContent":["// src/core-common.module.ts\nimport { DynamicModule, Global, Module } from \"@nestjs/common\";\nimport { LoggerModule } from \"./logger/logger.module\";\n\n@Global()\n@Module({})\nexport class CoreCommonModule {\n static forRoot(): DynamicModule {\n return {\n module: CoreCommonModule,\n imports: [\n LoggerModule.forRoot(),\n ],\n exports: [\n LoggerModule,\n ],\n };\n }\n}\n"]}
@@ -1,5 +1,12 @@
1
- export * from '@core-common/constant/app.constant';
2
- export * from '@core-common/error/custom-error/already-exists.error';
3
- export * from '@core-common/error/custom-error/bad-request.error';
4
- export * from '@core-common/error/custom-error/forbidden.error';
5
- export * from '@core-common/error/custom-error/internal-server.error';
1
+ export * from './constant/app.constant';
2
+ export * from './error/custom-error/already-exists.error';
3
+ export * from './error/custom-error/not-found.error';
4
+ export * from './error/custom-error/validation.error';
5
+ export * from './error/custom-error/internal-server.error';
6
+ export * from './error/custom-error/unauthorized.error';
7
+ export * from './error/custom-error/service-unavailable.error';
8
+ export * from './error/generic.error';
9
+ export * from './result-model/result';
10
+ export * from './response-model/generic-error-response.model';
11
+ export * from './response-model/generic-success-response.model';
12
+ export * from './core-common.module';
@@ -16,7 +16,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./constant/app.constant"), exports);
18
18
  __exportStar(require("./error/custom-error/already-exists.error"), exports);
19
- __exportStar(require("./error/custom-error/bad-request.error"), exports);
20
- __exportStar(require("./error/custom-error/forbidden.error"), exports);
19
+ __exportStar(require("./error/custom-error/not-found.error"), exports);
20
+ __exportStar(require("./error/custom-error/validation.error"), exports);
21
21
  __exportStar(require("./error/custom-error/internal-server.error"), exports);
22
+ __exportStar(require("./error/custom-error/unauthorized.error"), exports);
23
+ __exportStar(require("./error/custom-error/service-unavailable.error"), exports);
24
+ __exportStar(require("./error/generic.error"), exports);
25
+ __exportStar(require("./result-model/result"), exports);
26
+ __exportStar(require("./response-model/generic-error-response.model"), exports);
27
+ __exportStar(require("./response-model/generic-success-response.model"), exports);
28
+ __exportStar(require("./core-common.module"), exports);
22
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core-common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAkD;AAClD,4EAAoE;AACpE,yEAAiE;AACjE,uEAA+D;AAC/D,6EAAqE","sourcesContent":["export * from '@core-common/constant/app.constant'\nexport * from '@core-common/error/custom-error/already-exists.error'\nexport * from '@core-common/error/custom-error/bad-request.error'\nexport * from '@core-common/error/custom-error/forbidden.error'\nexport * from '@core-common/error/custom-error/internal-server.error'\n\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core-common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,4EAAyD;AACzD,uEAAoD;AACpD,wEAAqD;AACrD,6EAA0D;AAC1D,0EAAuD;AACvD,iFAA8D;AAC9D,wDAAqC;AACrC,wDAAqC;AACrC,gFAA6D;AAC7D,kFAA+D;AAE/D,uDAAoC","sourcesContent":["export * from './constant/app.constant'\nexport * from './error/custom-error/already-exists.error'\nexport * from './error/custom-error/not-found.error'\nexport * from './error/custom-error/validation.error'\nexport * from './error/custom-error/internal-server.error'\nexport * from './error/custom-error/unauthorized.error'\nexport * from './error/custom-error/service-unavailable.error'\nexport * from './error/generic.error'\nexport * from './result-model/result'\nexport * from './response-model/generic-error-response.model'\nexport * from './response-model/generic-success-response.model'\n\nexport * from './core-common.module'"]}
@@ -0,0 +1,7 @@
1
+ export interface LoggerModuleOptions {
2
+ level?: string;
3
+ deploymentEnv?: string;
4
+ serviceVersion?: string;
5
+ otelAgentHost?: string;
6
+ overrideConsole?: boolean;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=logger.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.interface.js","sourceRoot":"","sources":["../../../src/core-common/logger/logger.interface.ts"],"names":[],"mappings":"","sourcesContent":["// src/logger/logger.options.ts\nexport interface LoggerModuleOptions {\n level?: string;\n deploymentEnv?: string;\n serviceVersion?: string;\n otelAgentHost?: string;\n overrideConsole?: boolean;\n}"]}
@@ -1,2 +1,6 @@
1
+ import { DynamicModule } from "@nestjs/common";
2
+ import { LoggerModuleOptions } from "./logger.interface";
3
+ export declare const LOGGER_OPTIONS: unique symbol;
1
4
  export declare class LoggerModule {
5
+ static forRoot(options?: LoggerModuleOptions): DynamicModule;
2
6
  }
@@ -5,17 +5,29 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  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;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var LoggerModule_1;
8
9
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.LoggerModule = void 0;
10
+ exports.LoggerModule = exports.LOGGER_OPTIONS = void 0;
10
11
  const common_1 = require("@nestjs/common");
11
- const logger_provider_1 = require("./logger.provider");
12
- let LoggerModule = class LoggerModule {
12
+ const logger_service_1 = require("./logger.service");
13
+ exports.LOGGER_OPTIONS = Symbol("LOGGER_OPTIONS");
14
+ let LoggerModule = LoggerModule_1 = class LoggerModule {
15
+ static forRoot(options = {}) {
16
+ return {
17
+ module: LoggerModule_1,
18
+ providers: [
19
+ logger_service_1.LoggerService,
20
+ {
21
+ provide: exports.LOGGER_OPTIONS,
22
+ useValue: options,
23
+ },
24
+ ],
25
+ exports: [logger_service_1.LoggerService],
26
+ };
27
+ }
13
28
  };
14
29
  exports.LoggerModule = LoggerModule;
15
- exports.LoggerModule = LoggerModule = __decorate([
16
- (0, common_1.Module)({
17
- providers: [logger_provider_1.LoggerProvider],
18
- exports: [logger_provider_1.LoggerProvider],
19
- })
30
+ exports.LoggerModule = LoggerModule = LoggerModule_1 = __decorate([
31
+ (0, common_1.Module)({})
20
32
  ], LoggerModule);
21
33
  //# sourceMappingURL=logger.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.module.js","sourceRoot":"","sources":["../../../src/core-common/logger/logger.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,uDAAmD;AAM5C,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,oCAAY;uBAAZ,YAAY;IAJxB,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,gCAAc,CAAC;QAC3B,OAAO,EAAE,CAAC,gCAAc,CAAC;KAC1B,CAAC;GACW,YAAY,CAAG","sourcesContent":["import { Module } from \"@nestjs/common\";\nimport { LoggerProvider } from \"./logger.provider\";\n\n@Module({\n providers: [LoggerProvider],\n exports: [LoggerProvider],\n})\nexport class LoggerModule {}\n"]}
1
+ {"version":3,"file":"logger.module.js","sourceRoot":"","sources":["../../../src/core-common/logger/logger.module.ts"],"names":[],"mappings":";;;;;;;;;;AACA,2CAAuD;AACvD,qDAAiD;AAGpC,QAAA,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAGhD,IAAM,YAAY,oBAAlB,MAAM,YAAY;IACvB,MAAM,CAAC,OAAO,CAAC,UAA+B,EAAE;QAC9C,OAAO;YACL,MAAM,EAAE,cAAY;YACpB,SAAS,EAAE;gBACT,8BAAa;gBACb;oBACE,OAAO,EAAE,sBAAc;oBACvB,QAAQ,EAAE,OAAO;iBAClB;aACF;YACD,OAAO,EAAE,CAAC,8BAAa,CAAC;SACzB,CAAC;IACJ,CAAC;CACF,CAAA;AAdY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,YAAY,CAcxB","sourcesContent":["// src/logger/logger.module.ts\nimport { DynamicModule, Module } from \"@nestjs/common\";\nimport { LoggerService } from \"./logger.service\";\nimport { LoggerModuleOptions } from \"./logger.interface\";\n\nexport const LOGGER_OPTIONS = Symbol(\"LOGGER_OPTIONS\");\n\n@Module({})\nexport class LoggerModule {\n static forRoot(options: LoggerModuleOptions = {}): DynamicModule {\n return {\n module: LoggerModule,\n providers: [\n LoggerService,\n {\n provide: LOGGER_OPTIONS,\n useValue: options,\n },\n ],\n exports: [LoggerService],\n };\n }\n}\n"]}
@@ -122,4 +122,4 @@ class LoggerService {
122
122
  }
123
123
  }
124
124
  exports.LoggerService = LoggerService;
125
- //# sourceMappingURL=index.js.map
125
+ //# sourceMappingURL=logger.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../../src/core-common/logger/logger.service.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA0C;AAI1C,IAAK,YAKJ;AALD,WAAK,YAAY;IACf,oCAAoB,CAAA;IACpB,+BAAe,CAAA;IACf,mCAAmB,CAAA;IACnB,+BAAe,CAAA;AACjB,CAAC,EALI,YAAY,KAAZ,YAAY,QAKhB;AAeD,MAAa,aAAa;IACP,MAAM,CAAS;IACf,aAAa,CAAS;IACtB,gBAAgB,CAAS;IACzB,aAAa,CAAS;IAEvC,YAAY,WAAmB,OAAO;QACpC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,UAAU,CAAC;QAClE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,UAAU,CAAC;QAC/D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAID,GAAG,CAAC,OAAe,EAAE,QAAsB;QACzC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,QAAsB;QAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,QAAsB;QAC1C,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,QAAsB,EAAE,KAAa;QAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IAIO,KAAK,CACX,KAAmB,EACnB,QAAsB,EACtB,OAAe,EACf,WAAwB,EAAE,EAC1B,KAAa;QAEb,MAAM,IAAI,GAAG;YACX,YAAY,EAAE,QAAQ;YACtB,GAAG,QAAQ;YACX,GAAG,CAAC,KAAK,IAAI;gBACX,YAAY,EAAE,KAAK,CAAC,OAAO;gBAC3B,UAAU,EAAE,KAAK,CAAC,KAAK;aACxB,CAAC;SACH,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAEO,YAAY,CAAC,KAAa;QAChC,OAAO,iBAAO,CAAC,YAAY,CAAC;YAC1B,KAAK;YACL,MAAM,EAAE,iBAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM;YACjC,MAAM,EAAE,iBAAO,CAAC,MAAM,CAAC,OAAO,CAC5B,iBAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,EAC3D,iBAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAC/D,IAAI,CAAC,SAAS,CAAC;gBACb,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;gBACpC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;gBACvC,SAAS,EAAE,SAAS;gBACpB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aACxB,CAAC,CACH,CACF;YACD,UAAU,EAAE,CAAC,IAAI,iBAAO,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;SAC/C,CAAC,CAAC;IACL,CAAC;IAIO,eAAe,CAAC,KAAa;QACnC,OAAO;YACL,uBAAuB,EAAE,IAAI,CAAC,gBAAgB;YAC9C,wBAAwB,EAAE,IAAI,CAAC,aAAa;YAC5C,iBAAiB,EAAE,IAAI,CAAC,aAAa;YACrC,mBAAmB,EAAE,KAAK;SAC3B,CAAC;IACJ,CAAC;IAIO,SAAS,CAAC,IAA6B;QAC7C,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CACzB,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,MAAM,CACxD,CACF,CAAC;IACJ,CAAC;IAEO,aAAa,CAAC,KAAc;QAClC,IAAI,CAAC;YACH,OAAO,OAAO,KAAK,KAAK,QAAQ;gBAC9B,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACrD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,yBAAyB,CAAC;QACnC,CAAC;IACH,CAAC;IAEO,gBAAgB;QACtB,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAS,EAAE,KAAU,EAAE,EAAE;YAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAChD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;oBAAE,OAAO,YAAY,CAAC;gBACzC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;IACJ,CAAC;IAIO,aAAa,CAAC,OAAe;QACnC,MAAM,QAAQ,GAAG;YACf;gBACE,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,oDAAoD;gBAC3D,OAAO,EAAE,EAAE;aACZ;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,qCAAqC;gBAC5C,OAAO,EAAE,EAAE;aACZ;YACD,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,uBAAuB,EAAE,OAAO,EAAE,CAAC,EAAE;YAC/D,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,EAAE;SAC/D,CAAC;QAEF,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE;YACvD,OAAO,GAAG,CAAC,OAAO,CAChB,KAAK,EACL,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,gBAAgB,IAAI,GAAG,CACrD,CAAC;QACJ,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC;IAIO,eAAe;QACrB,MAAM,OAAO,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAAE,OAAO;YACjD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;CACF;AAtJD,sCAsJC","sourcesContent":["import winston, { Logger } from \"winston\";\n\n/* ---------------------------------- Types --------------------------------- */\n\nenum SeverityText {\n INFO = \"Information\",\n DEBUG = \"Debug\",\n WARNING = \"Warning\",\n ERROR = \"Error\",\n}\n\ntype LogMetadata = {\n ClassName?: string;\n MethodName?: string;\n};\n\nexport type OrgContext = {\n orgId?: string;\n orgFid?: string;\n userId?: string;\n};\n\n/* --------------------------------- Service -------------------------------- */\n\nexport class LoggerService {\n private readonly logger: Logger;\n private readonly deploymentEnv: string;\n private readonly hostImageVersion: string;\n private readonly otelAgentHost: string;\n\n constructor(logLevel: string = \"debug\") {\n this.deploymentEnv = \"rls-dev\";\n this.hostImageVersion = process.env.SERVICE_VERSION ?? \"202501.1\";\n this.otelAgentHost = process.env.OTEL_AGENT_HOST ?? \"10.0.0.1\";\n this.logger = this.createLogger(logLevel);\n this.overrideConsole();\n }\n\n /* ------------------------------- Public API ------------------------------- */\n\n log(message: string, metadata?: LogMetadata) {\n this.write(\"info\", SeverityText.INFO, message, metadata);\n }\n\n debug(message: string, metadata?: LogMetadata) {\n this.write(\"debug\", SeverityText.DEBUG, message, metadata);\n }\n\n warn(message: string, metadata?: LogMetadata) {\n this.write(\"warn\", SeverityText.WARNING, message, metadata);\n }\n\n error(message: string, metadata?: LogMetadata, error?: Error) {\n this.write(\"error\", SeverityText.ERROR, message, metadata, error);\n }\n\n /* ------------------------------ Logger Core ------------------------------ */\n\n private write(\n level: keyof Logger,\n severity: SeverityText,\n message: string,\n metadata: LogMetadata = {},\n error?: Error,\n ) {\n const body = {\n SeverityText: severity,\n ...metadata,\n ...(error && {\n ErrorMessage: error.message,\n StackTrace: error.stack,\n }),\n };\n\n this.logger[level](this.redactSecrets(message), body);\n }\n\n private createLogger(level: string): Logger {\n return winston.createLogger({\n level,\n levels: winston.config.npm.levels,\n format: winston.format.combine(\n winston.format.timestamp({ format: \"YYYY-MM-DD HH:mm:ss\" }),\n winston.format.printf(({ level, message, timestamp, ...meta }) =>\n JSON.stringify({\n message: this.safeStringify(message),\n attributes: this.buildAttributes(level),\n timestamp: timestamp,\n ...this.cleanMeta(meta),\n }),\n ),\n ),\n transports: [new winston.transports.Console()],\n });\n }\n\n /* ------------------------------- Context -------------------------------- */\n\n private buildAttributes(level: string) {\n return {\n \"service.image.version\": this.hostImageVersion,\n \"deployment.environment\": this.deploymentEnv,\n \"otel.agent.host\": this.otelAgentHost,\n \"service.log.level\": level,\n };\n }\n\n /* ------------------------------- Helpers -------------------------------- */\n\n private cleanMeta(meta: Record<string, unknown>) {\n return Object.fromEntries(\n Object.entries(meta).filter(\n ([_, value]) => value !== undefined && value !== \"None\",\n ),\n );\n }\n\n private safeStringify(input: unknown): string {\n try {\n return typeof input === \"string\"\n ? input\n : JSON.stringify(input, this.circularReplacer());\n } catch {\n return \"[Unserializable Object]\";\n }\n }\n\n private circularReplacer() {\n const seen = new WeakSet();\n return (_: string, value: any) => {\n if (typeof value === \"object\" && value !== null) {\n if (seen.has(value)) return \"[Circular]\";\n seen.add(value);\n }\n return value;\n };\n }\n\n /* ----------------------------- Redaction -------------------------------- */\n\n private redactSecrets(message: string): string {\n const patterns = [\n {\n name: \"JWT\",\n regex: /eyJ[a-zA-Z0-9-_]+\\.[a-zA-Z0-9-_]+\\.[a-zA-Z0-9-_]+/g,\n visible: 10,\n },\n {\n name: \"BEARER\",\n regex: /Bearer\\s+eyJ[A-Za-z0-9\\-._~+/]+=*/gi,\n visible: 15,\n },\n { name: \"API_KEY\", regex: /\\b[A-Za-z0-9]{32,}\\b/g, visible: 8 },\n { name: \"AWS_SECRET\", regex: /AKIA[0-9A-Z]{16}/g, visible: 8 },\n ];\n\n return patterns.reduce((msg, { regex, visible, name }) => {\n return msg.replace(\n regex,\n (m) => `${m.slice(0, visible)}...[REDACTED_${name}]`,\n );\n }, message);\n }\n\n /* --------------------------- Console Override ---------------------------- */\n\n private overrideConsole() {\n const blocked = [\"NodeSDK\", \"AuthToken\"];\n console.log = (...args: unknown[]) => {\n const msg = args.map(String).join(\" \");\n if (blocked.some((k) => msg.includes(k))) return;\n this.log(msg);\n };\n }\n}\n"]}