@socket.tech/dl-common 1.0.6 → 1.0.7

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 (183) hide show
  1. package/dist/dl-common/constants/confirmations.d.ts +5 -0
  2. package/dist/dl-common/constants/confirmations.js +17 -0
  3. package/dist/dl-common/constants/enums.d.ts +44 -0
  4. package/dist/dl-common/constants/enums.js +52 -0
  5. package/dist/dl-common/constants/index.d.ts +3 -0
  6. package/dist/dl-common/constants/index.js +19 -0
  7. package/dist/dl-common/constants/types.d.ts +126 -0
  8. package/dist/dl-common/constants/types.js +45 -0
  9. package/dist/dl-common/constants/waitTime.d.ts +8 -0
  10. package/dist/dl-common/constants/waitTime.js +49 -0
  11. package/dist/dl-common/index.d.ts +4 -0
  12. package/dist/dl-common/index.js +20 -0
  13. package/dist/dl-common/models/attestSignature.d.ts +35 -0
  14. package/dist/dl-common/models/attestSignature.js +53 -0
  15. package/dist/dl-common/models/attestation.d.ts +70 -0
  16. package/dist/dl-common/models/attestation.js +86 -0
  17. package/dist/dl-common/models/index.d.ts +7 -0
  18. package/dist/dl-common/models/index.js +23 -0
  19. package/dist/dl-common/models/lastBlock.d.ts +28 -0
  20. package/dist/dl-common/models/lastBlock.js +27 -0
  21. package/dist/dl-common/models/message.d.ts +166 -0
  22. package/dist/dl-common/models/message.js +183 -0
  23. package/dist/dl-common/models/packet.d.ts +241 -0
  24. package/dist/dl-common/models/packet.js +250 -0
  25. package/dist/dl-common/models/proposal.d.ts +127 -0
  26. package/dist/dl-common/models/proposal.js +141 -0
  27. package/dist/dl-common/models/switchboard.d.ts +69 -0
  28. package/dist/dl-common/models/switchboard.js +92 -0
  29. package/dist/dl-common/models/transaction.d.ts +0 -0
  30. package/dist/dl-common/models/transaction.js +280 -0
  31. package/dist/dl-common/services/cacheService.d.ts +14 -0
  32. package/dist/dl-common/services/cacheService.js +77 -0
  33. package/dist/dl-common/services/eventBridgeService.d.ts +8 -0
  34. package/dist/dl-common/services/eventBridgeService.js +40 -0
  35. package/dist/dl-common/services/index.d.ts +3 -0
  36. package/dist/dl-common/services/index.js +20 -0
  37. package/dist/dl-common/services/queueService.d.ts +10 -0
  38. package/dist/dl-common/services/queueService.js +62 -0
  39. package/dist/dl-common/utils/address.d.ts +2 -0
  40. package/dist/dl-common/utils/address.js +8 -0
  41. package/dist/dl-common/utils/axios.d.ts +2 -0
  42. package/dist/dl-common/utils/axios.js +54 -0
  43. package/dist/dl-common/utils/dataStructHelper.d.ts +2 -0
  44. package/dist/dl-common/utils/dataStructHelper.js +10 -0
  45. package/dist/dl-common/utils/discord.d.ts +2 -0
  46. package/dist/dl-common/utils/discord.js +35 -0
  47. package/dist/dl-common/utils/ethersAwsKmsSigner.d.ts +2 -0
  48. package/dist/dl-common/utils/ethersAwsKmsSigner.js +26 -0
  49. package/dist/dl-common/utils/eventGetter.d.ts +4 -0
  50. package/dist/dl-common/utils/eventGetter.js +50 -0
  51. package/dist/dl-common/utils/extraUtils.d.ts +32 -0
  52. package/dist/dl-common/utils/extraUtils.js +103 -0
  53. package/dist/dl-common/utils/idUtils.d.ts +14 -0
  54. package/dist/dl-common/utils/idUtils.js +50 -0
  55. package/dist/dl-common/utils/index.d.ts +13 -0
  56. package/dist/dl-common/utils/index.js +29 -0
  57. package/dist/dl-common/utils/relaySigner.d.ts +21 -0
  58. package/dist/dl-common/utils/relaySigner.js +68 -0
  59. package/dist/dl-common/utils/s3Service.d.ts +5 -0
  60. package/dist/dl-common/utils/s3Service.js +45 -0
  61. package/dist/dl-common/utils/secretManagerService.d.ts +2 -0
  62. package/dist/dl-common/utils/secretManagerService.js +33 -0
  63. package/dist/dl-common/utils/signer/adapter.d.ts +18 -0
  64. package/dist/dl-common/utils/signer/adapter.js +71 -0
  65. package/dist/dl-common/utils/signer/address.d.ts +10 -0
  66. package/dist/dl-common/utils/signer/address.js +42 -0
  67. package/dist/dl-common/utils/signer/asn1-parser.d.ts +11 -0
  68. package/dist/dl-common/utils/signer/asn1-parser.js +80 -0
  69. package/dist/dl-common/utils/signer/crypto.d.ts +6 -0
  70. package/dist/dl-common/utils/signer/crypto.js +34 -0
  71. package/dist/dl-common/utils/signer/index.d.ts +4 -0
  72. package/dist/dl-common/utils/signer/index.js +20 -0
  73. package/dist/dl-common/utils/signer/kms-ethers-signer.d.ts +19 -0
  74. package/dist/dl-common/utils/signer/kms-ethers-signer.js +32 -0
  75. package/dist/dl-common/utils/signer/kms-signer.d.ts +14 -0
  76. package/dist/dl-common/utils/signer/kms-signer.js +46 -0
  77. package/dist/dl-common/utils/signer/signature.d.ts +17 -0
  78. package/dist/dl-common/utils/signer/signature.js +65 -0
  79. package/dist/dl-common/utils/signer/signer.d.ts +7 -0
  80. package/dist/dl-common/utils/signer/signer.js +2 -0
  81. package/dist/dl-common/utils/time.d.ts +2 -0
  82. package/dist/dl-common/utils/time.js +7 -0
  83. package/dist/index.js +30 -14
  84. package/dist/src/constants/batcherModes.d.ts +7 -0
  85. package/dist/src/constants/batcherModes.js +56 -0
  86. package/dist/src/constants/config.d.ts +39 -0
  87. package/dist/src/constants/config.js +77 -0
  88. package/dist/src/constants/enums.d.ts +21 -0
  89. package/dist/src/constants/enums.js +27 -0
  90. package/dist/src/constants/gasEstimation.d.ts +8 -0
  91. package/dist/src/constants/gasEstimation.js +61 -0
  92. package/dist/src/constants/index.d.ts +11 -0
  93. package/dist/src/constants/index.js +28 -0
  94. package/dist/src/constants/limits.d.ts +21 -0
  95. package/dist/src/constants/limits.js +91 -0
  96. package/dist/src/constants/prometheus.config.d.ts +43 -0
  97. package/dist/src/constants/prometheus.config.js +316 -0
  98. package/dist/src/constants/relayer.d.ts +6 -0
  99. package/dist/src/constants/relayer.js +15 -0
  100. package/dist/src/constants/s3Config.d.ts +13 -0
  101. package/dist/src/constants/s3Config.js +61 -0
  102. package/dist/src/constants/stageConfig.d.ts +7 -0
  103. package/dist/src/constants/stageConfig.js +24 -0
  104. package/dist/src/constants/types.d.ts +45 -0
  105. package/dist/src/constants/types.js +2 -0
  106. package/dist/src/constants/watchers.d.ts +15 -0
  107. package/dist/src/constants/watchers.js +137 -0
  108. package/dist/src/controllers/index.d.ts +0 -0
  109. package/dist/src/controllers/index.js +3 -0
  110. package/dist/src/db/associations.d.ts +1 -0
  111. package/dist/src/db/associations.js +46 -0
  112. package/dist/src/db/connection.d.ts +4 -0
  113. package/dist/src/db/connection.js +73 -0
  114. package/dist/src/db/index.d.ts +2 -0
  115. package/dist/src/db/index.js +18 -0
  116. package/dist/src/db/init.d.ts +2 -0
  117. package/dist/src/db/init.js +27 -0
  118. package/dist/src/handlers/common.d.ts +2 -0
  119. package/dist/src/handlers/common.js +59 -0
  120. package/dist/src/handlers/cronHandler.d.ts +10 -0
  121. package/dist/src/handlers/cronHandler.js +268 -0
  122. package/dist/src/handlers/executeHandler.d.ts +3 -0
  123. package/dist/src/handlers/executeHandler.js +66 -0
  124. package/dist/src/handlers/handler.d.ts +2 -0
  125. package/dist/src/handlers/handler.js +29 -0
  126. package/dist/src/handlers/proposeHandler.d.ts +3 -0
  127. package/dist/src/handlers/proposeHandler.js +69 -0
  128. package/dist/src/handlers/routes.d.ts +2 -0
  129. package/dist/src/handlers/routes.js +26 -0
  130. package/dist/src/handlers/sealHandler.d.ts +4 -0
  131. package/dist/src/handlers/sealHandler.js +245 -0
  132. package/dist/src/handlers/statusHandler.d.ts +5 -0
  133. package/dist/src/handlers/statusHandler.js +116 -0
  134. package/dist/src/handlers/taskHandler.d.ts +2 -0
  135. package/dist/src/handlers/taskHandler.js +110 -0
  136. package/dist/src/handlers/testHandler.d.ts +4 -0
  137. package/dist/src/handlers/testHandler.js +99 -0
  138. package/dist/src/main.d.ts +0 -0
  139. package/dist/src/main.js +12 -0
  140. package/dist/src/relayers/common.d.ts +7 -0
  141. package/dist/src/relayers/common.js +55 -0
  142. package/dist/src/relayers/index.d.ts +2 -0
  143. package/dist/src/relayers/index.js +19 -0
  144. package/dist/src/relayers/proposeRelayer.d.ts +7 -0
  145. package/dist/src/relayers/proposeRelayer.js +587 -0
  146. package/dist/src/relayers/sealRelayer.d.ts +8 -0
  147. package/dist/src/relayers/sealRelayer.js +276 -0
  148. package/dist/src/services/attestService.d.ts +45 -0
  149. package/dist/src/services/attestService.js +269 -0
  150. package/dist/src/services/batcherService.d.ts +9 -0
  151. package/dist/src/services/batcherService.js +197 -0
  152. package/dist/src/services/executeService.d.ts +16 -0
  153. package/dist/src/services/executeService.js +209 -0
  154. package/dist/src/services/gasEstimationService.d.ts +3 -0
  155. package/dist/src/services/gasEstimationService.js +12 -0
  156. package/dist/src/services/index.d.ts +4 -0
  157. package/dist/src/services/index.js +23 -0
  158. package/dist/src/services/indexSealService.d.ts +15 -0
  159. package/dist/src/services/indexSealService.js +120 -0
  160. package/dist/src/services/proposalCheckService.d.ts +9 -0
  161. package/dist/src/services/proposalCheckService.js +119 -0
  162. package/dist/src/services/sealService.d.ts +27 -0
  163. package/dist/src/services/sealService.js +190 -0
  164. package/dist/src/statusTrackers/failedMessage.d.ts +8 -0
  165. package/dist/src/statusTrackers/failedMessage.js +72 -0
  166. package/dist/src/statusTrackers/failedPacket.d.ts +13 -0
  167. package/dist/src/statusTrackers/failedPacket.js +110 -0
  168. package/dist/src/statusTrackers/index.d.ts +3 -0
  169. package/dist/src/statusTrackers/index.js +26 -0
  170. package/dist/src/statusTrackers/message.d.ts +4 -0
  171. package/dist/src/statusTrackers/message.js +257 -0
  172. package/dist/src/statusTrackers/packet.d.ts +33 -0
  173. package/dist/src/statusTrackers/packet.js +477 -0
  174. package/dist/src/utils/chain-utils.d.ts +5 -0
  175. package/dist/src/utils/chain-utils.js +42 -0
  176. package/dist/src/utils/index.d.ts +2 -0
  177. package/dist/src/utils/index.js +18 -0
  178. package/dist/src/utils/logger.d.ts +9 -0
  179. package/dist/src/utils/logger.js +9 -0
  180. package/dist/utils/s3Service.js +1 -1
  181. package/dist/utils/signer/socketSigner.d.ts +32 -0
  182. package/dist/utils/signer/socketSigner.js +121 -0
  183. package/package.json +1 -1
