@euler-edu/nest 0.0.0-stage → 7.0.1-beta0

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 (215) hide show
  1. package/lib/.tsbuildinfo +1 -0
  2. package/lib/connection/mongo/index.d.ts +3 -0
  3. package/lib/connection/mongo/index.d.ts.map +1 -0
  4. package/lib/connection/mongo/index.js +19 -0
  5. package/lib/connection/mongo/index.js.map +1 -0
  6. package/lib/connection/mongo/mongo.module.d.ts +5 -0
  7. package/lib/connection/mongo/mongo.module.d.ts.map +1 -0
  8. package/lib/connection/mongo/mongo.module.js +30 -0
  9. package/lib/connection/mongo/mongo.module.js.map +1 -0
  10. package/lib/connection/mongo/mongo.service.d.ts +21 -0
  11. package/lib/connection/mongo/mongo.service.d.ts.map +1 -0
  12. package/lib/connection/mongo/mongo.service.js +57 -0
  13. package/lib/connection/mongo/mongo.service.js.map +1 -0
  14. package/lib/connection/mongo/oj-main/contest.d.ts +399 -0
  15. package/lib/connection/mongo/oj-main/contest.d.ts.map +1 -0
  16. package/lib/connection/mongo/oj-main/contest.js +55 -0
  17. package/lib/connection/mongo/oj-main/contest.js.map +1 -0
  18. package/lib/connection/mongo/oj-main/index.d.ts +8 -0
  19. package/lib/connection/mongo/oj-main/index.d.ts.map +1 -0
  20. package/lib/connection/mongo/oj-main/index.js +18 -0
  21. package/lib/connection/mongo/oj-main/index.js.map +1 -0
  22. package/lib/connection/mongo/oj-main/mail.d.ts +55 -0
  23. package/lib/connection/mongo/oj-main/mail.d.ts.map +1 -0
  24. package/lib/connection/mongo/oj-main/mail.js +44 -0
  25. package/lib/connection/mongo/oj-main/mail.js.map +1 -0
  26. package/lib/connection/mongo/oj-main/problem.d.ts +103 -0
  27. package/lib/connection/mongo/oj-main/problem.d.ts.map +1 -0
  28. package/lib/connection/mongo/oj-main/problem.js +29 -0
  29. package/lib/connection/mongo/oj-main/problem.js.map +1 -0
  30. package/lib/connection/mongo/oj-main/record.d.ts +47 -0
  31. package/lib/connection/mongo/oj-main/record.d.ts.map +1 -0
  32. package/lib/connection/mongo/oj-main/record.js +26 -0
  33. package/lib/connection/mongo/oj-main/record.js.map +1 -0
  34. package/lib/connection/mongo/oj-main/sourceconsole.d.ts +67 -0
  35. package/lib/connection/mongo/oj-main/sourceconsole.d.ts.map +1 -0
  36. package/lib/connection/mongo/oj-main/sourceconsole.js +19 -0
  37. package/lib/connection/mongo/oj-main/sourceconsole.js.map +1 -0
  38. package/lib/connection/mongo/oj-main/sourcesubmit.d.ts +175 -0
  39. package/lib/connection/mongo/oj-main/sourcesubmit.d.ts.map +1 -0
  40. package/lib/connection/mongo/oj-main/sourcesubmit.js +47 -0
  41. package/lib/connection/mongo/oj-main/sourcesubmit.js.map +1 -0
  42. package/lib/connection/mongo/oj-main/user.d.ts +131 -0
  43. package/lib/connection/mongo/oj-main/user.d.ts.map +1 -0
  44. package/lib/connection/mongo/oj-main/user.js +35 -0
  45. package/lib/connection/mongo/oj-main/user.js.map +1 -0
  46. package/lib/connection/mongo/oj-sq/index.d.ts +3 -0
  47. package/lib/connection/mongo/oj-sq/index.d.ts.map +1 -0
  48. package/lib/connection/mongo/oj-sq/index.js +8 -0
  49. package/lib/connection/mongo/oj-sq/index.js.map +1 -0
  50. package/lib/connection/mongo/oj-sq/scoringRequest.d.ts +291 -0
  51. package/lib/connection/mongo/oj-sq/scoringRequest.d.ts.map +1 -0
  52. package/lib/connection/mongo/oj-sq/scoringRequest.js +58 -0
  53. package/lib/connection/mongo/oj-sq/scoringRequest.js.map +1 -0
  54. package/lib/connection/mongo/oj-sq/scoringServer.d.ts +39 -0
  55. package/lib/connection/mongo/oj-sq/scoringServer.d.ts.map +1 -0
  56. package/lib/connection/mongo/oj-sq/scoringServer.js +12 -0
  57. package/lib/connection/mongo/oj-sq/scoringServer.js.map +1 -0
  58. package/lib/connection/redis/index.d.ts +3 -0
  59. package/lib/connection/redis/index.d.ts.map +1 -0
  60. package/lib/connection/redis/index.js +19 -0
  61. package/lib/connection/redis/index.js.map +1 -0
  62. package/lib/connection/redis/redis.module.d.ts +5 -0
  63. package/lib/connection/redis/redis.module.d.ts.map +1 -0
  64. package/lib/connection/redis/redis.module.js +30 -0
  65. package/lib/connection/redis/redis.module.js.map +1 -0
  66. package/lib/connection/redis/redis.service.d.ts +35 -0
  67. package/lib/connection/redis/redis.service.d.ts.map +1 -0
  68. package/lib/connection/redis/redis.service.js +85 -0
  69. package/lib/connection/redis/redis.service.js.map +1 -0
  70. package/lib/connection/s3/index.d.ts +3 -0
  71. package/lib/connection/s3/index.d.ts.map +1 -0
  72. package/lib/connection/s3/index.js +19 -0
  73. package/lib/connection/s3/index.js.map +1 -0
  74. package/lib/connection/s3/s3.module.d.ts +11 -0
  75. package/lib/connection/s3/s3.module.d.ts.map +1 -0
  76. package/lib/connection/s3/s3.module.js +57 -0
  77. package/lib/connection/s3/s3.module.js.map +1 -0
  78. package/lib/connection/s3/s3.service.d.ts +54 -0
  79. package/lib/connection/s3/s3.service.d.ts.map +1 -0
  80. package/lib/connection/s3/s3.service.js +253 -0
  81. package/lib/connection/s3/s3.service.js.map +1 -0
  82. package/lib/connection/social/index.d.ts +3 -0
  83. package/lib/connection/social/index.d.ts.map +1 -0
  84. package/lib/connection/social/index.js +19 -0
  85. package/lib/connection/social/index.js.map +1 -0
  86. package/lib/connection/social/social.module.d.ts +3 -0
  87. package/lib/connection/social/social.module.d.ts.map +1 -0
  88. package/lib/connection/social/social.module.js +21 -0
  89. package/lib/connection/social/social.module.js.map +1 -0
  90. package/lib/connection/social/social.service.d.ts +16 -0
  91. package/lib/connection/social/social.service.d.ts.map +1 -0
  92. package/lib/connection/social/social.service.js +230 -0
  93. package/lib/connection/social/social.service.js.map +1 -0
  94. package/lib/connection/sqs/index.d.ts +3 -0
  95. package/lib/connection/sqs/index.d.ts.map +1 -0
  96. package/lib/connection/sqs/index.js +19 -0
  97. package/lib/connection/sqs/index.js.map +1 -0
  98. package/lib/connection/sqs/sqs.module.d.ts +5 -0
  99. package/lib/connection/sqs/sqs.module.d.ts.map +1 -0
  100. package/lib/connection/sqs/sqs.module.js +31 -0
  101. package/lib/connection/sqs/sqs.module.js.map +1 -0
  102. package/lib/connection/sqs/sqs.service.d.ts +28 -0
  103. package/lib/connection/sqs/sqs.service.d.ts.map +1 -0
  104. package/lib/connection/sqs/sqs.service.js +122 -0
  105. package/lib/connection/sqs/sqs.service.js.map +1 -0
  106. package/lib/constants/metadata.d.ts +5 -0
  107. package/lib/constants/metadata.d.ts.map +1 -0
  108. package/lib/constants/metadata.js +8 -0
  109. package/lib/constants/metadata.js.map +1 -0
  110. package/lib/decorators/auth.decorator.d.ts +15 -0
  111. package/lib/decorators/auth.decorator.d.ts.map +1 -0
  112. package/lib/decorators/auth.decorator.js +65 -0
  113. package/lib/decorators/auth.decorator.js.map +1 -0
  114. package/lib/decorators/client.decorator.d.ts +9 -0
  115. package/lib/decorators/client.decorator.d.ts.map +1 -0
  116. package/lib/decorators/client.decorator.js +49 -0
  117. package/lib/decorators/client.decorator.js.map +1 -0
  118. package/lib/decorators/endpoint.decorator.d.ts +3 -0
  119. package/lib/decorators/endpoint.decorator.d.ts.map +1 -0
  120. package/lib/decorators/endpoint.decorator.js +96 -0
  121. package/lib/decorators/endpoint.decorator.js.map +1 -0
  122. package/lib/decorators/index.d.ts +8 -0
  123. package/lib/decorators/index.d.ts.map +1 -0
  124. package/lib/decorators/index.js +24 -0
  125. package/lib/decorators/index.js.map +1 -0
  126. package/lib/decorators/mongo.decorator.d.ts +8 -0
  127. package/lib/decorators/mongo.decorator.d.ts.map +1 -0
  128. package/lib/decorators/mongo.decorator.js +115 -0
  129. package/lib/decorators/mongo.decorator.js.map +1 -0
  130. package/lib/decorators/socket.decorator.d.ts +5 -0
  131. package/lib/decorators/socket.decorator.d.ts.map +1 -0
  132. package/lib/decorators/socket.decorator.js +28 -0
  133. package/lib/decorators/socket.decorator.js.map +1 -0
  134. package/lib/decorators/sqs.decorator.d.ts +4 -0
  135. package/lib/decorators/sqs.decorator.d.ts.map +1 -0
  136. package/lib/decorators/sqs.decorator.js +8 -0
  137. package/lib/decorators/sqs.decorator.js.map +1 -0
  138. package/lib/decorators/swagger.decorator.d.ts +2 -0
  139. package/lib/decorators/swagger.decorator.d.ts.map +1 -0
  140. package/lib/decorators/swagger.decorator.js +8 -0
  141. package/lib/decorators/swagger.decorator.js.map +1 -0
  142. package/lib/filters/global.filters.d.ts +16 -0
  143. package/lib/filters/global.filters.d.ts.map +1 -0
  144. package/lib/filters/global.filters.js +75 -0
  145. package/lib/filters/global.filters.js.map +1 -0
  146. package/lib/filters/index.d.ts +2 -0
  147. package/lib/filters/index.d.ts.map +1 -0
  148. package/lib/filters/index.js +18 -0
  149. package/lib/filters/index.js.map +1 -0
  150. package/lib/guards/auth.guard.d.ts +13 -0
  151. package/lib/guards/auth.guard.d.ts.map +1 -0
  152. package/lib/guards/auth.guard.js +61 -0
  153. package/lib/guards/auth.guard.js.map +1 -0
  154. package/lib/guards/endpoint.guard.d.ts +4 -0
  155. package/lib/guards/endpoint.guard.d.ts.map +1 -0
  156. package/lib/guards/endpoint.guard.js +39 -0
  157. package/lib/guards/endpoint.guard.js.map +1 -0
  158. package/lib/guards/global.guard.d.ts +10 -0
  159. package/lib/guards/global.guard.d.ts.map +1 -0
  160. package/lib/guards/global.guard.js +139 -0
  161. package/lib/guards/global.guard.js.map +1 -0
  162. package/lib/guards/index.d.ts +5 -0
  163. package/lib/guards/index.d.ts.map +1 -0
  164. package/lib/guards/index.js +21 -0
  165. package/lib/guards/index.js.map +1 -0
  166. package/lib/guards/socket.guard.d.ts +4 -0
  167. package/lib/guards/socket.guard.d.ts.map +1 -0
  168. package/lib/guards/socket.guard.js +35 -0
  169. package/lib/guards/socket.guard.js.map +1 -0
  170. package/lib/index.d.ts +2 -0
  171. package/lib/index.d.ts.map +1 -0
  172. package/lib/index.js +3 -0
  173. package/lib/index.js.map +1 -0
  174. package/lib/logger/index.d.ts +3 -0
  175. package/lib/logger/index.d.ts.map +1 -0
  176. package/lib/logger/index.js +21 -0
  177. package/lib/logger/index.js.map +1 -0
  178. package/lib/logger/logger.module.d.ts +3 -0
  179. package/lib/logger/logger.module.d.ts.map +1 -0
  180. package/lib/logger/logger.module.js +46 -0
  181. package/lib/logger/logger.module.js.map +1 -0
  182. package/lib/recaptcha/index.d.ts +3 -0
  183. package/lib/recaptcha/index.d.ts.map +1 -0
  184. package/lib/recaptcha/index.js +19 -0
  185. package/lib/recaptcha/index.js.map +1 -0
  186. package/lib/recaptcha/recaptcha.module.d.ts +3 -0
  187. package/lib/recaptcha/recaptcha.module.d.ts.map +1 -0
  188. package/lib/recaptcha/recaptcha.module.js +21 -0
  189. package/lib/recaptcha/recaptcha.module.js.map +1 -0
  190. package/lib/recaptcha/recaptcha.service.d.ts +5 -0
  191. package/lib/recaptcha/recaptcha.service.d.ts.map +1 -0
  192. package/lib/recaptcha/recaptcha.service.js +46 -0
  193. package/lib/recaptcha/recaptcha.service.js.map +1 -0
  194. package/lib/utils/image/index.d.ts +4 -0
  195. package/lib/utils/image/index.d.ts.map +1 -0
  196. package/lib/utils/image/index.js +16 -0
  197. package/lib/utils/image/index.js.map +1 -0
  198. package/lib/utils/jwt/index.d.ts +2 -0
  199. package/lib/utils/jwt/index.d.ts.map +1 -0
  200. package/lib/utils/jwt/index.js +38 -0
  201. package/lib/utils/jwt/index.js.map +1 -0
  202. package/lib/utils/logger/index.d.ts +45 -0
  203. package/lib/utils/logger/index.d.ts.map +1 -0
  204. package/lib/utils/logger/index.js +59 -0
  205. package/lib/utils/logger/index.js.map +1 -0
  206. package/lib/utils/mongo/index.d.ts +2 -0
  207. package/lib/utils/mongo/index.d.ts.map +1 -0
  208. package/lib/utils/mongo/index.js +6 -0
  209. package/lib/utils/mongo/index.js.map +1 -0
  210. package/lib/utils/swagger/index.d.ts +7 -0
  211. package/lib/utils/swagger/index.d.ts.map +1 -0
  212. package/lib/utils/swagger/index.js +29 -0
  213. package/lib/utils/swagger/index.js.map +1 -0
  214. package/package.json +62 -3
  215. package/README.md +0 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3.service.js","sourceRoot":"","sources":["../../../src/connection/s3/s3.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './social.service';
