@venturialstd/slack 0.1.24 → 0.1.26

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 (172) hide show
  1. package/dist/core/src/auth/auth.module.d.ts +2 -0
  2. package/dist/core/src/auth/auth.module.js +26 -0
  3. package/dist/core/src/auth/auth.module.js.map +1 -0
  4. package/dist/core/src/auth/constants/role.constant.d.ts +5 -0
  5. package/dist/core/src/auth/constants/role.constant.js +10 -0
  6. package/dist/core/src/auth/constants/role.constant.js.map +1 -0
  7. package/dist/core/src/auth/constants/strategy.constant.d.ts +5 -0
  8. package/dist/core/src/auth/constants/strategy.constant.js +9 -0
  9. package/dist/core/src/auth/constants/strategy.constant.js.map +1 -0
  10. package/dist/core/src/auth/controllers/auth.controller.d.ts +5 -0
  11. package/dist/core/src/auth/controllers/auth.controller.js +40 -0
  12. package/dist/core/src/auth/controllers/auth.controller.js.map +1 -0
  13. package/dist/core/src/auth/decorators/role.decorator.d.ts +4 -0
  14. package/dist/core/src/auth/decorators/role.decorator.js +8 -0
  15. package/dist/core/src/auth/decorators/role.decorator.js.map +1 -0
  16. package/dist/core/src/auth/dtos/auth-login-input.dto.d.ts +4 -0
  17. package/dist/core/src/auth/dtos/auth-login-input.dto.js +33 -0
  18. package/dist/core/src/auth/dtos/auth-login-input.dto.js.map +1 -0
  19. package/dist/core/src/auth/dtos/auth-refresh-token-input.dto.d.ts +3 -0
  20. package/dist/core/src/auth/dtos/auth-refresh-token-input.dto.js +24 -0
  21. package/dist/core/src/auth/dtos/auth-refresh-token-input.dto.js.map +1 -0
  22. package/dist/core/src/auth/dtos/auth-register-input.dto.d.ts +9 -0
  23. package/dist/core/src/auth/dtos/auth-register-input.dto.js +54 -0
  24. package/dist/core/src/auth/dtos/auth-register-input.dto.js.map +1 -0
  25. package/dist/core/src/auth/dtos/auth-register-output.dto.d.ts +11 -0
  26. package/dist/core/src/auth/dtos/auth-register-output.dto.js +67 -0
  27. package/dist/core/src/auth/dtos/auth-register-output.dto.js.map +1 -0
  28. package/dist/core/src/auth/dtos/auth-token-output.dto.d.ts +13 -0
  29. package/dist/core/src/auth/dtos/auth-token-output.dto.js +52 -0
  30. package/dist/core/src/auth/dtos/auth-token-output.dto.js.map +1 -0
  31. package/dist/core/src/auth/guards/auth0.guard.d.ts +8 -0
  32. package/dist/core/src/auth/guards/auth0.guard.js +28 -0
  33. package/dist/core/src/auth/guards/auth0.guard.js.map +1 -0
  34. package/dist/core/src/auth/guards/firebase.guard.d.ts +8 -0
  35. package/dist/core/src/auth/guards/firebase.guard.js +28 -0
  36. package/dist/core/src/auth/guards/firebase.guard.js.map +1 -0
  37. package/dist/core/src/auth/guards/jwt-auth.guard.d.ts +8 -0
  38. package/dist/core/src/auth/guards/jwt-auth.guard.js +28 -0
  39. package/dist/core/src/auth/guards/jwt-auth.guard.js.map +1 -0
  40. package/dist/core/src/auth/guards/jwt-refresh.guard.d.ts +8 -0
  41. package/dist/core/src/auth/guards/jwt-refresh.guard.js +28 -0
  42. package/dist/core/src/auth/guards/jwt-refresh.guard.js.map +1 -0
  43. package/dist/core/src/auth/guards/jwt.guard.d.ts +8 -0
  44. package/dist/core/src/auth/guards/jwt.guard.js +28 -0
  45. package/dist/core/src/auth/guards/jwt.guard.js.map +1 -0
  46. package/dist/core/src/auth/guards/local-auth.guard.d.ts +4 -0
  47. package/dist/core/src/auth/guards/local-auth.guard.js +19 -0
  48. package/dist/core/src/auth/guards/local-auth.guard.js.map +1 -0
  49. package/dist/core/src/auth/guards/roles.guard.d.ts +7 -0
  50. package/dist/core/src/auth/guards/roles.guard.js +41 -0
  51. package/dist/core/src/auth/guards/roles.guard.js.map +1 -0
  52. package/dist/core/src/auth/services/auth.service.d.ts +7 -0
  53. package/dist/core/src/auth/services/auth.service.js +32 -0
  54. package/dist/core/src/auth/services/auth.service.js.map +1 -0
  55. package/dist/core/src/auth/types/auth.type.d.ts +4 -0
  56. package/dist/core/src/auth/types/auth.type.js +3 -0
  57. package/dist/core/src/auth/types/auth.type.js.map +1 -0
  58. package/dist/core/src/index.d.ts +44 -0
  59. package/dist/core/src/index.js +61 -0
  60. package/dist/core/src/index.js.map +1 -0
  61. package/dist/core/src/settings/constants/settings.constant.d.ts +11 -0
  62. package/dist/core/src/settings/constants/settings.constant.js +16 -0
  63. package/dist/core/src/settings/constants/settings.constant.js.map +1 -0
  64. package/dist/core/src/settings/controllers/admin/settings.admin.controller.d.ts +11 -0
  65. package/dist/core/src/settings/controllers/admin/settings.admin.controller.js +74 -0
  66. package/dist/core/src/settings/controllers/admin/settings.admin.controller.js.map +1 -0
  67. package/dist/core/src/settings/entities/settings.entity.d.ts +16 -0
  68. package/dist/core/src/settings/entities/settings.entity.js +116 -0
  69. package/dist/core/src/settings/entities/settings.entity.js.map +1 -0
  70. package/dist/core/src/settings/services/settings.service.d.ts +12 -0
  71. package/dist/core/src/settings/services/settings.service.js +150 -0
  72. package/dist/core/src/settings/services/settings.service.js.map +1 -0
  73. package/dist/core/src/settings/settings.module.d.ts +2 -0
  74. package/dist/core/src/settings/settings.module.js +26 -0
  75. package/dist/core/src/settings/settings.module.js.map +1 -0
  76. package/dist/core/src/shared/acl/action.constant.d.ts +8 -0
  77. package/dist/core/src/shared/acl/action.constant.js +13 -0
  78. package/dist/core/src/shared/acl/action.constant.js.map +1 -0
  79. package/dist/core/src/shared/acl/actor.constant.d.ts +4 -0
  80. package/dist/core/src/shared/acl/actor.constant.js +3 -0
  81. package/dist/core/src/shared/acl/actor.constant.js.map +1 -0
  82. package/dist/core/src/shared/configs/configuration.d.ts +2 -0
  83. package/dist/core/src/shared/configs/configuration.js +23 -0
  84. package/dist/core/src/shared/configs/configuration.js.map +1 -0
  85. package/dist/core/src/shared/configs/module-options.d.ts +2 -0
  86. package/dist/core/src/shared/configs/module-options.js +65 -0
  87. package/dist/core/src/shared/configs/module-options.js.map +1 -0
  88. package/dist/core/src/shared/constants/cache.d.ts +6 -0
  89. package/dist/core/src/shared/constants/cache.js +11 -0
  90. package/dist/core/src/shared/constants/cache.js.map +1 -0
  91. package/dist/core/src/shared/constants/common.d.ts +6 -0
  92. package/dist/core/src/shared/constants/common.js +7 -0
  93. package/dist/core/src/shared/constants/common.js.map +1 -0
  94. package/dist/core/src/shared/constants/crud.d.ts +82 -0
  95. package/dist/core/src/shared/constants/crud.js +132 -0
  96. package/dist/core/src/shared/constants/crud.js.map +1 -0
  97. package/dist/core/src/shared/constants/index.d.ts +3 -0
  98. package/dist/core/src/shared/constants/index.js +20 -0
  99. package/dist/core/src/shared/constants/index.js.map +1 -0
  100. package/dist/core/src/shared/dtos/base-api-response.dto.d.ts +21 -0
  101. package/dist/core/src/shared/dtos/base-api-response.dto.js +88 -0
  102. package/dist/core/src/shared/dtos/base-api-response.dto.js.map +1 -0
  103. package/dist/core/src/shared/dtos/empty.dto.d.ts +3 -0
  104. package/dist/core/src/shared/dtos/empty.dto.js +25 -0
  105. package/dist/core/src/shared/dtos/empty.dto.js.map +1 -0
  106. package/dist/core/src/shared/dtos/pagination-params.dto.d.ts +6 -0
  107. package/dist/core/src/shared/dtos/pagination-params.dto.js +61 -0
  108. package/dist/core/src/shared/dtos/pagination-params.dto.js.map +1 -0
  109. package/dist/core/src/shared/exceptions/base-api.exception.d.ts +6 -0
  110. package/dist/core/src/shared/exceptions/base-api.exception.js +16 -0
  111. package/dist/core/src/shared/exceptions/base-api.exception.js.map +1 -0
  112. package/dist/core/src/shared/filters/all-exceptions.filter.d.ts +9 -0
  113. package/dist/core/src/shared/filters/all-exceptions.filter.js +91 -0
  114. package/dist/core/src/shared/filters/all-exceptions.filter.js.map +1 -0
  115. package/dist/core/src/shared/interceptors/logging.interceptor.d.ts +8 -0
  116. package/dist/core/src/shared/interceptors/logging.interceptor.js +52 -0
  117. package/dist/core/src/shared/interceptors/logging.interceptor.js.map +1 -0
  118. package/dist/core/src/shared/logger/logger.module.d.ts +2 -0
  119. package/dist/core/src/shared/logger/logger.module.js +22 -0
  120. package/dist/core/src/shared/logger/logger.module.js.map +1 -0
  121. package/dist/core/src/shared/logger/logger.service.d.ts +12 -0
  122. package/dist/core/src/shared/logger/logger.service.js +77 -0
  123. package/dist/core/src/shared/logger/logger.service.js.map +1 -0
  124. package/dist/core/src/shared/middlewares/request-id/request-id.middleware.d.ts +2 -0
  125. package/dist/core/src/shared/middlewares/request-id/request-id.middleware.js +15 -0
  126. package/dist/core/src/shared/middlewares/request-id/request-id.middleware.js.map +1 -0
  127. package/dist/core/src/shared/request-context/req-context.decorator.d.ts +1 -0
  128. package/dist/core/src/shared/request-context/req-context.decorator.js +10 -0
  129. package/dist/core/src/shared/request-context/req-context.decorator.js.map +1 -0
  130. package/dist/core/src/shared/request-context/request-context.dto.d.ts +12 -0
  131. package/dist/core/src/shared/request-context/request-context.dto.js +14 -0
  132. package/dist/core/src/shared/request-context/request-context.dto.js.map +1 -0
  133. package/dist/core/src/shared/request-context/util/index.d.ts +3 -0
  134. package/dist/core/src/shared/request-context/util/index.js +16 -0
  135. package/dist/core/src/shared/request-context/util/index.js.map +1 -0
  136. package/dist/core/src/shared/services/cache.service.d.ts +12 -0
  137. package/dist/core/src/shared/services/cache.service.js +64 -0
  138. package/dist/core/src/shared/services/cache.service.js.map +1 -0
  139. package/dist/core/src/shared/shared.module.d.ts +8 -0
  140. package/dist/core/src/shared/shared.module.js +81 -0
  141. package/dist/core/src/shared/shared.module.js.map +1 -0
  142. package/dist/core/src/shared/utils/phone.util.d.ts +5 -0
  143. package/dist/core/src/shared/utils/phone.util.js +17 -0
  144. package/dist/core/src/shared/utils/phone.util.js.map +1 -0
  145. package/dist/core/src/shared/utils/user.util.d.ts +4 -0
  146. package/dist/core/src/shared/utils/user.util.js +11 -0
  147. package/dist/core/src/shared/utils/user.util.js.map +1 -0
  148. package/dist/slack/clients/slack.client.d.ts +3 -3
  149. package/dist/slack/clients/slack.client.js +8 -10
  150. package/dist/slack/clients/slack.client.js.map +1 -1
  151. package/dist/slack/constants/slack.constants.d.ts +3 -0
  152. package/dist/slack/constants/slack.constants.js +7 -0
  153. package/dist/slack/constants/slack.constants.js.map +1 -0
  154. package/dist/slack/controllers/slack.webhook.controller.d.ts +2 -2
  155. package/dist/slack/controllers/slack.webhook.controller.js +3 -2
  156. package/dist/slack/controllers/slack.webhook.controller.js.map +1 -1
  157. package/dist/slack/index.d.ts +1 -0
  158. package/dist/slack/index.js +3 -1
  159. package/dist/slack/index.js.map +1 -1
  160. package/dist/slack/interfaces/slack-interface.d.ts +5 -5
  161. package/dist/slack/interfaces/slack-interface.js.map +1 -1
  162. package/dist/slack/services/slack-channel.service.d.ts +2 -2
  163. package/dist/slack/services/slack-channel.service.js +3 -5
  164. package/dist/slack/services/slack-channel.service.js.map +1 -1
  165. package/dist/slack/services/slack-message.service.d.ts +2 -2
  166. package/dist/slack/services/slack-message.service.js +3 -5
  167. package/dist/slack/services/slack-message.service.js.map +1 -1
  168. package/dist/slack/slack.module.d.ts +0 -3
  169. package/dist/slack/slack.module.js +10 -24
  170. package/dist/slack/slack.module.js.map +1 -1
  171. package/dist/slack/tsconfig.build.tsbuildinfo +1 -1
  172. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crud.js","sourceRoot":"","sources":["../../../../../../core/src/shared/constants/crud.ts"],"names":[],"mappings":"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","sourcesContent":["import { BaseRouteName, CrudRequest } from '@dataui/crud';\r\nimport { ParamsOptions } from '@dataui/crud-request';\r\nimport { ClassSerializerInterceptor, UseGuards } from '@nestjs/common';\r\nimport { ApiBearerAuth } from '@nestjs/swagger';\r\n\r\nimport { ROLE } from '../../auth/constants/role.constant';\r\nimport { Roles } from '../../auth/decorators/role.decorator';\r\nimport { Auth0Guard } from '../../auth/guards/auth0.guard';\r\nimport { RolesGuard } from '../../auth/guards/roles.guard';\r\n\r\nexport const BASE_DECORATORS = [UseGuards(Auth0Guard, RolesGuard), ApiBearerAuth()];\r\nexport const BASE_INTERCEPTORS = [ClassSerializerInterceptor];\r\nexport const BASE_ADMIN_DECORATORS = [...BASE_DECORATORS, Roles(ROLE.ADMIN)];\r\nexport const CRUD_ALL_ROUTES: BaseRouteName[] = [\r\n 'getManyBase',\r\n 'getOneBase',\r\n 'createOneBase',\r\n 'createManyBase',\r\n 'updateOneBase',\r\n 'replaceOneBase',\r\n 'deleteOneBase',\r\n];\r\n\r\nexport const CRUD_BASE_CONFIG = {\r\n params: {\r\n id: {\r\n field: 'id',\r\n type: 'uuid',\r\n primary: true,\r\n },\r\n } as ParamsOptions,\r\n routes: {\r\n getManyBase: {\r\n decorators: BASE_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n getOneBase: {\r\n decorators: BASE_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n createOneBase: {\r\n decorators: BASE_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n createManyBase: {\r\n decorators: BASE_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n updateOneBase: {\r\n decorators: BASE_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n replaceOneBase: {\r\n decorators: BASE_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n deleteOneBase: {\r\n decorators: BASE_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n returnDeleted: true,\r\n },\r\n },\r\n};\r\n\r\nexport const CRUD_ADMIN_BASE_CONFIG = {\r\n params: {\r\n id: {\r\n field: 'id',\r\n type: 'uuid',\r\n primary: true,\r\n },\r\n },\r\n routes: {\r\n getManyBase: {\r\n decorators: BASE_ADMIN_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n getOneBase: {\r\n decorators: BASE_ADMIN_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n createOneBase: {\r\n decorators: BASE_ADMIN_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n createManyBase: {\r\n decorators: BASE_ADMIN_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n updateOneBase: {\r\n decorators: BASE_ADMIN_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n replaceOneBase: {\r\n decorators: BASE_ADMIN_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n },\r\n deleteOneBase: {\r\n decorators: BASE_ADMIN_DECORATORS,\r\n interceptors: BASE_INTERCEPTORS,\r\n returnDeleted: true,\r\n },\r\n },\r\n};\r\n\r\nexport const cleanCrudRequest: CrudRequest = {\r\n parsed: {\r\n fields: [],\r\n paramsFilter: [],\r\n filter: [],\r\n or: [],\r\n join: [],\r\n sort: [],\r\n limit: 1000,\r\n offset: 0,\r\n authPersist: {},\r\n classTransformOptions: {},\r\n search: {},\r\n page: 0,\r\n cache: 0,\r\n includeDeleted: 0,\r\n },\r\n options: {\r\n params: CRUD_BASE_CONFIG.params as ParamsOptions,\r\n query: {\r\n filter: [],\r\n exclude: [],\r\n },\r\n routes: {\r\n exclude: [],\r\n only: CRUD_ALL_ROUTES,\r\n ...CRUD_BASE_CONFIG.routes,\r\n },\r\n },\r\n};\r\n"]}
@@ -0,0 +1,3 @@
1
+ export * from './cache';
2
+ export * from './common';
3
+ export * from './crud';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cache"), exports);
18
+ __exportStar(require("./common"), exports);
19
+ __exportStar(require("./crud"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../core/src/shared/constants/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,2CAAyB;AACzB,yCAAuB","sourcesContent":["export * from './cache';\r\nexport * from './common';\r\nexport * from './crud';\r\n"]}
@@ -0,0 +1,21 @@
1
+ import { Type } from '@nestjs/common';
2
+ export declare class BaseApiResponse<T> {
3
+ data: T;
4
+ meta: unknown;
5
+ }
6
+ type ApiPropertyType = string | Record<string, unknown> | Type<unknown> | [new (...args: unknown[]) => unknown] | undefined;
7
+ export declare function SwaggerBaseApiResponse<T extends ApiPropertyType>(type: T): typeof BaseApiResponse;
8
+ export declare class BaseApiErrorObject {
9
+ statusCode: number;
10
+ message: string;
11
+ localizedMessage: string;
12
+ errorName: string;
13
+ details: unknown;
14
+ path: string;
15
+ requestId: string;
16
+ timestamp: string;
17
+ }
18
+ export declare class BaseApiErrorResponse {
19
+ error: BaseApiErrorObject;
20
+ }
21
+ export {};
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BaseApiErrorResponse = exports.BaseApiErrorObject = exports.BaseApiResponse = void 0;
13
+ exports.SwaggerBaseApiResponse = SwaggerBaseApiResponse;
14
+ const swagger_1 = require("@nestjs/swagger");
15
+ class BaseApiResponse {
16
+ data;
17
+ meta;
18
+ }
19
+ exports.BaseApiResponse = BaseApiResponse;
20
+ __decorate([
21
+ (0, swagger_1.ApiProperty)({ type: Object }),
22
+ __metadata("design:type", Object)
23
+ ], BaseApiResponse.prototype, "meta", void 0);
24
+ function SwaggerBaseApiResponse(type) {
25
+ class ExtendedBaseApiResponse extends BaseApiResponse {
26
+ }
27
+ __decorate([
28
+ (0, swagger_1.ApiProperty)({ type }),
29
+ __metadata("design:type", Object)
30
+ ], ExtendedBaseApiResponse.prototype, "data", void 0);
31
+ const isAnArray = Array.isArray(type) ? ' [ ] ' : '';
32
+ Object.defineProperty(ExtendedBaseApiResponse, 'name', {
33
+ value: `SwaggerBaseApiResponseFor ${type} ${isAnArray}`,
34
+ });
35
+ return ExtendedBaseApiResponse;
36
+ }
37
+ class BaseApiErrorObject {
38
+ statusCode;
39
+ message;
40
+ localizedMessage;
41
+ errorName;
42
+ details;
43
+ path;
44
+ requestId;
45
+ timestamp;
46
+ }
47
+ exports.BaseApiErrorObject = BaseApiErrorObject;
48
+ __decorate([
49
+ (0, swagger_1.ApiProperty)({ type: Number }),
50
+ __metadata("design:type", Number)
51
+ ], BaseApiErrorObject.prototype, "statusCode", void 0);
52
+ __decorate([
53
+ (0, swagger_1.ApiProperty)({ type: String }),
54
+ __metadata("design:type", String)
55
+ ], BaseApiErrorObject.prototype, "message", void 0);
56
+ __decorate([
57
+ (0, swagger_1.ApiPropertyOptional)({ type: String }),
58
+ __metadata("design:type", String)
59
+ ], BaseApiErrorObject.prototype, "localizedMessage", void 0);
60
+ __decorate([
61
+ (0, swagger_1.ApiProperty)({ type: String }),
62
+ __metadata("design:type", String)
63
+ ], BaseApiErrorObject.prototype, "errorName", void 0);
64
+ __decorate([
65
+ (0, swagger_1.ApiProperty)({ type: Object }),
66
+ __metadata("design:type", Object)
67
+ ], BaseApiErrorObject.prototype, "details", void 0);
68
+ __decorate([
69
+ (0, swagger_1.ApiProperty)({ type: String }),
70
+ __metadata("design:type", String)
71
+ ], BaseApiErrorObject.prototype, "path", void 0);
72
+ __decorate([
73
+ (0, swagger_1.ApiProperty)({ type: String }),
74
+ __metadata("design:type", String)
75
+ ], BaseApiErrorObject.prototype, "requestId", void 0);
76
+ __decorate([
77
+ (0, swagger_1.ApiProperty)({ type: String }),
78
+ __metadata("design:type", String)
79
+ ], BaseApiErrorObject.prototype, "timestamp", void 0);
80
+ class BaseApiErrorResponse {
81
+ error;
82
+ }
83
+ exports.BaseApiErrorResponse = BaseApiErrorResponse;
84
+ __decorate([
85
+ (0, swagger_1.ApiProperty)({ type: BaseApiErrorObject }),
86
+ __metadata("design:type", BaseApiErrorObject)
87
+ ], BaseApiErrorResponse.prototype, "error", void 0);
88
+ //# sourceMappingURL=base-api-response.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-api-response.dto.js","sourceRoot":"","sources":["../../../../../../core/src/shared/dtos/base-api-response.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAiBA,wDAeC;AA/BD,6CAAmE;AAEnE,MAAa,eAAe;IACnB,IAAI,CAAI;IAGR,IAAI,CAAU;CACtB;AALD,0CAKC;AADQ;IADN,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;6CACT;AAUvB,SAAgB,sBAAsB,CAA4B,IAAO;IACvE,MAAM,uBAA2B,SAAQ,eAAkB;KAK1D;IADgB;QADd,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,CAAC;;yDACC;IAIzB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,MAAM,CAAC,cAAc,CAAC,uBAAuB,EAAE,MAAM,EAAE;QACrD,KAAK,EAAE,6BAA6B,IAAI,IAAI,SAAS,EAAE;KACxD,CAAC,CAAC;IAEH,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED,MAAa,kBAAkB;IAEtB,UAAU,CAAS;IAGnB,OAAO,CAAS;IAGhB,gBAAgB,CAAS;IAGzB,SAAS,CAAS;IAGlB,OAAO,CAAU;IAGjB,IAAI,CAAS;IAGb,SAAS,CAAS;IAGlB,SAAS,CAAS;CAC1B;AAxBD,gDAwBC;AAtBQ;IADN,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDACJ;AAGnB;IADN,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;mDACP;AAGhB;IADN,IAAA,6BAAmB,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;4DACN;AAGzB;IADN,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDACL;AAGlB;IADN,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;mDACN;AAGjB;IADN,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;gDACV;AAGb;IADN,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDACL;AAGlB;IADN,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDACL;AAG3B,MAAa,oBAAoB;IAExB,KAAK,CAAqB;CAClC;AAHD,oDAGC;AADQ;IADN,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;8BAC5B,kBAAkB;mDAAC","sourcesContent":["import { Type } from '@nestjs/common';\r\nimport { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';\r\n\r\nexport class BaseApiResponse<T> {\r\n public data: T; // Swagger Decorator is added in the extended class below, since that will override this one.\r\n\r\n @ApiProperty({ type: Object })\r\n public meta: unknown;\r\n}\r\n\r\ntype ApiPropertyType =\r\n | string\r\n | Record<string, unknown>\r\n | Type<unknown>\r\n | [new (...args: unknown[]) => unknown]\r\n | undefined;\r\n\r\nexport function SwaggerBaseApiResponse<T extends ApiPropertyType>(type: T): typeof BaseApiResponse {\r\n class ExtendedBaseApiResponse<T> extends BaseApiResponse<T> {\r\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n // @ts-expect-error\r\n @ApiProperty({ type }) // Casting `type` to `any` to bypass type checking for now\r\n declare public data: T;\r\n }\r\n // NOTE : Overwrite the returned class name, otherwise whichever type calls this function in the last,\r\n // will overwrite all previous definitions. i.e., Swagger will have all response types as the same one.\r\n const isAnArray = Array.isArray(type) ? ' [ ] ' : '';\r\n Object.defineProperty(ExtendedBaseApiResponse, 'name', {\r\n value: `SwaggerBaseApiResponseFor ${type} ${isAnArray}`,\r\n });\r\n\r\n return ExtendedBaseApiResponse;\r\n}\r\n\r\nexport class BaseApiErrorObject {\r\n @ApiProperty({ type: Number })\r\n public statusCode: number;\r\n\r\n @ApiProperty({ type: String })\r\n public message: string;\r\n\r\n @ApiPropertyOptional({ type: String })\r\n public localizedMessage: string;\r\n\r\n @ApiProperty({ type: String })\r\n public errorName: string;\r\n\r\n @ApiProperty({ type: Object })\r\n public details: unknown;\r\n\r\n @ApiProperty({ type: String })\r\n public path: string;\r\n\r\n @ApiProperty({ type: String })\r\n public requestId: string;\r\n\r\n @ApiProperty({ type: String })\r\n public timestamp: string;\r\n}\r\n\r\nexport class BaseApiErrorResponse {\r\n @ApiProperty({ type: BaseApiErrorObject })\r\n public error: BaseApiErrorObject;\r\n}\r\n"]}
@@ -0,0 +1,3 @@
1
+ export declare class EmptyDto {
2
+ id: string;
3
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.EmptyDto = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ let EmptyDto = class EmptyDto {
15
+ id;
16
+ };
17
+ exports.EmptyDto = EmptyDto;
18
+ __decorate([
19
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
20
+ __metadata("design:type", String)
21
+ ], EmptyDto.prototype, "id", void 0);
22
+ exports.EmptyDto = EmptyDto = __decorate([
23
+ (0, typeorm_1.Entity)('empty')
24
+ ], EmptyDto);
25
+ //# sourceMappingURL=empty.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty.dto.js","sourceRoot":"","sources":["../../../../../../core/src/shared/dtos/empty.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAyD;AAGlD,IAAM,QAAQ,GAAd,MAAM,QAAQ;IAEnB,EAAE,CAAS;CACZ,CAAA;AAHY,4BAAQ;AAEnB;IADC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;oCACpB;mBAFA,QAAQ;IADpB,IAAA,gBAAM,EAAC,OAAO,CAAC;GACH,QAAQ,CAGpB","sourcesContent":["import { Entity, PrimaryGeneratedColumn } from 'typeorm';\r\n\r\n@Entity('empty')\r\nexport class EmptyDto {\r\n @PrimaryGeneratedColumn('uuid')\r\n id: string;\r\n}\r\n"]}
@@ -0,0 +1,6 @@
1
+ export declare class PaginationParamsDto {
2
+ limit?: number;
3
+ offset: number;
4
+ ids: string;
5
+ cursor: string;
6
+ }
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PaginationParamsDto = void 0;
13
+ const swagger_1 = require("@nestjs/swagger");
14
+ const class_transformer_1 = require("class-transformer");
15
+ const class_validator_1 = require("class-validator");
16
+ class PaginationParamsDto {
17
+ limit;
18
+ offset = 0;
19
+ ids;
20
+ cursor;
21
+ }
22
+ exports.PaginationParamsDto = PaginationParamsDto;
23
+ __decorate([
24
+ (0, swagger_1.ApiPropertyOptional)({
25
+ description: 'Optional',
26
+ type: Number,
27
+ }),
28
+ (0, class_validator_1.IsNumber)(),
29
+ (0, class_validator_1.IsOptional)(),
30
+ (0, class_validator_1.Min)(0),
31
+ (0, class_transformer_1.Transform)(({ value }) => parseInt(value, 10), { toClassOnly: true }),
32
+ __metadata("design:type", Number)
33
+ ], PaginationParamsDto.prototype, "limit", void 0);
34
+ __decorate([
35
+ (0, swagger_1.ApiPropertyOptional)({
36
+ description: 'Optional, defaults to 0',
37
+ type: Number,
38
+ }),
39
+ (0, class_validator_1.IsNumber)(),
40
+ (0, class_validator_1.IsOptional)(),
41
+ (0, class_validator_1.Min)(0),
42
+ (0, class_transformer_1.Transform)(({ value }) => parseInt(value, 10), { toClassOnly: true }),
43
+ __metadata("design:type", Object)
44
+ ], PaginationParamsDto.prototype, "offset", void 0);
45
+ __decorate([
46
+ (0, swagger_1.ApiPropertyOptional)({
47
+ description: 'Optional, array of IDs',
48
+ type: [String],
49
+ }),
50
+ (0, class_validator_1.IsOptional)(),
51
+ __metadata("design:type", String)
52
+ ], PaginationParamsDto.prototype, "ids", void 0);
53
+ __decorate([
54
+ (0, swagger_1.ApiPropertyOptional)({
55
+ description: 'Optional, cursor for pagination',
56
+ type: String,
57
+ }),
58
+ (0, class_validator_1.IsOptional)(),
59
+ __metadata("design:type", String)
60
+ ], PaginationParamsDto.prototype, "cursor", void 0);
61
+ //# sourceMappingURL=pagination-params.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination-params.dto.js","sourceRoot":"","sources":["../../../../../../core/src/shared/dtos/pagination-params.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAsD;AACtD,yDAA8C;AAC9C,qDAA4D;AAE5D,MAAa,mBAAmB;IAS9B,KAAK,CAAU;IAUf,MAAM,GAAG,CAAC,CAAC;IAOX,GAAG,CAAS;IAOZ,MAAM,CAAS;CAChB;AAlCD,kDAkCC;AAzBC;IARC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,UAAU;QACvB,IAAI,EAAE,MAAM;KACb,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,qBAAG,EAAC,CAAC,CAAC;IACN,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;;kDACtD;AAUf;IARC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,yBAAyB;QACtC,IAAI,EAAE,MAAM;KACb,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,qBAAG,EAAC,CAAC,CAAC;IACN,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;;mDAC1D;AAOX;IALC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,wBAAwB;QACrC,IAAI,EAAE,CAAC,MAAM,CAAC;KACf,CAAC;IACD,IAAA,4BAAU,GAAE;;gDACD;AAOZ;IALC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,iCAAiC;QAC9C,IAAI,EAAE,MAAM;KACb,CAAC;IACD,IAAA,4BAAU,GAAE;;mDACE","sourcesContent":["import { ApiPropertyOptional } from '@nestjs/swagger';\r\nimport { Transform } from 'class-transformer';\r\nimport { IsNumber, IsOptional, Min } from 'class-validator';\r\n\r\nexport class PaginationParamsDto {\r\n @ApiPropertyOptional({\r\n description: 'Optional',\r\n type: Number,\r\n })\r\n @IsNumber()\r\n @IsOptional()\r\n @Min(0)\r\n @Transform(({ value }) => parseInt(value, 10), { toClassOnly: true })\r\n limit?: number;\r\n\r\n @ApiPropertyOptional({\r\n description: 'Optional, defaults to 0',\r\n type: Number,\r\n })\r\n @IsNumber()\r\n @IsOptional()\r\n @Min(0)\r\n @Transform(({ value }) => parseInt(value, 10), { toClassOnly: true })\r\n offset = 0;\r\n\r\n @ApiPropertyOptional({\r\n description: 'Optional, array of IDs',\r\n type: [String],\r\n })\r\n @IsOptional()\r\n ids: string;\r\n\r\n @ApiPropertyOptional({\r\n description: 'Optional, cursor for pagination',\r\n type: String,\r\n })\r\n @IsOptional()\r\n cursor: string;\r\n}\r\n"]}
@@ -0,0 +1,6 @@
1
+ import { HttpException } from '@nestjs/common';
2
+ export declare class BaseApiException extends HttpException {
3
+ localizedMessage: Record<string, string> | undefined;
4
+ details: string | Record<string, any> | undefined;
5
+ constructor(message: string, status: number, details?: string | Record<string, any>, localizedMessage?: Record<string, string>);
6
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseApiException = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ class BaseApiException extends common_1.HttpException {
6
+ localizedMessage;
7
+ details;
8
+ constructor(message, status, details, localizedMessage) {
9
+ super(message, status);
10
+ this.name = BaseApiException.name;
11
+ this.localizedMessage = localizedMessage;
12
+ this.details = details;
13
+ }
14
+ }
15
+ exports.BaseApiException = BaseApiException;
16
+ //# sourceMappingURL=base-api.exception.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-api.exception.js","sourceRoot":"","sources":["../../../../../../core/src/shared/exceptions/base-api.exception.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAE/C,MAAa,gBAAiB,SAAQ,sBAAa;IAC1C,gBAAgB,CAAqC;IAErD,OAAO,CAA2C;IAEzD,YACE,OAAe,EACf,MAAc,EAEd,OAAsC,EACtC,gBAAyC;QAGzC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAlBD,4CAkBC","sourcesContent":["import { HttpException } from '@nestjs/common';\r\n\r\nexport class BaseApiException extends HttpException {\r\n public localizedMessage: Record<string, string> | undefined;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public details: string | Record<string, any> | undefined;\r\n\r\n constructor(\r\n message: string,\r\n status: number,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n details?: string | Record<string, any>,\r\n localizedMessage?: Record<string, string>,\r\n ) {\r\n // Calling parent constructor of base Exception class.\r\n super(message, status);\r\n this.name = BaseApiException.name;\r\n this.localizedMessage = localizedMessage;\r\n this.details = details;\r\n }\r\n}\r\n"]}
@@ -0,0 +1,9 @@
1
+ import { ArgumentsHost, ExceptionFilter } from '@nestjs/common';
2
+ import { ConfigService } from '@nestjs/config';
3
+ import { AppLogger } from '../logger/logger.service';
4
+ export declare class AllExceptionsFilter<T> implements ExceptionFilter {
5
+ private config;
6
+ private readonly logger;
7
+ constructor(config: ConfigService, logger: AppLogger);
8
+ catch(exception: T, host: ArgumentsHost): any;
9
+ }
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var AllExceptionsFilter_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.AllExceptionsFilter = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const config_1 = require("@nestjs/config");
16
+ const constants_1 = require("../constants");
17
+ const base_api_exception_1 = require("../exceptions/base-api.exception");
18
+ const logger_service_1 = require("../logger/logger.service");
19
+ let AllExceptionsFilter = AllExceptionsFilter_1 = class AllExceptionsFilter {
20
+ config;
21
+ logger;
22
+ constructor(config, logger) {
23
+ this.config = config;
24
+ this.logger = logger;
25
+ this.logger.setContext(AllExceptionsFilter_1.name);
26
+ }
27
+ catch(exception, host) {
28
+ const ctx = host.switchToHttp();
29
+ const req = ctx.getRequest();
30
+ const res = ctx.getResponse();
31
+ const path = req.url;
32
+ const timestamp = new Date().toISOString();
33
+ const requestId = req.headers[constants_1.REQUEST_ID_TOKEN_HEADER];
34
+ let stack;
35
+ let statusCode = undefined;
36
+ let errorName = undefined;
37
+ let message = undefined;
38
+ let details = undefined;
39
+ const acceptedLanguage = 'ja';
40
+ let localizedMessage = undefined;
41
+ if (exception instanceof base_api_exception_1.BaseApiException) {
42
+ statusCode = exception.getStatus();
43
+ errorName = exception.constructor.name;
44
+ message = exception.message;
45
+ localizedMessage = exception.localizedMessage
46
+ ? exception.localizedMessage[acceptedLanguage]
47
+ : undefined;
48
+ details = exception.details || exception.getResponse();
49
+ }
50
+ else if (exception instanceof common_1.HttpException) {
51
+ statusCode = exception.getStatus();
52
+ errorName = exception.constructor.name;
53
+ message = exception.message;
54
+ details = exception.getResponse();
55
+ }
56
+ else if (exception instanceof Error) {
57
+ errorName = exception.constructor.name;
58
+ message = exception.message;
59
+ stack = exception.stack;
60
+ }
61
+ statusCode = statusCode || common_1.HttpStatus.INTERNAL_SERVER_ERROR;
62
+ errorName = errorName || 'InternalException';
63
+ message = message || 'Internal server error';
64
+ const error = {
65
+ statusCode,
66
+ message,
67
+ localizedMessage,
68
+ errorName,
69
+ details,
70
+ path,
71
+ requestId,
72
+ timestamp,
73
+ };
74
+ this.logger.warn(error.message, {
75
+ error,
76
+ stack,
77
+ });
78
+ const isProMood = this.config.get('env') !== 'development';
79
+ if (isProMood && statusCode === common_1.HttpStatus.INTERNAL_SERVER_ERROR) {
80
+ error.message = 'Internal server error';
81
+ }
82
+ res.status(statusCode).json({ error });
83
+ }
84
+ };
85
+ exports.AllExceptionsFilter = AllExceptionsFilter;
86
+ exports.AllExceptionsFilter = AllExceptionsFilter = AllExceptionsFilter_1 = __decorate([
87
+ (0, common_1.Catch)(),
88
+ __metadata("design:paramtypes", [config_1.ConfigService,
89
+ logger_service_1.AppLogger])
90
+ ], AllExceptionsFilter);
91
+ //# sourceMappingURL=all-exceptions.filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"all-exceptions.filter.js","sourceRoot":"","sources":["../../../../../../core/src/shared/filters/all-exceptions.filter.ts"],"names":[],"mappings":"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","sourcesContent":["import { ArgumentsHost, Catch, ExceptionFilter, HttpException, HttpStatus } from '@nestjs/common';\r\nimport { ConfigService } from '@nestjs/config';\r\nimport { Request, Response } from 'express';\r\n\r\nimport { REQUEST_ID_TOKEN_HEADER } from '../constants';\r\nimport { BaseApiException } from '../exceptions/base-api.exception';\r\nimport { AppLogger } from '../logger/logger.service';\r\n\r\n@Catch()\r\nexport class AllExceptionsFilter<T> implements ExceptionFilter {\r\n /** set logger context */\r\n constructor(\r\n private config: ConfigService,\r\n private readonly logger: AppLogger,\r\n ) {\r\n this.logger.setContext(AllExceptionsFilter.name);\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n catch(exception: T, host: ArgumentsHost): any {\r\n const ctx = host.switchToHttp();\r\n const req: Request = ctx.getRequest<Request>();\r\n const res: Response = ctx.getResponse<Response>();\r\n\r\n const path = req.url;\r\n const timestamp = new Date().toISOString();\r\n const requestId = req.headers[REQUEST_ID_TOKEN_HEADER];\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n let stack: any;\r\n let statusCode: HttpStatus | undefined = undefined;\r\n let errorName: string | undefined = undefined;\r\n let message: string | undefined = undefined;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n let details: string | Record<string, any> | undefined = undefined;\r\n // TODO : Based on language value in header, return a localized message.\r\n const acceptedLanguage = 'ja';\r\n let localizedMessage: string | undefined = undefined;\r\n\r\n // TODO : Refactor the below cases into a switch case and tidy up error response creation.\r\n if (exception instanceof BaseApiException) {\r\n statusCode = exception.getStatus();\r\n errorName = exception.constructor.name;\r\n message = exception.message;\r\n localizedMessage = exception.localizedMessage\r\n ? exception.localizedMessage[acceptedLanguage]\r\n : undefined;\r\n details = exception.details || exception.getResponse();\r\n } else if (exception instanceof HttpException) {\r\n statusCode = exception.getStatus();\r\n errorName = exception.constructor.name;\r\n message = exception.message;\r\n details = exception.getResponse();\r\n } else if (exception instanceof Error) {\r\n errorName = exception.constructor.name;\r\n message = exception.message;\r\n stack = exception.stack;\r\n }\r\n\r\n // Set to internal server error in case it did not match above categories.\r\n statusCode = statusCode || HttpStatus.INTERNAL_SERVER_ERROR;\r\n errorName = errorName || 'InternalException';\r\n message = message || 'Internal server error';\r\n\r\n // NOTE: For reference, please check https://cloud.google.com/apis/design/errors\r\n const error = {\r\n statusCode,\r\n message,\r\n localizedMessage,\r\n errorName,\r\n details,\r\n // Additional meta added by us.\r\n path,\r\n requestId,\r\n timestamp,\r\n };\r\n this.logger.warn(error.message, {\r\n error,\r\n stack,\r\n });\r\n\r\n // Suppress original internal server error details in prod mode\r\n const isProMood = this.config.get<string>('env') !== 'development';\r\n if (isProMood && statusCode === HttpStatus.INTERNAL_SERVER_ERROR) {\r\n error.message = 'Internal server error';\r\n }\r\n\r\n res.status(statusCode).json({ error });\r\n }\r\n}\r\n"]}
@@ -0,0 +1,8 @@
1
+ import { CallHandler, ExecutionContext, NestInterceptor } from '@nestjs/common';
2
+ import { Observable } from 'rxjs';
3
+ import { AppLogger } from '../logger/logger.service';
4
+ export declare class LoggingInterceptor implements NestInterceptor {
5
+ private appLogger;
6
+ constructor(appLogger: AppLogger);
7
+ intercept(context: ExecutionContext, next: CallHandler): Observable<any>;
8
+ }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var LoggingInterceptor_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.LoggingInterceptor = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const operators_1 = require("rxjs/operators");
16
+ const logger_service_1 = require("../logger/logger.service");
17
+ let LoggingInterceptor = LoggingInterceptor_1 = class LoggingInterceptor {
18
+ appLogger;
19
+ constructor(appLogger) {
20
+ this.appLogger = appLogger;
21
+ this.appLogger.setContext(LoggingInterceptor_1.name);
22
+ }
23
+ intercept(context, next) {
24
+ const request = context.switchToHttp().getRequest();
25
+ const method = request.method;
26
+ const now = Date.now();
27
+ return next.handle().pipe((0, operators_1.tap)(() => {
28
+ const response = context.switchToHttp().getResponse();
29
+ const statusCode = response.statusCode;
30
+ const responseTime = Date.now() - now;
31
+ const urlObject = new URL(request.url, 'http://localhost');
32
+ const uri = urlObject.pathname;
33
+ const query = urlObject.searchParams.toString();
34
+ const body = JSON.stringify(request.body);
35
+ const resData = {
36
+ method,
37
+ statusCode,
38
+ responseTime,
39
+ uri,
40
+ query,
41
+ body,
42
+ };
43
+ this.appLogger.log('Request completed', { resData });
44
+ }));
45
+ }
46
+ };
47
+ exports.LoggingInterceptor = LoggingInterceptor;
48
+ exports.LoggingInterceptor = LoggingInterceptor = LoggingInterceptor_1 = __decorate([
49
+ (0, common_1.Injectable)(),
50
+ __metadata("design:paramtypes", [logger_service_1.AppLogger])
51
+ ], LoggingInterceptor);
52
+ //# sourceMappingURL=logging.interceptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.interceptor.js","sourceRoot":"","sources":["../../../../../../core/src/shared/interceptors/logging.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAA4F;AAE5F,8CAAqC;AAErC,6DAAqD;AAG9C,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IACT;IAApB,YAAoB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;QACtC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,oBAAkB,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAGD,SAAS,CAAC,OAAyB,EAAE,IAAiB;QACpD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QACpD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CACvB,IAAA,eAAG,EAAC,GAAG,EAAE;YACP,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,CAAC;YACtD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;YAEvC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC;YAEtC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAC3D,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC;YAC/B,MAAM,KAAK,GAAG,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAE1C,MAAM,OAAO,GAAG;gBACd,MAAM;gBACN,UAAU;gBACV,YAAY;gBACZ,GAAG;gBACH,KAAK;gBACL,IAAI;aACL,CAAC;YAEF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAA;AApCY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;qCAEoB,0BAAS;GAD7B,kBAAkB,CAoC9B","sourcesContent":["import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';\r\nimport { Observable } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\n\r\nimport { AppLogger } from '../logger/logger.service';\r\n\r\n@Injectable()\r\nexport class LoggingInterceptor implements NestInterceptor {\r\n constructor(private appLogger: AppLogger) {\r\n this.appLogger.setContext(LoggingInterceptor.name);\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n intercept(context: ExecutionContext, next: CallHandler): Observable<any> {\r\n const request = context.switchToHttp().getRequest();\r\n const method = request.method;\r\n\r\n const now = Date.now();\r\n return next.handle().pipe(\r\n tap(() => {\r\n const response = context.switchToHttp().getResponse();\r\n const statusCode = response.statusCode;\r\n\r\n const responseTime = Date.now() - now;\r\n\r\n const urlObject = new URL(request.url, 'http://localhost');\r\n const uri = urlObject.pathname;\r\n const query = urlObject.searchParams.toString();\r\n const body = JSON.stringify(request.body);\r\n\r\n const resData = {\r\n method,\r\n statusCode,\r\n responseTime,\r\n uri,\r\n query,\r\n body,\r\n };\r\n\r\n this.appLogger.log('Request completed', { resData });\r\n }),\r\n );\r\n }\r\n}\r\n"]}
@@ -0,0 +1,2 @@
1
+ export declare class AppLoggerModule {
2
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.AppLoggerModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const logger_service_1 = require("./logger.service");
12
+ let AppLoggerModule = class AppLoggerModule {
13
+ };
14
+ exports.AppLoggerModule = AppLoggerModule;
15
+ exports.AppLoggerModule = AppLoggerModule = __decorate([
16
+ (0, common_1.Module)({
17
+ imports: [],
18
+ providers: [logger_service_1.AppLogger],
19
+ exports: [logger_service_1.AppLogger],
20
+ })
21
+ ], AppLoggerModule);
22
+ //# sourceMappingURL=logger.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.module.js","sourceRoot":"","sources":["../../../../../../core/src/shared/logger/logger.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AAExC,qDAA6C;AAOtC,IAAM,eAAe,GAArB,MAAM,eAAe;CAAG,CAAA;AAAlB,0CAAe;0BAAf,eAAe;IAL3B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,CAAC,0BAAS,CAAC;QACtB,OAAO,EAAE,CAAC,0BAAS,CAAC;KACrB,CAAC;GACW,eAAe,CAAG","sourcesContent":["import { Module } from '@nestjs/common';\r\n\r\nimport { AppLogger } from './logger.service';\r\n\r\n@Module({\r\n imports: [],\r\n providers: [AppLogger],\r\n exports: [AppLogger],\r\n})\r\nexport class AppLoggerModule {}\r\n"]}
@@ -0,0 +1,12 @@
1
+ import { Logger } from 'winston';
2
+ export declare class AppLogger {
3
+ private context?;
4
+ private logger;
5
+ setContext(context: string): void;
6
+ constructor();
7
+ error(message: string, meta?: Record<string, any>): Logger;
8
+ warn(message: string, meta?: Record<string, any>): Logger;
9
+ debug(message: string, meta?: Record<string, any>): Logger;
10
+ verbose(message: string, meta?: Record<string, any>): Logger;
11
+ log(message: string, meta?: Record<string, any>): Logger;
12
+ }
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AppLogger = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const winston_1 = require("winston");
15
+ let AppLogger = class AppLogger {
16
+ context;
17
+ logger;
18
+ setContext(context) {
19
+ this.context = context;
20
+ }
21
+ constructor() {
22
+ this.logger = (0, winston_1.createLogger)({
23
+ transports: [new winston_1.transports.Console()],
24
+ });
25
+ }
26
+ error(message, meta) {
27
+ const timestamp = new Date().toISOString();
28
+ return this.logger.error({
29
+ message,
30
+ contextName: this.context,
31
+ timestamp,
32
+ ...meta,
33
+ });
34
+ }
35
+ warn(message, meta) {
36
+ const timestamp = new Date().toISOString();
37
+ return this.logger.warn({
38
+ message,
39
+ contextName: this.context,
40
+ timestamp,
41
+ ...meta,
42
+ });
43
+ }
44
+ debug(message, meta) {
45
+ const timestamp = new Date().toISOString();
46
+ return this.logger.debug({
47
+ message,
48
+ contextName: this.context,
49
+ timestamp,
50
+ ...meta,
51
+ });
52
+ }
53
+ verbose(message, meta) {
54
+ const timestamp = new Date().toISOString();
55
+ return this.logger.verbose({
56
+ message,
57
+ contextName: this.context,
58
+ timestamp,
59
+ ...meta,
60
+ });
61
+ }
62
+ log(message, meta) {
63
+ const timestamp = new Date().toISOString();
64
+ return this.logger.info({
65
+ message,
66
+ contextName: this.context,
67
+ timestamp,
68
+ ...meta,
69
+ });
70
+ }
71
+ };
72
+ exports.AppLogger = AppLogger;
73
+ exports.AppLogger = AppLogger = __decorate([
74
+ (0, common_1.Injectable)({ scope: common_1.Scope.TRANSIENT }),
75
+ __metadata("design:paramtypes", [])
76
+ ], AppLogger);
77
+ //# sourceMappingURL=logger.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../../../../../core/src/shared/logger/logger.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAmD;AACnD,qCAA2D;AAGpD,IAAM,SAAS,GAAf,MAAM,SAAS;IACZ,OAAO,CAAU;IACjB,MAAM,CAAS;IAEhB,UAAU,CAAC,OAAe;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;QACE,IAAI,CAAC,MAAM,GAAG,IAAA,sBAAY,EAAC;YACzB,UAAU,EAAE,CAAC,IAAI,oBAAU,CAAC,OAAO,EAAE,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;IAGD,KAAK,CAAC,OAAe,EAAE,IAA0B;QAC/C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACvB,OAAO;YACP,WAAW,EAAE,IAAI,CAAC,OAAO;YACzB,SAAS;YACT,GAAG,IAAI;SACR,CAAC,CAAC;IACL,CAAC;IAGD,IAAI,CAAC,OAAe,EAAE,IAA0B;QAC9C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO;YACP,WAAW,EAAE,IAAI,CAAC,OAAO;YACzB,SAAS;YACT,GAAG,IAAI;SACR,CAAC,CAAC;IACL,CAAC;IAGD,KAAK,CAAC,OAAe,EAAE,IAA0B;QAC/C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACvB,OAAO;YACP,WAAW,EAAE,IAAI,CAAC,OAAO;YACzB,SAAS;YACT,GAAG,IAAI;SACR,CAAC,CAAC;IACL,CAAC;IAGD,OAAO,CAAC,OAAe,EAAE,IAA0B;QACjD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YACzB,OAAO;YACP,WAAW,EAAE,IAAI,CAAC,OAAO;YACzB,SAAS;YACT,GAAG,IAAI;SACR,CAAC,CAAC;IACL,CAAC;IAGD,GAAG,CAAC,OAAe,EAAE,IAA0B;QAC7C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,OAAO;YACP,WAAW,EAAE,IAAI,CAAC,OAAO;YACzB,SAAS;YACT,GAAG,IAAI;SACR,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAzEY,8BAAS;oBAAT,SAAS;IADrB,IAAA,mBAAU,EAAC,EAAE,KAAK,EAAE,cAAK,CAAC,SAAS,EAAE,CAAC;;GAC1B,SAAS,CAyErB","sourcesContent":["import { Injectable, Scope } from '@nestjs/common';\r\nimport { createLogger, Logger, transports } from 'winston';\r\n\r\n@Injectable({ scope: Scope.TRANSIENT })\r\nexport class AppLogger {\r\n private context?: string;\r\n private logger: Logger;\r\n\r\n public setContext(context: string): void {\r\n this.context = context;\r\n }\r\n\r\n constructor() {\r\n this.logger = createLogger({\r\n transports: [new transports.Console()],\r\n });\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n error(message: string, meta?: Record<string, any>): Logger {\r\n const timestamp = new Date().toISOString();\r\n\r\n return this.logger.error({\r\n message,\r\n contextName: this.context,\r\n timestamp,\r\n ...meta,\r\n });\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n warn(message: string, meta?: Record<string, any>): Logger {\r\n const timestamp = new Date().toISOString();\r\n\r\n return this.logger.warn({\r\n message,\r\n contextName: this.context,\r\n timestamp,\r\n ...meta,\r\n });\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n debug(message: string, meta?: Record<string, any>): Logger {\r\n const timestamp = new Date().toISOString();\r\n\r\n return this.logger.debug({\r\n message,\r\n contextName: this.context,\r\n timestamp,\r\n ...meta,\r\n });\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n verbose(message: string, meta?: Record<string, any>): Logger {\r\n const timestamp = new Date().toISOString();\r\n\r\n return this.logger.verbose({\r\n message,\r\n contextName: this.context,\r\n timestamp,\r\n ...meta,\r\n });\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n log(message: string, meta?: Record<string, any>): Logger {\r\n const timestamp = new Date().toISOString();\r\n\r\n return this.logger.info({\r\n message,\r\n contextName: this.context,\r\n timestamp,\r\n ...meta,\r\n });\r\n }\r\n}\r\n"]}