@maci-protocol/relayer 0.0.0-ci.1e276ed

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 (181) hide show
  1. package/CHANGELOG.md +134 -0
  2. package/LICENSE +22 -0
  3. package/README.md +149 -0
  4. package/build/hardhat.config.cjs +31 -0
  5. package/build/hardhat.config.cjs.map +1 -0
  6. package/build/hardhat.config.d.cts +22 -0
  7. package/build/hardhat.config.d.cts.map +1 -0
  8. package/build/tests/app.test.d.ts +2 -0
  9. package/build/tests/app.test.d.ts.map +1 -0
  10. package/build/tests/app.test.js +30 -0
  11. package/build/tests/app.test.js.map +1 -0
  12. package/build/tests/constants.d.ts +19 -0
  13. package/build/tests/constants.d.ts.map +1 -0
  14. package/build/tests/constants.js +20 -0
  15. package/build/tests/constants.js.map +1 -0
  16. package/build/tests/messageBatches.test.d.ts +2 -0
  17. package/build/tests/messageBatches.test.d.ts.map +1 -0
  18. package/build/tests/messageBatches.test.js +109 -0
  19. package/build/tests/messageBatches.test.js.map +1 -0
  20. package/build/tests/messages.test.d.ts +2 -0
  21. package/build/tests/messages.test.d.ts.map +1 -0
  22. package/build/tests/messages.test.js +147 -0
  23. package/build/tests/messages.test.js.map +1 -0
  24. package/build/tests/onchain.test.d.ts +2 -0
  25. package/build/tests/onchain.test.d.ts.map +1 -0
  26. package/build/tests/onchain.test.js +101 -0
  27. package/build/tests/onchain.test.js.map +1 -0
  28. package/build/ts/app.module.d.ts +3 -0
  29. package/build/ts/app.module.d.ts.map +1 -0
  30. package/build/ts/app.module.js +51 -0
  31. package/build/ts/app.module.js.map +1 -0
  32. package/build/ts/health/__tests__/health.controller.test.d.ts +2 -0
  33. package/build/ts/health/__tests__/health.controller.test.d.ts.map +1 -0
  34. package/build/ts/health/__tests__/health.controller.test.js +22 -0
  35. package/build/ts/health/__tests__/health.controller.test.js.map +1 -0
  36. package/build/ts/health/health.controller.d.ts +10 -0
  37. package/build/ts/health/health.controller.d.ts.map +1 -0
  38. package/build/ts/health/health.controller.js +36 -0
  39. package/build/ts/health/health.controller.js.map +1 -0
  40. package/build/ts/health/health.module.d.ts +3 -0
  41. package/build/ts/health/health.module.d.ts.map +1 -0
  42. package/build/ts/health/health.module.js +17 -0
  43. package/build/ts/health/health.module.js.map +1 -0
  44. package/build/ts/ipfs/__tests__/ipfs.service.test.d.ts +2 -0
  45. package/build/ts/ipfs/__tests__/ipfs.service.test.d.ts.map +1 -0
  46. package/build/ts/ipfs/__tests__/ipfs.service.test.js +23 -0
  47. package/build/ts/ipfs/__tests__/ipfs.service.test.js.map +1 -0
  48. package/build/ts/ipfs/ipfs.module.d.ts +3 -0
  49. package/build/ts/ipfs/ipfs.module.d.ts.map +1 -0
  50. package/build/ts/ipfs/ipfs.module.js +18 -0
  51. package/build/ts/ipfs/ipfs.module.js.map +1 -0
  52. package/build/ts/ipfs/ipfs.service.d.ts +50 -0
  53. package/build/ts/ipfs/ipfs.service.d.ts.map +1 -0
  54. package/build/ts/ipfs/ipfs.service.js +86 -0
  55. package/build/ts/ipfs/ipfs.service.js.map +1 -0
  56. package/build/ts/jest/mongo.d.ts +9 -0
  57. package/build/ts/jest/mongo.d.ts.map +1 -0
  58. package/build/ts/jest/mongo.js +16 -0
  59. package/build/ts/jest/mongo.js.map +1 -0
  60. package/build/ts/jest/setup.d.ts +8 -0
  61. package/build/ts/jest/setup.d.ts.map +1 -0
  62. package/build/ts/jest/setup.js +3 -0
  63. package/build/ts/jest/setup.js.map +1 -0
  64. package/build/ts/jest/transform.d.ts +8 -0
  65. package/build/ts/jest/transform.d.ts.map +1 -0
  66. package/build/ts/jest/transform.js +10 -0
  67. package/build/ts/jest/transform.js.map +1 -0
  68. package/build/ts/main.d.ts +2 -0
  69. package/build/ts/main.d.ts.map +1 -0
  70. package/build/ts/main.js +46 -0
  71. package/build/ts/main.js.map +1 -0
  72. package/build/ts/message/__tests__/message.controller.test.d.ts +2 -0
  73. package/build/ts/message/__tests__/message.controller.test.d.ts.map +1 -0
  74. package/build/ts/message/__tests__/message.controller.test.js +42 -0
  75. package/build/ts/message/__tests__/message.controller.test.js.map +1 -0
  76. package/build/ts/message/__tests__/message.guard.test.d.ts +2 -0
  77. package/build/ts/message/__tests__/message.guard.test.d.ts.map +1 -0
  78. package/build/ts/message/__tests__/message.guard.test.js +98 -0
  79. package/build/ts/message/__tests__/message.guard.test.js.map +1 -0
  80. package/build/ts/message/__tests__/message.repository.test.d.ts +2 -0
  81. package/build/ts/message/__tests__/message.repository.test.d.ts.map +1 -0
  82. package/build/ts/message/__tests__/message.repository.test.js +62 -0
  83. package/build/ts/message/__tests__/message.repository.test.js.map +1 -0
  84. package/build/ts/message/__tests__/message.service.test.d.ts +2 -0
  85. package/build/ts/message/__tests__/message.service.test.d.ts.map +1 -0
  86. package/build/ts/message/__tests__/message.service.test.js +71 -0
  87. package/build/ts/message/__tests__/message.service.test.js.map +1 -0
  88. package/build/ts/message/__tests__/utils.d.ts +6 -0
  89. package/build/ts/message/__tests__/utils.d.ts.map +1 -0
  90. package/build/ts/message/__tests__/utils.js +27 -0
  91. package/build/ts/message/__tests__/utils.js.map +1 -0
  92. package/build/ts/message/__tests__/validation.test.d.ts +2 -0
  93. package/build/ts/message/__tests__/validation.test.d.ts.map +1 -0
  94. package/build/ts/message/__tests__/validation.test.js +21 -0
  95. package/build/ts/message/__tests__/validation.test.js.map +1 -0
  96. package/build/ts/message/message.controller.d.ts +25 -0
  97. package/build/ts/message/message.controller.d.ts.map +1 -0
  98. package/build/ts/message/message.controller.js +66 -0
  99. package/build/ts/message/message.controller.js.map +1 -0
  100. package/build/ts/message/message.dto.d.ts +43 -0
  101. package/build/ts/message/message.dto.d.ts.map +1 -0
  102. package/build/ts/message/message.dto.js +132 -0
  103. package/build/ts/message/message.dto.js.map +1 -0
  104. package/build/ts/message/message.guard.d.ts +33 -0
  105. package/build/ts/message/message.guard.d.ts.map +1 -0
  106. package/build/ts/message/message.guard.js +91 -0
  107. package/build/ts/message/message.guard.js.map +1 -0
  108. package/build/ts/message/message.module.d.ts +3 -0
  109. package/build/ts/message/message.module.d.ts.map +1 -0
  110. package/build/ts/message/message.module.js +24 -0
  111. package/build/ts/message/message.module.js.map +1 -0
  112. package/build/ts/message/message.repository.d.ts +37 -0
  113. package/build/ts/message/message.repository.d.ts.map +1 -0
  114. package/build/ts/message/message.repository.js +77 -0
  115. package/build/ts/message/message.repository.js.map +1 -0
  116. package/build/ts/message/message.schema.d.ts +52 -0
  117. package/build/ts/message/message.schema.d.ts.map +1 -0
  118. package/build/ts/message/message.schema.js +77 -0
  119. package/build/ts/message/message.schema.js.map +1 -0
  120. package/build/ts/message/message.service.d.ts +37 -0
  121. package/build/ts/message/message.service.d.ts.map +1 -0
  122. package/build/ts/message/message.service.js +85 -0
  123. package/build/ts/message/message.service.js.map +1 -0
  124. package/build/ts/message/types.d.ts +35 -0
  125. package/build/ts/message/types.d.ts.map +1 -0
  126. package/build/ts/message/types.js +2 -0
  127. package/build/ts/message/types.js.map +1 -0
  128. package/build/ts/message/validation.d.ts +20 -0
  129. package/build/ts/message/validation.d.ts.map +1 -0
  130. package/build/ts/message/validation.js +41 -0
  131. package/build/ts/message/validation.js.map +1 -0
  132. package/build/ts/messageBatch/__tests__/messageBatch.controller.test.d.ts +2 -0
  133. package/build/ts/messageBatch/__tests__/messageBatch.controller.test.d.ts.map +1 -0
  134. package/build/ts/messageBatch/__tests__/messageBatch.controller.test.js +41 -0
  135. package/build/ts/messageBatch/__tests__/messageBatch.controller.test.js.map +1 -0
  136. package/build/ts/messageBatch/__tests__/messageBatch.repository.test.d.ts +2 -0
  137. package/build/ts/messageBatch/__tests__/messageBatch.repository.test.d.ts.map +1 -0
  138. package/build/ts/messageBatch/__tests__/messageBatch.repository.test.js +55 -0
  139. package/build/ts/messageBatch/__tests__/messageBatch.repository.test.js.map +1 -0
  140. package/build/ts/messageBatch/__tests__/messageBatch.service.test.d.ts +2 -0
  141. package/build/ts/messageBatch/__tests__/messageBatch.service.test.d.ts.map +1 -0
  142. package/build/ts/messageBatch/__tests__/messageBatch.service.test.js +66 -0
  143. package/build/ts/messageBatch/__tests__/messageBatch.service.test.js.map +1 -0
  144. package/build/ts/messageBatch/__tests__/utils.d.ts +5 -0
  145. package/build/ts/messageBatch/__tests__/utils.d.ts.map +1 -0
  146. package/build/ts/messageBatch/__tests__/utils.js +24 -0
  147. package/build/ts/messageBatch/__tests__/utils.js.map +1 -0
  148. package/build/ts/messageBatch/__tests__/validation.test.d.ts +2 -0
  149. package/build/ts/messageBatch/__tests__/validation.test.d.ts.map +1 -0
  150. package/build/ts/messageBatch/__tests__/validation.test.js +20 -0
  151. package/build/ts/messageBatch/__tests__/validation.test.js.map +1 -0
  152. package/build/ts/messageBatch/messageBatch.controller.d.ts +24 -0
  153. package/build/ts/messageBatch/messageBatch.controller.d.ts.map +1 -0
  154. package/build/ts/messageBatch/messageBatch.controller.js +77 -0
  155. package/build/ts/messageBatch/messageBatch.controller.js.map +1 -0
  156. package/build/ts/messageBatch/messageBatch.dto.d.ts +52 -0
  157. package/build/ts/messageBatch/messageBatch.dto.d.ts.map +1 -0
  158. package/build/ts/messageBatch/messageBatch.dto.js +168 -0
  159. package/build/ts/messageBatch/messageBatch.dto.js.map +1 -0
  160. package/build/ts/messageBatch/messageBatch.module.d.ts +3 -0
  161. package/build/ts/messageBatch/messageBatch.module.d.ts.map +1 -0
  162. package/build/ts/messageBatch/messageBatch.module.js +25 -0
  163. package/build/ts/messageBatch/messageBatch.module.js.map +1 -0
  164. package/build/ts/messageBatch/messageBatch.repository.d.ts +39 -0
  165. package/build/ts/messageBatch/messageBatch.repository.d.ts.map +1 -0
  166. package/build/ts/messageBatch/messageBatch.repository.js +72 -0
  167. package/build/ts/messageBatch/messageBatch.repository.js.map +1 -0
  168. package/build/ts/messageBatch/messageBatch.schema.d.ts +36 -0
  169. package/build/ts/messageBatch/messageBatch.schema.d.ts.map +1 -0
  170. package/build/ts/messageBatch/messageBatch.schema.js +45 -0
  171. package/build/ts/messageBatch/messageBatch.schema.js.map +1 -0
  172. package/build/ts/messageBatch/messageBatch.service.d.ts +41 -0
  173. package/build/ts/messageBatch/messageBatch.service.d.ts.map +1 -0
  174. package/build/ts/messageBatch/messageBatch.service.js +107 -0
  175. package/build/ts/messageBatch/messageBatch.service.js.map +1 -0
  176. package/build/ts/messageBatch/validation.d.ts +20 -0
  177. package/build/ts/messageBatch/validation.d.ts.map +1 -0
  178. package/build/ts/messageBatch/validation.js +38 -0
  179. package/build/ts/messageBatch/validation.js.map +1 -0
  180. package/build/tsconfig.build.tsbuildinfo +1 -0
  181. package/package.json +79 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../ts/messageBatch/__tests__/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE7F,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,MAAM,CAAC,MAAM,eAAe,GAAG,gDAAgD,CAAC;AAEhF,MAAM,mBAAmB,GAAG,IAAI,eAAe,EAAE,CAAC;AAClD,MAAM,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;AACrC,cAAc,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACzE,cAAc,CAAC,IAAI,GAAG,GAAG,CAAC;AAC1B,cAAc,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;AACtD,cAAc,CAAC,mBAAmB,GAAG,WAAW,CAAC;AACjD,cAAc,CAAC,IAAI,GAAG,CAAC,CAAC;AACxB,mBAAmB,CAAC,QAAQ,GAAG,CAAC,cAAc,CAAC,CAAC;AAChD,mBAAmB,CAAC,QAAQ,GAAG,eAAe,CAAC;AAE/C,MAAM,CAAC,MAAM,qBAAqB,GAAsB,CAAC,mBAAmB,CAAC,CAAC;AAE9E,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,oBAAoB,EAAE,CAAC;AACtE,2BAA2B,CAAC,KAAK,GAAG,YAAY,CAAC;AACjD,2BAA2B,CAAC,mBAAmB,GAAG,WAAW,CAAC;AAC9D,2BAA2B,CAAC,IAAI,GAAG,CAAC,CAAC;AACrC,2BAA2B,CAAC,UAAU,GAAG,CAAC,eAAe,CAAC,CAAC;AAC3D,2BAA2B,CAAC,aAAa,GAAG,CAAC,GAAG,CAAC,CAAC;AAClD,2BAA2B,CAAC,UAAU,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=validation.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.test.d.ts","sourceRoot":"","sources":["../../../../ts/messageBatch/__tests__/validation.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import { IpfsHashValidator } from "../validation.js";