2
+ export * from './social.module';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/connection/social/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,19 @@
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("./social.service"), exports);
18
+ __exportStar(require("./social.module"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connection/social/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,kDAAgC"}
@@ -0,0 +1,3 @@
1
+ export declare class SocialModule {
2
+ }
3
+ //# sourceMappingURL=social.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"social.module.d.ts","sourceRoot":"","sources":["../../../src/connection/social/social.module.ts"],"names":[],"mappings":"AAIA,qBAIa,YAAY;CAAG"}
@@ -0,0 +1,21 @@
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.SocialModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const social_service_1 = require("./social.service");
12
+ let SocialModule = class SocialModule {
13
+ };
14
+ exports.SocialModule = SocialModule;
15
+ exports.SocialModule = SocialModule = __decorate([
16
+ (0, common_1.Module)({
17
+ providers: [social_service_1.SocialService],
18
+ exports: [social_service_1.SocialService],
19
+ })
20
+ ], SocialModule);
21
+ //# sourceMappingURL=social.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"social.module.js","sourceRoot":"","sources":["../../../src/connection/social/social.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AAExC,qDAAiD;AAM1C,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,oCAAY;uBAAZ,YAAY;IAJxB,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,8BAAa,CAAC;QAC1B,OAAO,EAAE,CAAC,8BAAa,CAAC;KACzB,CAAC;GACW,YAAY,CAAG"}
@@ -0,0 +1,16 @@
1
+ export type SocialPayload = {
2
+ type: 'naver' | 'google' | 'kakao';
3
+ id: string;
4
+ email: string;
5
+ name: string;
6
+ profileImageUrl?: string;
7
+ };
8
+ export declare class SocialService {
9
+ private readonly logger;
10
+ private readonly googleOAuth2Client;
11
+ getGoogleFromIdToken(googleIdToken: string): Promise<SocialPayload>;
12
+ getGoogle(code: string, _state: string, origin: string): Promise<SocialPayload>;
13
+ getNaver(code: string, state: string, origin: string): Promise<SocialPayload>;
14
+ getKakao(code: string, state: string, origin: string): Promise<SocialPayload>;
15
+ }
16
+ //# sourceMappingURL=social.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"social.service.d.ts","sourceRoot":"","sources":["../../../src/connection/social/social.service.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,qBACa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;IACzD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAEjC;IAEI,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAiCnE,SAAS,CACb,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,CAAC;IAiEnB,QAAQ,CACZ,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,CAAC;IA8DnB,QAAQ,CACZ,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,CAAC;CA2E1B"}
@@ -0,0 +1,230 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ var SocialService_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.SocialService = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const google_auth_library_1 = require("google-auth-library");
16
+ const constants_1 = __importDefault(require("@euler-edu/utils/constants"));
17
+ const instance_1 = __importDefault(require("@euler-edu/utils/instance"));
18
+ const url_1 = require("@euler-edu/utils/url");
19
+ let SocialService = SocialService_1 = class SocialService {
20
+ constructor() {
21
+ this.logger = new common_1.Logger(SocialService_1.name);
22
+ this.googleOAuth2Client = new google_auth_library_1.OAuth2Client(constants_1.default.secrets.google.clientId);
23
+ }
24
+ async getGoogleFromIdToken(googleIdToken) {
25
+ const ticket = await this.googleOAuth2Client
26
+ .verifyIdToken({
27
+ idToken: googleIdToken,
28
+ audience: constants_1.default.secrets.google.clientId,
29
+ })
30
+ .catch(error => {
31
+ this.logger.error(error);
32
+ throw new Error('Failed to verify Google ID token');
33
+ });
34
+ const payload = ticket.getPayload();
35
+ if (!payload) {
36
+ throw new Error('Google ID token payload is empty');
37
+ }
38
+ if (!payload.sub || !payload.email || !payload.name) {
39
+ throw new Error(`Google ID token payload is invalid : ${JSON.stringify(payload)}`);
40
+ }
41
+ if (!payload.email_verified) {
42
+ throw new Error(`Email is not verified by Google : ${JSON.stringify(payload)}`);
43
+ }
44
+ return {
45
+ type: 'google',
46
+ id: payload.sub,
47
+ email: payload.email,
48
+ name: payload.name,
49
+ profileImageUrl: payload.picture,
50
+ };
51
+ }
52
+ async getGoogle(code, _state, origin) {
53
+ if (!constants_1.default.secrets.google.clientId) {
54
+ throw new Error('Google client ID is not configured');
55
+ }
56
+ if (!constants_1.default.secrets.google.clientSecret) {
57
+ throw new Error('Google client secret is not configured');
58
+ }
59
+ const { data } = await instance_1.default
60
+ .post('/token', new URLSearchParams({
61
+ grant_type: 'authorization_code',
62
+ client_id: constants_1.default.secrets.google.clientId,
63
+ client_secret: constants_1.default.secrets.google.clientSecret,
64
+ redirect_uri: (0, url_1.joinUrl)(origin, '/login/social/google/callback'),
65
+ code,
66
+ }), {
67
+ baseURL: 'https://oauth2.googleapis.com',
68
+ headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
69
+ })
70
+ .catch(error => {
71
+ this.logger.error(error);
72
+ throw new Error('Failed to get access token from Google');
73
+ });
74
+ const { access_token } = data || {};
75
+ if (typeof access_token !== 'string') {
76
+ throw new Error('Access token is not returned from Google');
77
+ }
78
+ const { data: user } = await instance_1.default
79
+ .get('/v1/userinfo', {
80
+ baseURL: 'https://openidconnect.googleapis.com',
81
+ headers: { Authorization: `Bearer ${access_token}` },
82
+ })
83
+ .catch(error => {
84
+ this.logger.error(error);
85
+ throw new Error('Failed to get user info from Google');
86
+ });
87
+ if (!user ||
88
+ !user.sub ||
89
+ !user.email ||
90
+ !user.name ||
91
+ typeof user.sub !== 'string' ||
92
+ typeof user.email !== 'string' ||
93
+ typeof user.name !== 'string') {
94
+ throw new Error(`User info is not returned from Google : ${JSON.stringify(user)}`);
95
+ }
96
+ if (user.email_verified !== true) {
97
+ throw new Error('Email is not verified by Google');
98
+ }
99
+ return {
100
+ type: 'google',
101
+ id: user.sub,
102
+ email: user.email,
103
+ name: user.name,
104
+ profileImageUrl: typeof user.picture === 'string' ? user.picture : undefined,
105
+ };
106
+ }
107
+ async getNaver(code, state, origin) {
108
+ if (!constants_1.default.secrets.naver.clientId) {
109
+ throw new Error('Naver client ID is not configured');
110
+ }
111
+ if (!constants_1.default.secrets.naver.clientSecret) {
112
+ throw new Error('Naver client secret is not configured');
113
+ }
114
+ const { data } = await instance_1.default
115
+ .get('/oauth2.0/token', {
116
+ params: {
117
+ grant_type: 'authorization_code',
118
+ client_id: constants_1.default.secrets.naver.clientId,
119
+ client_secret: constants_1.default.secrets.naver.clientSecret,
120
+ code,
121
+ state,
122
+ },
123
+ baseURL: 'https://nid.naver.com',
124
+ })
125
+ .catch(error => {
126
+ this.logger.error(error);
127
+ throw new Error('Failed to get access token from Naver');
128
+ });
129
+ const { access_token } = data || {};
130
+ if (typeof access_token !== 'string') {
131
+ throw new Error('Access token is not returned from Naver');
132
+ }
133
+ const { data: user } = await instance_1.default
134
+ .get('/v1/nid/me', {
135
+ baseURL: 'https://openapi.naver.com',
136
+ headers: { Authorization: `Bearer ${access_token}` },
137
+ })
138
+ .catch(error => {
139
+ this.logger.error(error);
140
+ throw new Error('Failed to get user info from Naver');
141
+ });
142
+ if (!user ||
143
+ !user.response ||
144
+ typeof user.response !== 'object' ||
145
+ !user.response.id ||
146
+ !user.response.email ||
147
+ !user.response.name ||
148
+ typeof user.response.id !== 'string' ||
149
+ typeof user.response.email !== 'string' ||
150
+ typeof user.response.name !== 'string') {
151
+ throw new Error(`User info is not returned from Naver : ${JSON.stringify(user)}`);
152
+ }
153
+ return {
154
+ type: 'naver',
155
+ id: user.response.id,
156
+ email: user.response.email,
157
+ name: user.response.name,
158
+ profileImageUrl: typeof user.response.profile_image === 'string'
159
+ ? user.response.profile_image
160
+ : undefined,
161
+ };
162
+ }
163
+ async getKakao(code, state, origin) {
164
+ if (!constants_1.default.secrets.kakao.clientId) {
165
+ throw new Error('Kakao client ID is not configured');
166
+ }
167
+ const { data } = await instance_1.default
168
+ .post('/oauth/token', new URLSearchParams({
169
+ grant_type: 'authorization_code',
170
+ client_id: constants_1.default.secrets.kakao.clientId,
171
+ redirect_uri: (0, url_1.joinUrl)(origin, '/login/social/kakao/callback'),
172
+ code,
173
+ }), {
174
+ baseURL: 'https://kauth.kakao.com',
175
+ headers: {
176
+ 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8',
177
+ },
178
+ })
179
+ .catch(error => {
180
+ this.logger.error(error);
181
+ throw new Error('Failed to get access token from Kakao');
182
+ });
183
+ const { access_token } = data || {};
184
+ if (typeof access_token !== 'string') {
185
+ throw new Error('Access token is not returned from Kakao');
186
+ }
187
+ const { data: user } = await instance_1.default
188
+ .get('/v2/user/me', {
189
+ baseURL: 'https://kapi.kakao.com',
190
+ params: { secure_resource: true },
191
+ headers: {
192
+ 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8',
193
+ Authorization: `Bearer ${access_token}`,
194
+ },
195
+ })
196
+ .catch(error => {
197
+ this.logger.error(error);
198
+ throw new Error('Failed to get user info from Kakao');
199
+ });
200
+ if (!user ||
201
+ !user.kakao_account ||
202
+ typeof user.id !== 'number' ||
203
+ typeof user.kakao_account !== 'object' ||
204
+ !user.kakao_account.email ||
205
+ !user.kakao_account.profile ||
206
+ typeof user.kakao_account.profile !== 'object' ||
207
+ typeof user.kakao_account.profile.nickname !== 'string' ||
208
+ typeof user.kakao_account.email !== 'string') {
209
+ throw new Error(`User info is not returned from Kakao : ${JSON.stringify(user)}`);
210
+ }
211
+ if (user.kakao_account.is_email_valid !== true ||
212
+ user.kakao_account.is_email_verified !== true) {
213
+ throw new Error(`Email is not verified by Kakao : ${JSON.stringify(user.kakao_account)}`);
214
+ }
215
+ return {
216
+ type: 'kakao',
217
+ id: String(user.id),
218
+ email: user.kakao_account.email,
219
+ name: user.kakao_account.profile.nickname,
220
+ profileImageUrl: typeof user.kakao_account.profile.profile_image_url === 'string'
221
+ ? user.kakao_account.profile.profile_image_url
222
+ : undefined,
223
+ };
224
+ }
225
+ };
226
+ exports.SocialService = SocialService;
227
+ exports.SocialService = SocialService = SocialService_1 = __decorate([
228
+ (0, common_1.Injectable)()
229
+ ], SocialService);
230
+ //# sourceMappingURL=social.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"social.service.js","sourceRoot":"","sources":["../../../src/connection/social/social.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './sqs.module';
2
+ export * from './sqs.service';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/connection/sqs/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,19 @@
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("./sqs.module"), exports);
18
+ __exportStar(require("./sqs.service"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connection/sqs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,gDAA8B"}
@@ -0,0 +1,5 @@
1
+ export declare class SqsConsumerRootModule {
2
+ }
3
+ export declare class OjClientSocketEventQueueModule {
4
+ }
5
+ //# sourceMappingURL=sqs.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqs.module.d.ts","sourceRoot":"","sources":["../../../src/connection/sqs/sqs.module.ts"],"names":[],"mappings":"AAQA,qBAIa,qBAAqB;CAAG;AAErC,qBAIa,8BAA8B;CAAG"}
@@ -0,0 +1,31 @@
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.OjClientSocketEventQueueModule = exports.SqsConsumerRootModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const core_1 = require("@nestjs/core");
12
+ const sqs_service_1 = require("./sqs.service");
13
+ let SqsConsumerRootModule = class SqsConsumerRootModule {
14
+ };
15
+ exports.SqsConsumerRootModule = SqsConsumerRootModule;
16
+ exports.SqsConsumerRootModule = SqsConsumerRootModule = __decorate([
17
+ (0, common_1.Module)({
18
+ imports: [core_1.DiscoveryModule],
19
+ providers: [sqs_service_1.SqsConsumerRootService],
20
+ })
21
+ ], SqsConsumerRootModule);
22
+ let OjClientSocketEventQueueModule = class OjClientSocketEventQueueModule {
23
+ };
24
+ exports.OjClientSocketEventQueueModule = OjClientSocketEventQueueModule;
25
+ exports.OjClientSocketEventQueueModule = OjClientSocketEventQueueModule = __decorate([
26
+ (0, common_1.Module)({
27
+ providers: [sqs_service_1.OjClientSocketEventQueueService],
28
+ exports: [sqs_service_1.OjClientSocketEventQueueService],
29
+ })
30
+ ], OjClientSocketEventQueueModule);
31
+ //# sourceMappingURL=sqs.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqs.module.js","sourceRoot":"","sources":["../../../src/connection/sqs/sqs.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,uCAA+C;AAE/C,+CAGuB;AAMhB,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;CAAG,CAAA;AAAxB,sDAAqB;gCAArB,qBAAqB;IAJjC,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,sBAAe,CAAC;QAC1B,SAAS,EAAE,CAAC,oCAAsB,CAAC;KACpC,CAAC;GACW,qBAAqB,CAAG;AAM9B,IAAM,8BAA8B,GAApC,MAAM,8BAA8B;CAAG,CAAA;AAAjC,wEAA8B;yCAA9B,8BAA8B;IAJ1C,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,6CAA+B,CAAC;QAC5C,OAAO,EAAE,CAAC,6CAA+B,CAAC;KAC3C,CAAC;GACW,8BAA8B,CAAG"}
@@ -0,0 +1,28 @@
1
+ import { type SendMessageCommandOutput } from '@aws-sdk/client-sqs';
2
+ import { OnApplicationBootstrap } from '@nestjs/common';
3
+ import { DiscoveryService, MetadataScanner, Reflector } from '@nestjs/core';
4
+ import type { ZodType } from '@euler-edu/schema';
5
+ declare abstract class SQSService {
6
+ private readonly queueUrl;
7
+ private readonly schema;
8
+ private readonly logger;
9
+ constructor(queueUrl: string, schema: ZodType);
10
+ send(body: any, options?: {
11
+ delaySeconds?: number;
12
+ }): Promise<SendMessageCommandOutput>;
13
+ }
14
+ export declare class SqsConsumerRootService implements OnApplicationBootstrap {
15
+ private readonly discovery;
16
+ private readonly scanner;
17
+ private readonly reflector;
18
+ private readonly logger;
19
+ private readonly consumers;
20
+ constructor(discovery: DiscoveryService, scanner: MetadataScanner, reflector: Reflector);
21
+ onApplicationBootstrap(): void;
22
+ onApplicationShutdown(): Promise<void>;
23
+ }
24
+ export declare class OjClientSocketEventQueueService extends SQSService {
25
+ constructor();
26
+ }
27
+ export {};
28
+ //# sourceMappingURL=sqs.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqs.service.d.ts","sourceRoot":"","sources":["../../../src/connection/sqs/sqs.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,wBAAwB,EAC9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAsB,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAQjD,uBAAe,UAAU;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;gBAE1C,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IAKvC,IAAI,CACR,IAAI,EAAE,GAAG,EACT,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAClC,OAAO,CAAC,wBAAwB,CAAC;CAuBrC;AAED,qBACa,sBAAuB,YAAW,sBAAsB;IAKjE,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAN5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2C;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;gBAGzB,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,SAAS;IAGvC,sBAAsB;IAuChB,qBAAqB;CAa5B;AAED,qBACa,+BAAgC,SAAQ,UAAU;;CAO9D"}
@@ -0,0 +1,122 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ var SqsConsumerRootService_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.OjClientSocketEventQueueService = exports.SqsConsumerRootService = void 0;
17
+ const client_sqs_1 = require("@aws-sdk/client-sqs");
18
+ const common_1 = require("@nestjs/common");
19
+ const core_1 = require("@nestjs/core");
20
+ const sqs_consumer_1 = require("sqs-consumer");
21
+ const queues_1 = require("@euler-edu/schema/queues");
22
+ const constants_1 = __importDefault(require("@euler-edu/utils/constants"));
23
+ const metadata_1 = require("../../constants/metadata");
24
+ const sqsClient = new client_sqs_1.SQSClient({ region: constants_1.default.secrets.aws.region });
25
+ class SQSService {
26
+ constructor(queueUrl, schema) {
27
+ this.logger = new common_1.Logger(SQSService.name);
28
+ this.queueUrl = queueUrl;
29
+ this.schema = schema;
30
+ }
31
+ async send(body, options) {
32
+ let stringifiedBody;
33
+ try {
34
+ stringifiedBody = JSON.stringify(this.schema.parse(body));
35
+ }
36
+ catch (error) {
37
+ this.logger.error(error);
38
+ throw new Error('Invalid message body');
39
+ }
40
+ try {
41
+ return await sqsClient.send(new client_sqs_1.SendMessageCommand({
42
+ QueueUrl: this.queueUrl,
43
+ MessageBody: stringifiedBody,
44
+ DelaySeconds: options?.delaySeconds ?? 0,
45
+ }));
46
+ }
47
+ catch (error) {
48
+ this.logger.error(error);
49
+ throw new Error('Failed to send message to SQS queue');
50
+ }
51
+ }
52
+ }
53
+ let SqsConsumerRootService = SqsConsumerRootService_1 = class SqsConsumerRootService {
54
+ constructor(discovery, scanner, reflector) {
55
+ this.discovery = discovery;
56
+ this.scanner = scanner;
57
+ this.reflector = reflector;
58
+ this.logger = new common_1.Logger(SqsConsumerRootService_1.name);
59
+ this.consumers = [];
60
+ }
61
+ onApplicationBootstrap() {
62
+ for (const { instance } of this.discovery.getProviders()) {
63
+ if (!instance || typeof instance !== 'object')
64
+ continue;
65
+ const proto = Object.getPrototypeOf(instance);
66
+ for (const name of this.scanner.getAllMethodNames(proto)) {
67
+ const meta = this.reflector.get(metadata_1.sqsConsumerMetadataKey, proto[name]);
68
+ if (!meta)
69
+ continue;
70
+ const consumer = sqs_consumer_1.Consumer.create({
71
+ alwaysAcknowledge: true,
72
+ region: constants_1.default.secrets.aws.region,
73
+ ...meta.options,
74
+ queueUrl: meta.queueUrl,
75
+ handleMessage: async (message) => {
76
+ let body;
77
+ try {
78
+ body = JSON.parse(message.Body ?? '');
79
+ }
80
+ catch {
81
+ this.logger.error(`Failed to parse message body: ${message}, Dropping message.`);
82
+ return;
83
+ }
84
+ await proto[name].call(instance, body, message);
85
+ },
86
+ });
87
+ consumer.on('started', () => this.logger.log(`SQS consumer started : ${meta.queueUrl}`));
88
+ consumer.on('error', error => this.logger.error(error));
89
+ consumer.on('processing_error', error => this.logger.error(error));
90
+ consumer.start();
91
+ this.consumers.push(consumer);
92
+ }
93
+ }
94
+ }
95
+ async onApplicationShutdown() {
96
+ await Promise.all(this.consumers.map(consumer => new Promise(resolve => {
97
+ if (!consumer.status.isRunning)
98
+ return resolve();
99
+ consumer.once('stopped', () => resolve());
100
+ consumer.stop();
101
+ })));
102
+ this.logger.log('SQS consumers stopped');
103
+ }
104
+ };
105
+ exports.SqsConsumerRootService = SqsConsumerRootService;
106
+ exports.SqsConsumerRootService = SqsConsumerRootService = SqsConsumerRootService_1 = __decorate([
107
+ (0, common_1.Injectable)(),
108
+ __metadata("design:paramtypes", [core_1.DiscoveryService,
109
+ core_1.MetadataScanner,
110
+ core_1.Reflector])
111
+ ], SqsConsumerRootService);
112
+ let OjClientSocketEventQueueService = class OjClientSocketEventQueueService extends SQSService {
113
+ constructor() {
114
+ super(constants_1.default.url.sqs.ojClientSocketEventQueueUrl, queues_1.queues.ojClientSocketEventQueue.message);
115
+ }
116
+ };
117
+ exports.OjClientSocketEventQueueService = OjClientSocketEventQueueService;
118
+ exports.OjClientSocketEventQueueService = OjClientSocketEventQueueService = __decorate([
119
+ (0, common_1.Injectable)(),
120
+ __metadata("design:paramtypes", [])
121
+ ], OjClientSocketEventQueueService);
122
+ //# sourceMappingURL=sqs.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqs.service.js","sourceRoot":"","sources":["../../../src/connection/sqs/sqs.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare const authRequiredLevelMetadataKey: unique symbol;
2
+ export declare const authTempMetadataKey: unique symbol;
3
+ export declare const mongoWatchMetadataKey: unique symbol;
4
+ export declare const sqsConsumerMetadataKey: unique symbol;
5
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/constants/metadata.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,4BAA4B,eAA+B,CAAC;AACzE,eAAO,MAAM,mBAAmB,eAAsB,CAAC;AAKvD,eAAO,MAAM,qBAAqB,eAAwB,CAAC;AAK3D,eAAO,MAAM,sBAAsB,eAAyB,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sqsConsumerMetadataKey = exports.mongoWatchMetadataKey = exports.authTempMetadataKey = exports.authRequiredLevelMetadataKey = void 0;
4
+ exports.authRequiredLevelMetadataKey = Symbol('auth-requiredLevel');
5
+ exports.authTempMetadataKey = Symbol('auth-temp');
6
+ exports.mongoWatchMetadataKey = Symbol('mongo-watch');
7
+ exports.sqsConsumerMetadataKey = Symbol('sqs-consumer');
8
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/constants/metadata.ts"],"names":[],"mappings":";;;AAGa,QAAA,4BAA4B,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAC5D,QAAA,mBAAmB,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AAK1C,QAAA,qBAAqB,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;AAK9C,QAAA,sBAAsB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC"}