@@ -0,0 +1,268 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.setCronSpeedHandler = exports.cronHandler = exports.setCronSpeed = exports.getCronSpeed = void 0;
27
+ const utils_1 = require("../utils");
28
+ const common_1 = require("./common");
29
+ const executeService_1 = require("../services/executeService");
30
+ const cacheService = __importStar(require("../../dl-common/services/cacheService"));
31
+ const relayers_1 = require("../relayers");
32
+ const statusTrackers_1 = require("../statusTrackers");
33
+ const constants_1 = require("../constants");
34
+ const dl_common_1 = require("../../dl-common");
35
+ const ll_common_1 = require("@socket.tech/ll-common");
36
+ const isTimeToExecute = async (taskName, cronPeriod) => {
37
+ try {
38
+ const redisKey = "cron_" + taskName;
39
+ const flag = await cacheService.getKey(redisKey);
40
+ if (flag)
41
+ return false;
42
+ await cacheService.setKey(redisKey, "true", cronPeriod);
43
+ return true;
44
+ }
45
+ catch (error) {
46
+ console.log(error);
47
+ return false;
48
+ }
49
+ };
50
+ const executeTaskAtIntervals = async (taskName, data, delays) => {
51
+ const queueDataArray = new Array(delays.length).fill({
52
+ type: taskName,
53
+ data,
54
+ });
55
+ (0, utils_1.logInfo)({
56
+ info: "QUEUEING_TASKS",
57
+ timestamp: Date.now(),
58
+ queueDataArray,
59
+ delays,
60
+ messageIds: [],
61
+ packetIds: [],
62
+ });
63
+ await (0, dl_common_1.sendStandardBatchMessages)(constants_1.SQS_BASE_URL + constants_1.QueueName.BATCHER_TASK_QUEUE, queueDataArray, delays);
64
+ (0, utils_1.logInfo)({
65
+ info: "QUEUED_TASKS",
66
+ timestamp: Date.now(),
67
+ queueDataArray,
68
+ delays,
69
+ messageIds: [],
70
+ packetIds: [],
71
+ });
72
+ };
73
+ var CRON_SPEED;
74
+ (function (CRON_SPEED) {
75
+ CRON_SPEED["SLOW"] = "SLOW";
76
+ // MEDIUM = "MEDIUM",
77
+ CRON_SPEED["FAST"] = "FAST";
78
+ // VERY_FAST = "VERY_FAST",
79
+ })(CRON_SPEED || (CRON_SPEED = {}));
80
+ var CRON_FUNCTIONS;
81
+ (function (CRON_FUNCTIONS) {
82
+ CRON_FUNCTIONS["sendRetrySimulationRequest"] = "sendRetrySimulationRequest";
83
+ CRON_FUNCTIONS["sendPendingSimulationRequest"] = "sendPendingSimulationRequest";
84
+ CRON_FUNCTIONS["checkAndPropose"] = "checkAndPropose";
85
+ CRON_FUNCTIONS["checkAndSeal"] = "checkAndSeal";
86
+ CRON_FUNCTIONS["statusUpdate"] = "statusUpdate";
87
+ CRON_FUNCTIONS["checkAndUpdateFullyExecutedStatus"] = "checkAndUpdateFullyExecutedStatus";
88
+ })(CRON_FUNCTIONS || (CRON_FUNCTIONS = {}));
89
+ const CRON_DURATION = {
90
+ [CRON_SPEED.SLOW]: {
91
+ [CRON_FUNCTIONS.sendRetrySimulationRequest]: 10 * 60,
92
+ [CRON_FUNCTIONS.sendPendingSimulationRequest]: 5 * 60,
93
+ [CRON_FUNCTIONS.checkAndPropose]: 5 * 60,
94
+ [CRON_FUNCTIONS.checkAndSeal]: 5 * 60,
95
+ [CRON_FUNCTIONS.statusUpdate]: 5 * 60,
96
+ [CRON_FUNCTIONS.checkAndUpdateFullyExecutedStatus]: 10 * 60,
97
+ },
98
+ [CRON_SPEED.FAST]: {
99
+ [CRON_FUNCTIONS.sendRetrySimulationRequest]: 30,
100
+ [CRON_FUNCTIONS.sendPendingSimulationRequest]: 30,
101
+ [CRON_FUNCTIONS.checkAndPropose]: 30,
102
+ [CRON_FUNCTIONS.checkAndSeal]: 30,
103
+ [CRON_FUNCTIONS.statusUpdate]: 30,
104
+ [CRON_FUNCTIONS.checkAndUpdateFullyExecutedStatus]: 30,
105
+ },
106
+ };
107
+ const STATUS_UPDATE_INTERVALS = {
108
+ [CRON_SPEED.SLOW]: [0],
109
+ // [CRON_SPEED.MEDIUM]:[30],
110
+ // [CRON_SPEED.FAST]: [0],
111
+ [CRON_SPEED.FAST]: [0, 30],
112
+ };
113
+ const redisKey = "cronSpeed";
114
+ const defaultSpeed = CRON_SPEED.FAST;
115
+ const getCronSpeed = async () => {
116
+ let cronSpeed = await cacheService.getKey(redisKey);
117
+ if (!cronSpeed) {
118
+ await cacheService.setKey(redisKey, defaultSpeed);
119
+ cronSpeed = defaultSpeed;
120
+ }
121
+ return cronSpeed;
122
+ };
123
+ exports.getCronSpeed = getCronSpeed;
124
+ const setCronSpeed = async (cronSpeed) => {
125
+ if (!Object.values(CRON_SPEED).includes(cronSpeed))
126
+ throw (0, dl_common_1.BadRequestError)("Invalid cron speed");
127
+ await cacheService.setKey(redisKey, cronSpeed);
128
+ };
129
+ exports.setCronSpeed = setCronSpeed;
130
+ const cronHandler = async (event, context) => {
131
+ context.callbackWaitsForEmptyEventLoop = false;
132
+ try {
133
+ (0, utils_1.logInfo)({
134
+ info: "CRON_HANDLER_STARTED",
135
+ timestamp: Date.now(),
136
+ messageIds: [],
137
+ packetIds: [],
138
+ });
139
+ await (0, common_1.initServices)();
140
+ const cronSpeed = await (0, exports.getCronSpeed)();
141
+ const cronDuration = CRON_DURATION[cronSpeed];
142
+ // this helps to execute several tasks at different intervals without
143
+ // having to create a new handler every time.
144
+ if (await isTimeToExecute(CRON_FUNCTIONS.sendRetrySimulationRequest, cronDuration[CRON_FUNCTIONS.sendRetrySimulationRequest])) {
145
+ (0, utils_1.logInfo)({
146
+ info: `CRON_STARTED_${CRON_FUNCTIONS.sendRetrySimulationRequest}`,
147
+ timestamp: Date.now(),
148
+ messageIds: [],
149
+ packetIds: [],
150
+ });
151
+ await (0, executeService_1.sendRetrySimulationRequest)();
152
+ (0, utils_1.logInfo)({
153
+ info: `CRON_ENDED_${CRON_FUNCTIONS.sendRetrySimulationRequest}`,
154
+ timestamp: Date.now(),
155
+ messageIds: [],
156
+ packetIds: [],
157
+ });
158
+ }
159
+ if (await isTimeToExecute(CRON_FUNCTIONS.sendPendingSimulationRequest, cronDuration.sendPendingSimulationRequest)) {
160
+ (0, utils_1.logInfo)({
161
+ info: `CRON_STARTED_${CRON_FUNCTIONS.sendPendingSimulationRequest}`,
162
+ timestamp: Date.now(),
163
+ messageIds: [],
164
+ packetIds: [],
165
+ });
166
+ await (0, executeService_1.sendPendingSimulationRequest)();
167
+ (0, utils_1.logInfo)({
168
+ info: `CRON_ENDED_${CRON_FUNCTIONS.sendPendingSimulationRequest}`,
169
+ timestamp: Date.now(),
170
+ messageIds: [],
171
+ packetIds: [],
172
+ });
173
+ }
174
+ if (await isTimeToExecute(CRON_FUNCTIONS.checkAndPropose, cronDuration.checkAndPropose)) {
175
+ (0, utils_1.logInfo)({
176
+ info: `CRON_STARTED_${CRON_FUNCTIONS.checkAndPropose}`,
177
+ timestamp: Date.now(),
178
+ messageIds: [],
179
+ packetIds: [],
180
+ });
181
+ await (0, relayers_1.checkAndPropose)();
182
+ (0, utils_1.logInfo)({
183
+ info: `CRON_ENDED_${CRON_FUNCTIONS.checkAndPropose}`,
184
+ timestamp: Date.now(),
185
+ messageIds: [],
186
+ packetIds: [],
187
+ });
188
+ }
189
+ if (await isTimeToExecute(CRON_FUNCTIONS.checkAndSeal, cronDuration.checkAndSeal)) {
190
+ (0, utils_1.logInfo)({
191
+ info: `CRON_STARTED_${CRON_FUNCTIONS.checkAndSeal}`,
192
+ timestamp: Date.now(),
193
+ messageIds: [],
194
+ packetIds: [],
195
+ });
196
+ await (0, relayers_1.checkAndSeal)();
197
+ (0, utils_1.logInfo)({
198
+ info: `CRON_ENDED_${CRON_FUNCTIONS.checkAndSeal}`,
199
+ timestamp: Date.now(),
200
+ messageIds: [],
201
+ packetIds: [],
202
+ });
203
+ }
204
+ if (await isTimeToExecute(CRON_FUNCTIONS.statusUpdate, cronDuration.statusUpdate)) {
205
+ (0, utils_1.logInfo)({
206
+ info: `CRON_STARTED_${CRON_FUNCTIONS.statusUpdate}`,
207
+ timestamp: Date.now(),
208
+ messageIds: [],
209
+ packetIds: [],
210
+ });
211
+ await (0, statusTrackers_1.checkAndUpdateStatus)();
212
+ (0, utils_1.logInfo)({
213
+ info: `CRON_ENDED_${CRON_FUNCTIONS.statusUpdate}`,
214
+ timestamp: Date.now(),
215
+ messageIds: [],
216
+ packetIds: [],
217
+ });
218
+ }
219
+ if (await isTimeToExecute(CRON_FUNCTIONS.checkAndUpdateFullyExecutedStatus, cronDuration.checkAndUpdateFullyExecutedStatus)) {
220
+ (0, utils_1.logInfo)({
221
+ info: `CRON_STARTED_${CRON_FUNCTIONS.checkAndUpdateFullyExecutedStatus}`,
222
+ timestamp: Date.now(),
223
+ messageIds: [],
224
+ packetIds: [],
225
+ });
226
+ await (0, statusTrackers_1.checkAndUpdateFullyExecutedStatus)();
227
+ (0, utils_1.logInfo)({
228
+ info: `CRON_ENDED_${CRON_FUNCTIONS.checkAndUpdateFullyExecutedStatus}`,
229
+ timestamp: Date.now(),
230
+ messageIds: [],
231
+ packetIds: [],
232
+ });
233
+ }
234
+ // const start = Date.now();
235
+ // await pushToGateway();
236
+ // console.log("pushed to gateway in ", Date.now() - start, "ms");
237
+ // await attesterDBInst.close();
238
+ }
239
+ catch (e) {
240
+ utils_1.logger.error("Error", e);
241
+ }
242
+ };
243
+ exports.cronHandler = cronHandler;
244
+ const setCronSpeedHandler = async (event, context) => {
245
+ var _a;
246
+ context.callbackWaitsForEmptyEventLoop = false;
247
+ try {
248
+ if (!event.queryStringParameters) {
249
+ throw (0, dl_common_1.BadRequestError)("No query string params found");
250
+ }
251
+ const speed = (_a = event.queryStringParameters) === null || _a === void 0 ? void 0 : _a.speed;
252
+ await (0, common_1.initServices)();
253
+ (0, utils_1.logInfo)({
254
+ info: "CRON_SPEED_SETTING",
255
+ speed,
256
+ messageIds: [],
257
+ packetIds: [],
258
+ });
259
+ await (0, exports.setCronSpeed)(speed);
260
+ (0, utils_1.logInfo)({ info: "CRON_SPEED_SET", messageIds: [], packetIds: [] });
261
+ return (0, ll_common_1.buildResponse)(200, { status: dl_common_1.StatusCodes.SUCCESS });
262
+ }
263
+ catch (e) {
264
+ utils_1.logger.error("Error", e);
265
+ return (0, common_1.buildErrorResponse)(e);
266
+ }
267
+ };
268
+ exports.setCronSpeedHandler = setCronSpeedHandler;
@@ -0,0 +1,3 @@
1
+ import { type APIGatewayProxyEvent, type APIGatewayProxyResult, type Context } from "aws-lambda";
2
+ export declare const simulationResponseHandler: (event: APIGatewayProxyEvent, context: Context) => Promise<APIGatewayProxyResult>;
3
+ export declare const simulationHandler: (event: APIGatewayProxyEvent, context: Context) => Promise<APIGatewayProxyResult>;
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.simulationHandler = exports.simulationResponseHandler = void 0;
4
+ const ll_common_1 = require("@socket.tech/ll-common");
5
+ const utils_1 = require("../utils");
6
+ const executeService_1 = require("../services/executeService");
7
+ const common_1 = require("./common");
8
+ const dl_common_1 = require("../../dl-common");
9
+ const simulationResponseHandler = async (event, context) => {
10
+ context.callbackWaitsForEmptyEventLoop = false;
11
+ try {
12
+ if (!event.body) {
13
+ throw (0, dl_common_1.BadRequestError)("No request data found");
14
+ }
15
+ const data = JSON.parse(event.body);
16
+ // console.log({ data });
17
+ if (!(data === null || data === void 0 ? void 0 : data.result)) {
18
+ throw (0, dl_common_1.BadRequestError)("No result field found");
19
+ }
20
+ await (0, common_1.initServices)();
21
+ sanitizeData(data === null || data === void 0 ? void 0 : data.result);
22
+ await (0, executeService_1.saveMessageSimulationResponse)(data === null || data === void 0 ? void 0 : data.result);
23
+ // const start = Date.now();
24
+ // await pushToGateway();
25
+ // console.log("pushed to gateway in ", Date.now() - start, "ms");
26
+ return (0, ll_common_1.buildResponse)(200, { status: dl_common_1.StatusCodes.SUCCESS });
27
+ }
28
+ catch (e) {
29
+ utils_1.logger.error("Error", e);
30
+ return (0, common_1.buildErrorResponse)(e);
31
+ }
32
+ };
33
+ exports.simulationResponseHandler = simulationResponseHandler;
34
+ const simulationHandler = async (event, context) => {
35
+ context.callbackWaitsForEmptyEventLoop = false;
36
+ try {
37
+ await (0, common_1.initServices)();
38
+ await (0, executeService_1.sendPendingSimulationRequest)();
39
+ return (0, ll_common_1.buildResponse)(200, { status: dl_common_1.StatusCodes.SUCCESS });
40
+ }
41
+ catch (e) {
42
+ utils_1.logger.error("Error", e);
43
+ return (0, common_1.buildErrorResponse)(e);
44
+ }
45
+ };
46
+ exports.simulationHandler = simulationHandler;
47
+ const sanitizeData = (dataArray) => {
48
+ dataArray.forEach((data) => {
49
+ const { messageId, retry, inboundSuccess, inboundRevertString, executeSignature, executeMsgGasLimit, } = data;
50
+ (0, dl_common_1.checkMissingFieldsAndType)({
51
+ messageId,
52
+ retry,
53
+ inboundSuccess,
54
+ inboundRevertString,
55
+ executeSignature,
56
+ executeMsgGasLimit,
57
+ }, {
58
+ messageId: "string",
59
+ retry: "boolean",
60
+ inboundSuccess: "boolean",
61
+ inboundRevertString: "string",
62
+ executeSignature: "string",
63
+ executeMsgGasLimit: "string",
64
+ });
65
+ });
66
+ };
@@ -0,0 +1,2 @@
1
+ import { type APIGatewayProxyEvent, type Context } from "aws-lambda";
2
+ export declare const routeHandler: (event: APIGatewayProxyEvent, context: Context) => Promise<any>;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.routeHandler = void 0;
4
+ const routes_1 = require("./routes");
5
+ const common_1 = require("./common");
6
+ const index_1 = require("../../dl-common/index");
7
+ const routeHandler = async (event, context) => {
8
+ try {
9
+ // console.log("event",event);
10
+ console.log("event.resource", event.path, "method: ", event.httpMethod);
11
+ if (event.httpMethod == "GET") {
12
+ return await routes_1.getRequestRoutes[event.path](event, context);
13
+ }
14
+ else if (event.httpMethod == "POST") {
15
+ return await routes_1.postRequestRoutes[event.path](event, context);
16
+ }
17
+ // } else if (event.httpMethod == "PUT") {
18
+ // return await putRequestRoutes[event.path](event);
19
+ // } else if (event.httpMethod == "DELETE") {
20
+ // return await deleteRequestRoutes[event.path](event);
21
+ // }
22
+ }
23
+ catch (e) {
24
+ console.log("e", e);
25
+ const error = new index_1.ServerError(index_1.StatusCodes.NOT_FOUND, "resource not found");
26
+ return (0, common_1.buildErrorResponse)(error);
27
+ }
28
+ };
29
+ exports.routeHandler = routeHandler;
@@ -0,0 +1,3 @@
1
+ import { type APIGatewayProxyEvent, type APIGatewayProxyResult, type Context } from "aws-lambda";
2
+ export declare const relayProposeHandler: (event: APIGatewayProxyEvent, context: Context) => Promise<APIGatewayProxyResult>;
3
+ export declare const updateProposalCountHandler: (event: APIGatewayProxyEvent, context: Context) => Promise<APIGatewayProxyResult>;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateProposalCountHandler = exports.relayProposeHandler = void 0;
4
+ const ll_common_1 = require("@socket.tech/ll-common");
5
+ const constants_1 = require("../constants");
6
+ const utils_1 = require("../utils");
7
+ const common_1 = require("./common");
8
+ const prometheus_config_1 = require("../constants/prometheus.config");
9
+ const index_1 = require("../../dl-common/index");
10
+ const relayProposeHandler = async (event, context) => {
11
+ context.callbackWaitsForEmptyEventLoop = false;
12
+ try {
13
+ if (!event.body) {
14
+ throw (0, index_1.BadRequestError)("No request data found");
15
+ }
16
+ const { chainSlug } = JSON.parse(event.body);
17
+ await (0, common_1.initServices)();
18
+ await (0, index_1.sendStandardSqsMessage)(constants_1.SQS_BASE_URL + constants_1.QueueName.BATCHER_TASK_QUEUE, {
19
+ type: constants_1.TaskNames.RELAY_PROPOSE,
20
+ data: { counter: Math.floor(Math.random() * 100) },
21
+ });
22
+ (0, utils_1.logInfo)({
23
+ info: "PROPOSED_RELAY_QUEUED",
24
+ timestamp: Date.now(),
25
+ messageIds: [],
26
+ packetIds: [],
27
+ });
28
+ const response = { message: "Relay Propose task added to queue" };
29
+ await (0, prometheus_config_1.pushToGateway)();
30
+ return (0, ll_common_1.buildResponse)(200, { status: index_1.StatusCodes.SUCCESS, response });
31
+ }
32
+ catch (e) {
33
+ utils_1.logger.error("Error", e);
34
+ return (0, common_1.buildErrorResponse)(e);
35
+ }
36
+ };
37
+ exports.relayProposeHandler = relayProposeHandler;
38
+ const updateProposalCountHandler = async (event, context) => {
39
+ context.callbackWaitsForEmptyEventLoop = false;
40
+ try {
41
+ if (!event.body) {
42
+ throw (0, index_1.BadRequestError)("No request data found");
43
+ }
44
+ const { chainSlug } = JSON.parse(event.body);
45
+ await (0, common_1.initServices)();
46
+ await (0, index_1.sendStandardSqsMessage)(constants_1.SQS_BASE_URL + constants_1.QueueName.BATCHER_TASK_QUEUE, {
47
+ type: constants_1.TaskNames.UPDATE_SELECTED_PROPOSAL_COUNT,
48
+ data: {
49
+ chainSlug,
50
+ },
51
+ });
52
+ const response = {
53
+ message: "UPDATE_SELECTED_PROPOSAL_COUNT task added to queue",
54
+ };
55
+ (0, utils_1.logInfo)({
56
+ info: "PROPOSAL_COUNT_UPDATE_QUEUED",
57
+ timestamp: Date.now(),
58
+ messageIds: [],
59
+ packetIds: [],
60
+ });
61
+ await (0, prometheus_config_1.pushToGateway)();
62
+ return (0, ll_common_1.buildResponse)(200, { status: index_1.StatusCodes.SUCCESS, response });
63
+ }
64
+ catch (e) {
65
+ utils_1.logger.error("Error", e);
66
+ return (0, common_1.buildErrorResponse)(e);
67
+ }
68
+ };
69
+ exports.updateProposalCountHandler = updateProposalCountHandler;
@@ -0,0 +1,2 @@
1
+ export declare const getRequestRoutes: Record<string, (event: any, context: any) => Promise<any>>;
2
+ export declare const postRequestRoutes: Record<string, (event: any, context: any) => Promise<any>>;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.postRequestRoutes = exports.getRequestRoutes = void 0;
4
+ const sealHandler_1 = require("./sealHandler");
5
+ const proposeHandler_1 = require("./proposeHandler");
6
+ const executeHandler_1 = require("./executeHandler");
7
+ const statusHandler_1 = require("./statusHandler");
8
+ const testHandler_1 = require("./testHandler");
9
+ const cronHandler_1 = require("./cronHandler");
10
+ exports.getRequestRoutes = {
11
+ "/statusUpdate": statusHandler_1.statusUpdateHandler,
12
+ "/setCronSpeed": cronHandler_1.setCronSpeedHandler,
13
+ "/simulate": executeHandler_1.simulationHandler,
14
+ };
15
+ exports.postRequestRoutes = {
16
+ "/seal": sealHandler_1.sealHandler,
17
+ "/relaySeal": sealHandler_1.relaySealHandler,
18
+ "/indexSeal": sealHandler_1.indexSealHandler,
19
+ "/relayPropose": proposeHandler_1.relayProposeHandler,
20
+ "/simulationResponse": executeHandler_1.simulationResponseHandler,
21
+ "/deleteRedisKey": testHandler_1.deleteKeyHandler,
22
+ "/updateProposalCount": proposeHandler_1.updateProposalCountHandler,
23
+ "/txStatusUpdate": statusHandler_1.relayerTxStatusUpdateHandler,
24
+ "/isChainSupported": testHandler_1.chainSupportHandler,
25
+ "/failedStatusUpdate": statusHandler_1.failedStatusUpdateHandler,
26
+ };
@@ -0,0 +1,4 @@
1
+ import { type APIGatewayProxyEvent, type APIGatewayProxyResult, type Context } from "aws-lambda";
2
+ export declare const sealHandler: (event: APIGatewayProxyEvent, context: Context) => Promise<APIGatewayProxyResult>;
3
+ export declare const relaySealHandler: (event: APIGatewayProxyEvent, context: Context) => Promise<APIGatewayProxyResult>;
4
+ export declare const indexSealHandler: (event: APIGatewayProxyEvent, context: Context) => Promise<APIGatewayProxyResult>;