2
+ import { defaultIpfsHash } from "./utils.js";
3
+ describe("IpfsHashValidator", () => {
4
+ test("should validate valid ipfs hash", () => {
5
+ const validator = new IpfsHashValidator();
6
+ const result = validator.validate(defaultIpfsHash);
7
+ expect(result).toBe(true);
8
+ });
9
+ test("should validate invalid ipfs hash", () => {
10
+ const validator = new IpfsHashValidator();
11
+ const result = validator.validate("invalid");
12
+ expect(result).toBe(false);
13
+ });
14
+ test("should return default message properly", () => {
15
+ const validator = new IpfsHashValidator();
16
+ const result = validator.defaultMessage();
17
+ expect(result).toBe("IPFS hash is invalid");
18
+ });
19
+ });
20
+ //# sourceMappingURL=validation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.test.js","sourceRoot":"","sources":["../../../../ts/messageBatch/__tests__/validation.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC3C,MAAM,SAAS,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAE1C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAEnD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC7C,MAAM,SAAS,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAE1C,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAClD,MAAM,SAAS,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAE1C,MAAM,MAAM,GAAG,SAAS,CAAC,cAAc,EAAE,CAAC;QAE1C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { GetMessageBatchesDto } from "./messageBatch.dto.js";
2
+ import { MessageBatch } from "./messageBatch.schema.js";
3
+ import { MessageBatchService } from "./messageBatch.service.js";
4
+ export declare class MessageBatchController {
5
+ private readonly messageBatchService;
6
+ /**
7
+ * Logger
8
+ */
9
+ private readonly logger;
10
+ /**
11
+ * Initialize MessageBatchController
12
+ *
13
+ * @param messageBatchService message batch service
14
+ */
15
+ constructor(messageBatchService: MessageBatchService);
16
+ /**
17
+ * Fetch message batches api method.
18
+ *
19
+ * @param args fetch arguments
20
+ * @returns message batches
21
+ */
22
+ get(args: GetMessageBatchesDto): Promise<MessageBatch[]>;
23
+ }
24
+ //# sourceMappingURL=messageBatch.controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.controller.d.ts","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.controller.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,qBAEa,sBAAsB;IAWrB,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAVhD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2C;IAElE;;;;OAIG;gBAC0B,mBAAmB,EAAE,mBAAmB;IAErE;;;;;OAKG;IAKG,GAAG,CAAS,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CAyBvE"}
@@ -0,0 +1,77 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ var MessageBatchController_1;
14
+ /* eslint-disable @typescript-eslint/no-shadow */
15
+ import { Body, Controller, Get, HttpException, HttpStatus, Logger } from "@nestjs/common";
16
+ import { ApiBody, ApiResponse, ApiTags } from "@nestjs/swagger";
17
+ import set from "lodash/set.js";
18
+ import { GetMessageBatchesDto } from "./messageBatch.dto.js";
19
+ import { MessageBatchService } from "./messageBatch.service.js";
20
+ let MessageBatchController = MessageBatchController_1 = class MessageBatchController {
21
+ messageBatchService;
22
+ /**
23
+ * Logger
24
+ */
25
+ logger = new Logger(MessageBatchController_1.name);
26
+ /**
27
+ * Initialize MessageBatchController
28
+ *
29
+ * @param messageBatchService message batch service
30
+ */
31
+ constructor(messageBatchService) {
32
+ this.messageBatchService = messageBatchService;
33
+ }
34
+ /**
35
+ * Fetch message batches api method.
36
+ *
37
+ * @param args fetch arguments
38
+ * @returns message batches
39
+ */
40
+ async get(args) {
41
+ const { ipfsHashes, poll, maciContractAddress, publicKeys, messageHashes, limit, skip } = args;
42
+ const filter = {
43
+ poll: { $eq: poll },
44
+ maciContractAddress: { $eq: maciContractAddress },
45
+ };
46
+ if (ipfsHashes) {
47
+ set(filter, "ipfsHash.$in", ipfsHashes);
48
+ }
49
+ if (publicKeys) {
50
+ set(filter, "messages.$elemMatch.publicKey.$in", publicKeys);
51
+ }
52
+ if (messageHashes) {
53
+ set(filter, "messages.$elemMatch.hash.$in", messageHashes);
54
+ }
55
+ return this.messageBatchService.findMessageBatches(filter, { limit, skip }).catch((error) => {
56
+ this.logger.error(`Error:`, error);
57
+ throw new HttpException(error.message, HttpStatus.BAD_REQUEST);
58
+ });
59
+ }
60
+ };
61
+ __decorate([
62
+ ApiBody({ type: GetMessageBatchesDto }),
63
+ ApiResponse({ status: HttpStatus.OK, description: "The message batches have been successfully returned" }),
64
+ ApiResponse({ status: HttpStatus.BAD_REQUEST, description: "BadRequest" }),
65
+ Get("get"),
66
+ __param(0, Body()),
67
+ __metadata("design:type", Function),
68
+ __metadata("design:paramtypes", [GetMessageBatchesDto]),
69
+ __metadata("design:returntype", Promise)
70
+ ], MessageBatchController.prototype, "get", null);
71
+ MessageBatchController = MessageBatchController_1 = __decorate([
72
+ ApiTags("v1/messageBatches"),
73
+ Controller("v1/messageBatches"),
74
+ __metadata("design:paramtypes", [MessageBatchService])
75
+ ], MessageBatchController);
76
+ export { MessageBatchController };
77
+ //# sourceMappingURL=messageBatch.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.controller.js","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,iDAAiD;AACjD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC1F,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,GAAG,MAAM,eAAe,CAAC;AAEhC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAIzD,IAAM,sBAAsB,8BAA5B,MAAM,sBAAsB;IAWJ;IAV7B;;OAEG;IACc,MAAM,GAAG,IAAI,MAAM,CAAC,wBAAsB,CAAC,IAAI,CAAC,CAAC;IAElE;;;;OAIG;IACH,YAA6B,mBAAwC;QAAxC,wBAAmB,GAAnB,mBAAmB,CAAqB;IAAG,CAAC;IAEzE;;;;;OAKG;IAKG,AAAN,KAAK,CAAC,GAAG,CAAS,IAA0B;QAC1C,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QAE/F,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;YACnB,mBAAmB,EAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE;SAClD,CAAC;QAEF,IAAI,UAAU,EAAE,CAAC;YACf,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,GAAG,CAAC,MAAM,EAAE,mCAAmC,EAAE,UAAU,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,GAAG,CAAC,MAAM,EAAE,8BAA8B,EAAE,aAAa,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;YACjG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACnC,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAzBO;IAJL,OAAO,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,WAAW,EAAE,qDAAqD,EAAE,CAAC;IAC1G,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;IAC1E,GAAG,CAAC,KAAK,CAAC;IACA,WAAA,IAAI,EAAE,CAAA;;qCAAO,oBAAoB;;iDAwB3C;AA/CU,sBAAsB;IAFlC,OAAO,CAAC,mBAAmB,CAAC;IAC5B,UAAU,CAAC,mBAAmB,CAAC;qCAYoB,mBAAmB;GAX1D,sBAAsB,CAgDlC"}
@@ -0,0 +1,52 @@
1
+ import { Message } from "../message/message.schema.js";
2
+ /**
3
+ * Max messages per batch
4
+ */
5
+ export declare const MAX_MESSAGES: number;
6
+ /**
7
+ * Data transfer object for message batch
8
+ */
9
+ export declare class MessageBatchDto {
10
+ /**
11
+ * Messages
12
+ */
13
+ messages: Message[];
14
+ /**
15
+ * IPFS hash
16
+ */
17
+ ipfsHash: string;
18
+ }
19
+ /**
20
+ * Data transfer object for getting message batches
21
+ */
22
+ export declare class GetMessageBatchesDto {
23
+ /**
24
+ * Limit
25
+ */
26
+ limit: number;
27
+ /**
28
+ * Skip
29
+ */
30
+ skip: number;
31
+ /**
32
+ * Poll id
33
+ */
34
+ poll: number;
35
+ /**
36
+ * Maci contract address
37
+ */
38
+ maciContractAddress: string;
39
+ /**
40
+ * IPFS hashes
41
+ */
42
+ ipfsHashes?: string[];
43
+ /**
44
+ * Public key
45
+ */
46
+ publicKeys?: string[];
47
+ /**
48
+ * Message hashes
49
+ */
50
+ messageHashes?: string[];
51
+ }
52
+ //# sourceMappingURL=messageBatch.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.dto.d.ts","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.dto.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAKvD;;GAEG;AACH,eAAO,MAAM,YAAY,QAAmC,CAAC;AAE7D;;GAEG;AACH,qBAAa,eAAe;IAC1B;;OAEG;IASH,QAAQ,EAAG,OAAO,EAAE,CAAC;IAErB;;OAEG;IAMH,QAAQ,EAAG,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAC/B;;OAEG;IAUH,KAAK,EAAG,MAAM,CAAC;IAEf;;OAEG;IASH,IAAI,EAAG,MAAM,CAAC;IAEd;;OAEG;IAQH,IAAI,EAAG,MAAM,CAAC;IAEd;;OAEG;IAMH,mBAAmB,EAAG,MAAM,CAAC;IAE7B;;OAEG;IAaH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB;;OAEG;IAaH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB;;OAEG;IAYH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B"}
@@ -0,0 +1,168 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { ApiProperty } from "@nestjs/swagger";
11
+ import { IsArray, ArrayMinSize, ArrayMaxSize, ValidateNested, Validate, IsInt, IsPositive, Max, IsEthereumAddress, Min, IsOptional, IsString, MaxLength, MinLength, } from "class-validator";
12
+ import { PublicKeyValidator } from "../message/validation.js";
13
+ import { IpfsHashValidator } from "./validation.js";
14
+ /**
15
+ * Max messages per batch
16
+ */
17
+ export const MAX_MESSAGES = Number(process.env.MAX_MESSAGES);
18
+ /**
19
+ * Data transfer object for message batch
20
+ */
21
+ export class MessageBatchDto {
22
+ /**
23
+ * Messages
24
+ */
25
+ messages;
26
+ /**
27
+ * IPFS hash
28
+ */
29
+ ipfsHash;
30
+ }
31
+ __decorate([
32
+ ApiProperty({
33
+ description: "Messages",
34
+ type: [String],
35
+ }),
36
+ IsArray(),
37
+ ArrayMinSize(1),
38
+ ArrayMaxSize(MAX_MESSAGES),
39
+ ValidateNested({ each: true }),
40
+ __metadata("design:type", Array)
41
+ ], MessageBatchDto.prototype, "messages", void 0);
42
+ __decorate([
43
+ ApiProperty({
44
+ description: "IPFS hash",
45
+ type: String,
46
+ }),
47
+ Validate(IpfsHashValidator),
48
+ __metadata("design:type", String)
49
+ ], MessageBatchDto.prototype, "ipfsHash", void 0);
50
+ /**
51
+ * Data transfer object for getting message batches
52
+ */
53
+ export class GetMessageBatchesDto {
54
+ /**
55
+ * Limit
56
+ */
57
+ limit;
58
+ /**
59
+ * Skip
60
+ */
61
+ skip;
62
+ /**
63
+ * Poll id
64
+ */
65
+ poll;
66
+ /**
67
+ * Maci contract address
68
+ */
69
+ maciContractAddress;
70
+ /**
71
+ * IPFS hashes
72
+ */
73
+ ipfsHashes;
74
+ /**
75
+ * Public key
76
+ */
77
+ publicKeys;
78
+ /**
79
+ * Message hashes
80
+ */
81
+ messageHashes;
82
+ }
83
+ __decorate([
84
+ ApiProperty({
85
+ description: "Limit",
86
+ minimum: 1,
87
+ maximum: MAX_MESSAGES,
88
+ type: Number,
89
+ }),
90
+ IsInt(),
91
+ IsPositive(),
92
+ Max(MAX_MESSAGES),
93
+ __metadata("design:type", Number)
94
+ ], GetMessageBatchesDto.prototype, "limit", void 0);
95
+ __decorate([
96
+ ApiProperty({
97
+ description: "Limit",
98
+ minimum: 0,
99
+ maximum: MAX_MESSAGES,
100
+ type: Number,
101
+ }),
102
+ IsInt(),
103
+ Min(0),
104
+ __metadata("design:type", Number)
105
+ ], GetMessageBatchesDto.prototype, "skip", void 0);
106
+ __decorate([
107
+ ApiProperty({
108
+ description: "Poll id",
109
+ minimum: 0,
110
+ type: Number,
111
+ }),
112
+ IsInt(),
113
+ Min(0),
114
+ __metadata("design:type", Number)
115
+ ], GetMessageBatchesDto.prototype, "poll", void 0);
116
+ __decorate([
117
+ ApiProperty({
118
+ description: "MACI contract address",
119
+ type: String,
120
+ }),
121
+ IsEthereumAddress(),
122
+ __metadata("design:type", String)
123
+ ], GetMessageBatchesDto.prototype, "maciContractAddress", void 0);
124
+ __decorate([
125
+ ApiProperty({
126
+ description: "IPFS hashes",
127
+ type: [String],
128
+ }),
129
+ IsOptional(),
130
+ IsArray(),
131
+ IsString({ each: true }),
132
+ MinLength(1, { each: true }),
133
+ MaxLength(256, { each: true }),
134
+ ArrayMinSize(1),
135
+ ArrayMaxSize(MAX_MESSAGES),
136
+ Validate(IpfsHashValidator, { each: true }),
137
+ __metadata("design:type", Array)
138
+ ], GetMessageBatchesDto.prototype, "ipfsHashes", void 0);
139
+ __decorate([
140
+ ApiProperty({
141
+ description: "Public key",
142
+ type: String,
143
+ }),
144
+ IsOptional(),
145
+ IsArray(),
146
+ IsString({ each: true }),
147
+ MinLength(1, { each: true }),
148
+ MaxLength(256, { each: true }),
149
+ ArrayMinSize(1),
150
+ ArrayMaxSize(MAX_MESSAGES),
151
+ Validate(PublicKeyValidator, { each: true }),
152
+ __metadata("design:type", Array)
153
+ ], GetMessageBatchesDto.prototype, "publicKeys", void 0);
154
+ __decorate([
155
+ ApiProperty({
156
+ description: "Message hashes",
157
+ type: [String],
158
+ }),
159
+ IsOptional(),
160
+ IsArray(),
161
+ IsString({ each: true }),
162
+ MinLength(1, { each: true }),
163
+ MaxLength(256, { each: true }),
164
+ ArrayMinSize(1),
165
+ ArrayMaxSize(MAX_MESSAGES),
166
+ __metadata("design:type", Array)
167
+ ], GetMessageBatchesDto.prototype, "messageHashes", void 0);
168
+ //# sourceMappingURL=messageBatch.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.dto.js","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.dto.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare class MessageBatchModule {
2
+ }
3
+ //# sourceMappingURL=messageBatch.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.module.d.ts","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.module.ts"],"names":[],"mappings":"AAUA,qBAMa,kBAAkB;CAAG"}
@@ -0,0 +1,25 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Module } from "@nestjs/common";
8
+ import { MongooseModule } from "@nestjs/mongoose";
9
+ import { IpfsModule } from "../ipfs/ipfs.module.js";
10
+ import { MessageBatchController } from "./messageBatch.controller.js";
11
+ import { MessageBatchRepository } from "./messageBatch.repository.js";
12
+ import { MessageBatch, MessageBatchSchema } from "./messageBatch.schema.js";
13
+ import { MessageBatchService } from "./messageBatch.service.js";
14
+ let MessageBatchModule = class MessageBatchModule {
15
+ };
16
+ MessageBatchModule = __decorate([
17
+ Module({
18
+ imports: [MongooseModule.forFeature([{ name: MessageBatch.name, schema: MessageBatchSchema }]), IpfsModule],
19
+ exports: [MessageBatchService],
20
+ controllers: [MessageBatchController],
21
+ providers: [MessageBatchService, MessageBatchRepository],
22
+ })
23
+ ], MessageBatchModule);
24
+ export { MessageBatchModule };
25
+ //# sourceMappingURL=messageBatch.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.module.js","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAQzD,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAG,CAAA;AAArB,kBAAkB;IAN9B,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC;QAC3G,OAAO,EAAE,CAAC,mBAAmB,CAAC;QAC9B,WAAW,EAAE,CAAC,sBAAsB,CAAC;QACrC,SAAS,EAAE,CAAC,mBAAmB,EAAE,sBAAsB,CAAC;KACzD,CAAC;GACW,kBAAkB,CAAG"}
@@ -0,0 +1,39 @@
1
+ import { Model, RootFilterQuery } from "mongoose";
2
+ import { MessageBatchDto } from "./messageBatch.dto.js";
3
+ import { MessageBatch } from "./messageBatch.schema.js";
4
+ /**
5
+ * Message batch repository is used to interact with the message batch collection
6
+ */
7
+ export declare class MessageBatchRepository {
8
+ private MessageBatchModel;
9
+ /**
10
+ * Logger
11
+ */
12
+ private readonly logger;
13
+ /**
14
+ * Initializes the message batch repository
15
+ *
16
+ * @param MessageBatchModel message batch model
17
+ */
18
+ constructor(MessageBatchModel: Model<MessageBatch>);
19
+ /**
20
+ * Create message batch from messages and ipfs hash
21
+ *
22
+ * @param messages messages
23
+ * @param ipfsHash ipfs hash
24
+ * @returns inserted message batch
25
+ */
26
+ create(dto: MessageBatchDto[]): Promise<MessageBatch[]>;
27
+ /**
28
+ * Find message batches with filter query
29
+ *
30
+ * @param filter filter query
31
+ * @param limit limit
32
+ * @returns message batches
33
+ */
34
+ find(filter: RootFilterQuery<MessageBatch>, { limit, skip }?: Partial<{
35
+ limit: number;
36
+ skip: number;
37
+ }>): Promise<MessageBatch[]>;
38
+ }
39
+ //# sourceMappingURL=messageBatch.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.repository.d.ts","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.repository.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAyB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE/E;;GAEG;AACH,qBACa,sBAAsB;IAWW,OAAO,CAAC,iBAAiB;IAVrE;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;IAE1E;;;;OAIG;gBACiD,iBAAiB,EAAE,KAAK,CAAC,YAAY,CAAC;IAE1F;;;;;;OAMG;IACG,MAAM,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAO7D;;;;;;OAMG;IACG,IAAI,CACR,MAAM,EAAE,eAAe,CAAC,YAAY,CAAC,EACrC,EAAE,KAA6B,EAAE,IAAQ,EAAE,GAAE,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAM,GACzF,OAAO,CAAC,YAAY,EAAE,CAAC;CAU3B"}
@@ -0,0 +1,72 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ var MessageBatchRepository_1;
14
+ import { Injectable, Logger } from "@nestjs/common";
15
+ import { InjectModel } from "@nestjs/mongoose";
16
+ import { Model } from "mongoose";
17
+ import { MESSAGE_BATCHES_LIMIT, MessageBatch } from "./messageBatch.schema.js";
18
+ /**
19
+ * Message batch repository is used to interact with the message batch collection
20
+ */
21
+ let MessageBatchRepository = MessageBatchRepository_1 = class MessageBatchRepository {
22
+ MessageBatchModel;
23
+ /**
24
+ * Logger
25
+ */
26
+ logger = new Logger(MessageBatchRepository_1.name);
27
+ /**
28
+ * Initializes the message batch repository
29
+ *
30
+ * @param MessageBatchModel message batch model
31
+ */
32
+ constructor(MessageBatchModel) {
33
+ this.MessageBatchModel = MessageBatchModel;
34
+ }
35
+ /**
36
+ * Create message batch from messages and ipfs hash
37
+ *
38
+ * @param messages messages
39
+ * @param ipfsHash ipfs hash
40
+ * @returns inserted message batch
41
+ */
42
+ async create(dto) {
43
+ return this.MessageBatchModel.insertMany(dto).catch((error) => {
44
+ this.logger.error(`Create message batch error:`, error);
45
+ throw error;
46
+ });
47
+ }
48
+ /**
49
+ * Find message batches with filter query
50
+ *
51
+ * @param filter filter query
52
+ * @param limit limit
53
+ * @returns message batches
54
+ */
55
+ async find(filter, { limit = MESSAGE_BATCHES_LIMIT, skip = 0 } = {}) {
56
+ return this.MessageBatchModel.find(filter)
57
+ .limit(limit)
58
+ .skip(skip)
59
+ .exec()
60
+ .catch((error) => {
61
+ this.logger.error(`Find message batches error:`, error);
62
+ throw error;
63
+ });
64
+ }
65
+ };
66
+ MessageBatchRepository = MessageBatchRepository_1 = __decorate([
67
+ Injectable(),
68
+ __param(0, InjectModel(MessageBatch.name)),
69
+ __metadata("design:paramtypes", [Model])
70
+ ], MessageBatchRepository);
71
+ export { MessageBatchRepository };
72
+ //# sourceMappingURL=messageBatch.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.repository.js","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAmB,MAAM,UAAU,CAAC;AAGlD,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE/E;;GAEG;AAEI,IAAM,sBAAsB,8BAA5B,MAAM,sBAAsB;IAWmB;IAVpD;;OAEG;IACc,MAAM,GAAW,IAAI,MAAM,CAAC,wBAAsB,CAAC,IAAI,CAAC,CAAC;IAE1E;;;;OAIG;IACH,YAAoD,iBAAsC;QAAtC,sBAAiB,GAAjB,iBAAiB,CAAqB;IAAG,CAAC;IAE9F;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,GAAsB;QACjC,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YACxD,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,CACR,MAAqC,EACrC,EAAE,KAAK,GAAG,qBAAqB,EAAE,IAAI,GAAG,CAAC,KAA+C,EAAE;QAE1F,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;aACvC,KAAK,CAAC,KAAK,CAAC;aACZ,IAAI,CAAC,IAAI,CAAC;aACV,IAAI,EAAE;aACN,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YACxD,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC;CACF,CAAA;AA/CY,sBAAsB;IADlC,UAAU,EAAE;IAYE,WAAA,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;qCAA4B,KAAK;GAXjE,sBAAsB,CA+ClC"}
@@ -0,0 +1,36 @@
1
+ import mongoose, { HydratedDocument } from "mongoose";
2
+ import type { Message } from "../message/message.schema.js";
3
+ /**
4
+ * Message batch document type
5
+ */
6
+ export type MessageBatchDocument = HydratedDocument<MessageBatch>;
7
+ /**
8
+ * Message batches limit
9
+ */
10
+ export declare const MESSAGE_BATCHES_LIMIT = 1;
11
+ /**
12
+ * Message batch model
13
+ */
14
+ export declare class MessageBatch {
15
+ /**
16
+ * Messages
17
+ */
18
+ messages: Message[];
19
+ /**
20
+ * IPFS hash
21
+ */
22
+ ipfsHash: string;
23
+ }
24
+ /**
25
+ * Message batch schema
26
+ */
27
+ export declare const MessageBatchSchema: mongoose.Schema<MessageBatch, mongoose.Model<MessageBatch, any, any, any, mongoose.Document<unknown, any, MessageBatch> & MessageBatch & {
28
+ _id: mongoose.Types.ObjectId;
29
+ } & {
30
+ __v: number;
31
+ }, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, MessageBatch, mongoose.Document<unknown, {}, mongoose.FlatRecord<MessageBatch>> & mongoose.FlatRecord<MessageBatch> & {
32
+ _id: mongoose.Types.ObjectId;
33
+ } & {
34
+ __v: number;
35
+ }>;
36
+ //# sourceMappingURL=messageBatch.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.schema.d.ts","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.schema.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,EAAE,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC;;GAEG;AACH,qBACa,YAAY;IACvB;;OAEG;IAEH,QAAQ,EAAG,OAAO,EAAE,CAAC;IAErB;;OAEG;IAEH,QAAQ,EAAG,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;EAA6C,CAAC"}
@@ -0,0 +1,45 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Prop, Schema, SchemaFactory } from "@nestjs/mongoose";
11
+ import mongoose from "mongoose";
12
+ /**
13
+ * Message batches limit
14
+ */
15
+ export const MESSAGE_BATCHES_LIMIT = 1;
16
+ /**
17
+ * Message batch model
18
+ */
19
+ let MessageBatch = class MessageBatch {
20
+ /**
21
+ * Messages
22
+ */
23
+ messages;
24
+ /**
25
+ * IPFS hash
26
+ */
27
+ ipfsHash;
28
+ };
29
+ __decorate([
30
+ Prop({ type: [{ type: mongoose.Schema.Types.ObjectId, ref: "Message" }], required: true }),
31
+ __metadata("design:type", Array)
32
+ ], MessageBatch.prototype, "messages", void 0);
33
+ __decorate([
34
+ Prop({ required: true }),
35
+ __metadata("design:type", String)
36
+ ], MessageBatch.prototype, "ipfsHash", void 0);
37
+ MessageBatch = __decorate([
38
+ Schema()
39
+ ], MessageBatch);
40
+ export { MessageBatch };
41
+ /**
42
+ * Message batch schema
43
+ */
44
+ export const MessageBatchSchema = SchemaFactory.createForClass(MessageBatch);
45
+ //# sourceMappingURL=messageBatch.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageBatch.schema.js","sourceRoot":"","sources":["../../../ts/messageBatch/messageBatch.schema.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,QAA8B,MAAM,UAAU,CAAC;AAStD;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEvC;;GAEG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAY;IACvB;;OAEG;IAEH,QAAQ,CAAa;IAErB;;OAEG;IAEH,QAAQ,CAAU;CACnB,CAAA;AAPC;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACtE;AAMrB;IADC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACP;AAXP,YAAY;IADxB,MAAM,EAAE;GACI,YAAY,CAYxB;;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC"}