@socket.tech/dl-common 1.0.2 → 1.0.3-test.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +17 -0
  2. package/dist/constants/enums.d.ts +33 -0
  3. package/dist/constants/enums.js +40 -0
  4. package/dist/constants/index.d.ts +3 -0
  5. package/dist/constants/index.js +19 -0
  6. package/dist/constants/types.d.ts +104 -0
  7. package/dist/constants/types.js +37 -0
  8. package/dist/constants/waitTime.d.ts +7 -0
  9. package/dist/constants/waitTime.js +51 -0
  10. package/dist/index.d.ts +1 -1
  11. package/dist/index.js +1 -1
  12. package/dist/models/attestSignature.d.ts +1 -0
  13. package/dist/models/attestSignature.js +22 -1
  14. package/dist/models/attestation.d.ts +70 -0
  15. package/dist/models/attestation.js +86 -0
  16. package/dist/models/index.d.ts +2 -0
  17. package/dist/models/index.js +2 -0
  18. package/dist/models/message.d.ts +1 -0
  19. package/dist/models/message.js +49 -1
  20. package/dist/models/packet.d.ts +13 -0
  21. package/dist/models/packet.js +47 -1
  22. package/dist/models/proposal.d.ts +1 -0
  23. package/dist/models/proposal.js +28 -1
  24. package/dist/services/cacheService.d.ts +3 -3
  25. package/dist/services/cacheService.js +9 -21
  26. package/dist/services/queueService.js +3 -6
  27. package/dist/utils/axios.js +7 -0
  28. package/dist/utils/discord.d.ts +2 -1
  29. package/dist/utils/discord.js +23 -5
  30. package/dist/utils/ethersAwsKmsSigner.d.ts +2 -0
  31. package/dist/utils/ethersAwsKmsSigner.js +23 -0
  32. package/dist/utils/eventGetter.d.ts +4 -0
  33. package/dist/utils/eventGetter.js +50 -0
  34. package/dist/utils/extraUtils.d.ts +17 -8
  35. package/dist/utils/extraUtils.js +27 -17
  36. package/dist/utils/idUtils.d.ts +1 -0
  37. package/dist/utils/idUtils.js +10 -1
  38. package/dist/utils/index.d.ts +2 -0
  39. package/dist/utils/index.js +2 -0
  40. package/dist/utils/relaySigner.d.ts +3 -1
  41. package/dist/utils/relaySigner.js +7 -5
  42. package/dist/utils/secretManagerService.d.ts +2 -0
  43. package/dist/utils/secretManagerService.js +33 -0
  44. package/dist/utils/time.d.ts +1 -0
  45. package/dist/utils/time.js +5 -0
  46. package/package.json +10 -5
package/README.md CHANGED
@@ -1 +1,18 @@
1
1
  # dl-batcher-service
2
+
3
+ to start server locally,
4
+ `npm run start`
5
+
6
+ to deploy complete service to dev,
7
+ `npm run deploy`
8
+
9
+ to deploy a sepific function (for example if change in apis, can only deploy routeHandler. Similarly if only change in cron timings, can deploy only cronHandler) -
10
+ `sls deploy -f cronHandler`
11
+
12
+ to check logs locally in terminal -
13
+ `sls logs -f <function>`
14
+
15
+ for publishing -
16
+ `yarn lint`
17
+ `yarn run build`
18
+ `npm publish`
@@ -0,0 +1,33 @@
1
+ export declare enum tableNames {
2
+ packet = "packets",
3
+ signature = "signatures",
4
+ attestation = "attestations",
5
+ message = "messages",
6
+ nativePacket = "native_packets",
7
+ proposal = "proposals",
8
+ switchboard = "switchboards",
9
+ tripState = "trip_states",
10
+ attestSignatures = "attest_signatures"
11
+ }
12
+ export declare enum MessageStatuses {
13
+ RECEIVED = "RECEIVED",
14
+ SEALED = "SEALED",
15
+ PROPOSED = "PROPOSED",
16
+ CONFIRMED = "CONFIRMED",
17
+ EXECUTION_SUCCESS = "EXECUTION_SUCCESS",
18
+ EXECUTION_FAILURE = "EXECUTION_FAILURE"
19
+ }
20
+ export declare enum MessageStatusStep {
21
+ RECEIVED = 0,
22
+ SEALED = 1,
23
+ PROPOSED = 2,
24
+ CONFIRMED = 3,
25
+ EXECUTION_SUCCESS = 4,
26
+ EXECUTION_FAILURE = 5
27
+ }
28
+ export declare enum StatusCodes {
29
+ SUCCESS = "SUCCESS",
30
+ NOT_FOUND = "NOT_FOUND",
31
+ BAD_REQUEST = "BAD_REQUEST",
32
+ INTERNAL_SERVER_ERROR = "INTERNAL_SERVER_ERROR"
33
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StatusCodes = exports.MessageStatusStep = exports.MessageStatuses = exports.tableNames = void 0;
4
+ var tableNames;
5
+ (function (tableNames) {
6
+ tableNames["packet"] = "packets";
7
+ tableNames["signature"] = "signatures";
8
+ tableNames["attestation"] = "attestations";
9
+ tableNames["message"] = "messages";
10
+ tableNames["nativePacket"] = "native_packets";
11
+ tableNames["proposal"] = "proposals";
12
+ tableNames["switchboard"] = "switchboards";
13
+ tableNames["tripState"] = "trip_states";
14
+ tableNames["attestSignatures"] = "attest_signatures";
15
+ })(tableNames || (exports.tableNames = tableNames = {}));
16
+ var MessageStatuses;
17
+ (function (MessageStatuses) {
18
+ MessageStatuses["RECEIVED"] = "RECEIVED";
19
+ MessageStatuses["SEALED"] = "SEALED";
20
+ MessageStatuses["PROPOSED"] = "PROPOSED";
21
+ MessageStatuses["CONFIRMED"] = "CONFIRMED";
22
+ MessageStatuses["EXECUTION_SUCCESS"] = "EXECUTION_SUCCESS";
23
+ MessageStatuses["EXECUTION_FAILURE"] = "EXECUTION_FAILURE";
24
+ })(MessageStatuses || (exports.MessageStatuses = MessageStatuses = {}));
25
+ var MessageStatusStep;
26
+ (function (MessageStatusStep) {
27
+ MessageStatusStep[MessageStatusStep["RECEIVED"] = 0] = "RECEIVED";
28
+ MessageStatusStep[MessageStatusStep["SEALED"] = 1] = "SEALED";
29
+ MessageStatusStep[MessageStatusStep["PROPOSED"] = 2] = "PROPOSED";
30
+ MessageStatusStep[MessageStatusStep["CONFIRMED"] = 3] = "CONFIRMED";
31
+ MessageStatusStep[MessageStatusStep["EXECUTION_SUCCESS"] = 4] = "EXECUTION_SUCCESS";
32
+ MessageStatusStep[MessageStatusStep["EXECUTION_FAILURE"] = 5] = "EXECUTION_FAILURE";
33
+ })(MessageStatusStep || (exports.MessageStatusStep = MessageStatusStep = {}));
34
+ var StatusCodes;
35
+ (function (StatusCodes) {
36
+ StatusCodes["SUCCESS"] = "SUCCESS";
37
+ StatusCodes["NOT_FOUND"] = "NOT_FOUND";
38
+ StatusCodes["BAD_REQUEST"] = "BAD_REQUEST";
39
+ StatusCodes["INTERNAL_SERVER_ERROR"] = "INTERNAL_SERVER_ERROR";
40
+ })(StatusCodes || (exports.StatusCodes = StatusCodes = {}));
@@ -0,0 +1,3 @@
1
+ export * from "./waitTime";
2
+ export * from "./enums";
3
+ export * from "./types";
@@ -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("./waitTime"), exports);
18
+ __exportStar(require("./enums"), exports);
19
+ __exportStar(require("./types"), exports);
@@ -0,0 +1,104 @@
1
+ import { TripReason } from "../models";
2
+ import { StatusCodes } from "./enums";
3
+ import { ChainSlug, IntegrationTypes } from "@socket.tech/dl-core";
4
+ export type Speed = "safeLow" | "average" | "fast" | "fastest";
5
+ export declare enum InboundStatus {
6
+ NOT_TRIED = "NOT_TRIED",
7
+ REVERTING = "REVERTING",
8
+ EXECUTING = "EXECUTING",
9
+ SUCCESS = "SUCCESS"
10
+ }
11
+ export interface FeeEstimate {
12
+ transmissionFees: string;
13
+ verificationFees: string;
14
+ executionFees: string;
15
+ totalFees: string;
16
+ }
17
+ export declare enum RelayerAPIStatus {
18
+ FAILED = "FAILED",
19
+ SIMULATION_FAILED = "SIMULATION_FAILED",
20
+ COMPLETED = "COMPLETED"
21
+ }
22
+ export declare class ServerError {
23
+ code: Omit<StatusCodes, StatusCodes.SUCCESS>;
24
+ message?: string;
25
+ constructor(code: Omit<StatusCodes, StatusCodes.SUCCESS>, message?: string);
26
+ toString(): string;
27
+ }
28
+ export declare const BadRequestError: (message?: string) => ServerError;
29
+ export declare const InternalServerError: (message?: string) => ServerError;
30
+ export interface EthersError {
31
+ reason?: string;
32
+ code?: string;
33
+ argument?: string;
34
+ value?: string;
35
+ }
36
+ export type SealParams = {
37
+ srcChainSlug: number;
38
+ dstChainSlug: number;
39
+ dstSwitchboard: string;
40
+ integrationType: IntegrationTypes;
41
+ message: {
42
+ messageId: string;
43
+ srcPlug: string;
44
+ destPlug: string;
45
+ minMsgGasLimit: string;
46
+ executionParams: string;
47
+ transmissionParams: string;
48
+ executionFee: string;
49
+ transmissionFees: string;
50
+ switchboardFees: string;
51
+ fees: string;
52
+ decapacitorProof: string;
53
+ payload: string;
54
+ packedMessage: string;
55
+ outboundTxHash: string;
56
+ outboundTime: number;
57
+ capacitorMsgCount: string;
58
+ };
59
+ packet: {
60
+ capacitorPacketCount: string;
61
+ packetId: string;
62
+ srcCapacitor: string;
63
+ root: string;
64
+ sealSignature: string;
65
+ };
66
+ };
67
+ export type SealIndexedParams = {
68
+ srcChainSlug: number;
69
+ sealer: string;
70
+ sealTime: number;
71
+ sealTxHash: string;
72
+ rootSealed: string;
73
+ dstSwitchboard: string;
74
+ sealSignature: string;
75
+ packetId: string;
76
+ };
77
+ export interface ExecuteSigResponse {
78
+ messageId: string;
79
+ retry: boolean;
80
+ inboundSuccess: boolean;
81
+ inboundRevertString: string;
82
+ executeSignature: string;
83
+ executeMsgGasLimit: string;
84
+ }
85
+ export interface AttestRequest {
86
+ switchboardAddress: string;
87
+ dstChainSlug: ChainSlug;
88
+ packetId: string;
89
+ root: string;
90
+ proposalCount: number;
91
+ }
92
+ export interface AttestSuccess {
93
+ proposalValid: true;
94
+ packetId: string;
95
+ proposalCount: number;
96
+ signature: string;
97
+ }
98
+ export interface AttestFailure {
99
+ proposalValid: false;
100
+ packetId: string;
101
+ proposalCount: number;
102
+ reason: TripReason;
103
+ }
104
+ export type AttestResponse = AttestSuccess | AttestFailure;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InternalServerError = exports.BadRequestError = exports.ServerError = exports.RelayerAPIStatus = exports.InboundStatus = void 0;
4
+ const enums_1 = require("./enums");
5
+ var InboundStatus;
6
+ (function (InboundStatus) {
7
+ InboundStatus["NOT_TRIED"] = "NOT_TRIED";
8
+ InboundStatus["REVERTING"] = "REVERTING";
9
+ InboundStatus["EXECUTING"] = "EXECUTING";
10
+ InboundStatus["SUCCESS"] = "SUCCESS";
11
+ })(InboundStatus || (exports.InboundStatus = InboundStatus = {}));
12
+ var RelayerAPIStatus;
13
+ (function (RelayerAPIStatus) {
14
+ RelayerAPIStatus["FAILED"] = "FAILED";
15
+ RelayerAPIStatus["SIMULATION_FAILED"] = "SIMULATION_FAILED";
16
+ RelayerAPIStatus["COMPLETED"] = "COMPLETED";
17
+ })(RelayerAPIStatus || (exports.RelayerAPIStatus = RelayerAPIStatus = {}));
18
+ class ServerError {
19
+ constructor(code, message) {
20
+ this.code = code;
21
+ if (message) {
22
+ this.message = message;
23
+ }
24
+ }
25
+ toString() {
26
+ return `code: ${this.code}, message: ${this.message}`;
27
+ }
28
+ }
29
+ exports.ServerError = ServerError;
30
+ const BadRequestError = (message) => {
31
+ return new ServerError(enums_1.StatusCodes.BAD_REQUEST, message);
32
+ };
33
+ exports.BadRequestError = BadRequestError;
34
+ const InternalServerError = (message) => {
35
+ return new ServerError(enums_1.StatusCodes.INTERNAL_SERVER_ERROR, message);
36
+ };
37
+ exports.InternalServerError = InternalServerError;
@@ -0,0 +1,7 @@
1
+ import { ChainSlug, IntegrationTypes } from "@socket.tech/dl-core";
2
+ export declare const getWaitTime: (integrationType: IntegrationTypes, srcChainSlug: ChainSlug, dstChainSlug: ChainSlug) => number;
3
+ export declare const NativeWaitTime: {
4
+ [srcChain in ChainSlug]?: {
5
+ [dstChain in ChainSlug]?: number;
6
+ };
7
+ };
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NativeWaitTime = exports.getWaitTime = void 0;
4
+ const dl_core_1 = require("@socket.tech/dl-core");
5
+ const getWaitTime = (integrationType, srcChainSlug, dstChainSlug) => {
6
+ var _a, _b;
7
+ switch (integrationType) {
8
+ case dl_core_1.IntegrationTypes.fast:
9
+ return 0;
10
+ case dl_core_1.IntegrationTypes.fast2:
11
+ return 0;
12
+ case dl_core_1.IntegrationTypes.optimistic:
13
+ return 2 * 3600;
14
+ case dl_core_1.IntegrationTypes.native:
15
+ return (_b = (_a = exports.NativeWaitTime[srcChainSlug]) === null || _a === void 0 ? void 0 : _a[dstChainSlug]) !== null && _b !== void 0 ? _b : 2 * 3600;
16
+ default:
17
+ return 0;
18
+ break;
19
+ }
20
+ };
21
+ exports.getWaitTime = getWaitTime;
22
+ exports.NativeWaitTime = {
23
+ [dl_core_1.ChainSlug.OPTIMISM_GOERLI]: {
24
+ [dl_core_1.ChainSlug.GOERLI]: 5 * 60,
25
+ },
26
+ [dl_core_1.ChainSlug.ARBITRUM_GOERLI]: {
27
+ [dl_core_1.ChainSlug.GOERLI]: 5 * 60,
28
+ },
29
+ [dl_core_1.ChainSlug.POLYGON_MUMBAI]: {
30
+ [dl_core_1.ChainSlug.GOERLI]: 10 * 60,
31
+ },
32
+ [dl_core_1.ChainSlug.GOERLI]: {
33
+ [dl_core_1.ChainSlug.POLYGON_MUMBAI]: 5 * 60,
34
+ [dl_core_1.ChainSlug.ARBITRUM_GOERLI]: 5 * 60,
35
+ [dl_core_1.ChainSlug.OPTIMISM_GOERLI]: 5 * 60,
36
+ },
37
+ [dl_core_1.ChainSlug.ARBITRUM]: {
38
+ [dl_core_1.ChainSlug.MAINNET]: 7 * 24 * 3600,
39
+ },
40
+ [dl_core_1.ChainSlug.OPTIMISM]: {
41
+ [dl_core_1.ChainSlug.MAINNET]: 7 * 24 * 3600,
42
+ },
43
+ [dl_core_1.ChainSlug.POLYGON_MAINNET]: {
44
+ [dl_core_1.ChainSlug.MAINNET]: 4 * 3600,
45
+ },
46
+ [dl_core_1.ChainSlug.MAINNET]: {
47
+ [dl_core_1.ChainSlug.ARBITRUM]: 10 * 60,
48
+ [dl_core_1.ChainSlug.OPTIMISM]: 10 * 60,
49
+ [dl_core_1.ChainSlug.POLYGON_MAINNET]: 10 * 60,
50
+ },
51
+ };
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export * from "./models";
2
- export * from "./types";
3
2
  export * from "./services";
4
3
  export * from "./utils";
4
+ export * from "./constants";
package/dist/index.js CHANGED
@@ -15,6 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./models"), exports);
18
- __exportStar(require("./types"), exports);
19
18
  __exportStar(require("./services"), exports);
20
19
  __exportStar(require("./utils"), exports);
20
+ __exportStar(require("./constants"), exports);
@@ -32,3 +32,4 @@ export declare const AttestSignatureModel: {
32
32
  type: DataTypes.StringDataTypeConstructor;
33
33
  };
34
34
  };
35
+ export declare const addSignatureHooks: () => void;
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AttestSignatureModel = exports.AttestSignature = void 0;
3
+ exports.addSignatureHooks = exports.AttestSignatureModel = exports.AttestSignature = void 0;
4
4
  const sequelize_1 = require("sequelize");
5
+ const utils_1 = require("../utils");
5
6
  class AttestSignature extends sequelize_1.Model {
6
7
  }
7
8
  exports.AttestSignature = AttestSignature;
@@ -30,3 +31,23 @@ exports.AttestSignatureModel = {
30
31
  type: sequelize_1.DataTypes.STRING,
31
32
  },
32
33
  };
34
+ function processStrings(attestSignature) {
35
+ if (attestSignature.packetId) {
36
+ attestSignature.packetId = (0, utils_1.toLowerCase)(attestSignature.packetId);
37
+ }
38
+ if (attestSignature.signature) {
39
+ attestSignature.signature = (0, utils_1.toLowerCase)(attestSignature.signature);
40
+ }
41
+ return attestSignature;
42
+ }
43
+ const addSignatureHooks = () => {
44
+ AttestSignature.beforeBulkCreate((attestSignature, options) => {
45
+ for (let index = 0; index < attestSignature.length; index++) {
46
+ attestSignature[index] = processStrings(attestSignature[index]);
47
+ }
48
+ });
49
+ AttestSignature.beforeSave((attestSignature, options) => {
50
+ attestSignature = processStrings(attestSignature);
51
+ });
52
+ };
53
+ exports.addSignatureHooks = addSignatureHooks;
@@ -0,0 +1,70 @@
1
+ import { IntegrationTypes } from "@socket.tech/dl-core";
2
+ import { DataTypes, Model } from "sequelize";
3
+ export declare class Attestation extends Model {
4
+ id: number;
5
+ packetId: string;
6
+ proposalCount: number;
7
+ root: string;
8
+ switchboard: string;
9
+ integrationType: IntegrationTypes;
10
+ srcChainSlug: number;
11
+ dstChainSlug: number;
12
+ attester: string;
13
+ attestTxId: string;
14
+ attestTxHash: string;
15
+ attestTime: number;
16
+ numberOfAttestations: number;
17
+ }
18
+ export declare const AttestationModel: {
19
+ id: {
20
+ type: DataTypes.IntegerDataTypeConstructor;
21
+ autoIncrement: boolean;
22
+ primaryKey: boolean;
23
+ };
24
+ packetId: {
25
+ type: DataTypes.StringDataTypeConstructor;
26
+ unique: string;
27
+ };
28
+ proposalCount: {
29
+ type: DataTypes.IntegerDataTypeConstructor;
30
+ unique: string;
31
+ };
32
+ switchboard: {
33
+ type: DataTypes.StringDataTypeConstructor;
34
+ };
35
+ srcChainSlug: {
36
+ type: DataTypes.IntegerDataTypeConstructor;
37
+ };
38
+ dstChainSlug: {
39
+ type: DataTypes.IntegerDataTypeConstructor;
40
+ };
41
+ integrationType: {
42
+ type: DataTypes.StringDataTypeConstructor;
43
+ };
44
+ root: {
45
+ type: DataTypes.StringDataTypeConstructor;
46
+ unique: string;
47
+ };
48
+ attester: {
49
+ type: DataTypes.StringDataTypeConstructor;
50
+ defaultValue: string;
51
+ unique: string;
52
+ };
53
+ attestTxId: {
54
+ type: DataTypes.StringDataTypeConstructor;
55
+ defaultValue: string;
56
+ };
57
+ attestTxHash: {
58
+ type: DataTypes.StringDataTypeConstructor;
59
+ defaultValue: string;
60
+ };
61
+ attestTime: {
62
+ type: DataTypes.IntegerDataTypeConstructor;
63
+ defaultValue: number;
64
+ };
65
+ numberOfAttestations: {
66
+ type: DataTypes.IntegerDataTypeConstructor;
67
+ defaultValue: number;
68
+ };
69
+ };
70
+ export declare const addAttestationHooks: () => void;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addAttestationHooks = exports.AttestationModel = exports.Attestation = void 0;
4
+ const sequelize_1 = require("sequelize");
5
+ const utils_1 = require("../utils");
6
+ class Attestation extends sequelize_1.Model {
7
+ }
8
+ exports.Attestation = Attestation;
9
+ exports.AttestationModel = {
10
+ id: {
11
+ type: sequelize_1.DataTypes.INTEGER,
12
+ autoIncrement: true,
13
+ primaryKey: true,
14
+ },
15
+ packetId: {
16
+ type: sequelize_1.DataTypes.STRING,
17
+ unique: "uniqueAttestationPointer",
18
+ },
19
+ proposalCount: {
20
+ type: sequelize_1.DataTypes.INTEGER,
21
+ unique: "uniqueAttestationPointer",
22
+ },
23
+ switchboard: {
24
+ type: sequelize_1.DataTypes.STRING,
25
+ },
26
+ srcChainSlug: {
27
+ type: sequelize_1.DataTypes.INTEGER,
28
+ },
29
+ dstChainSlug: {
30
+ type: sequelize_1.DataTypes.INTEGER,
31
+ },
32
+ integrationType: {
33
+ type: sequelize_1.DataTypes.STRING,
34
+ },
35
+ root: {
36
+ type: sequelize_1.DataTypes.STRING,
37
+ unique: "uniqueAttestationPointer",
38
+ },
39
+ attester: {
40
+ type: sequelize_1.DataTypes.STRING,
41
+ defaultValue: "",
42
+ unique: "uniqueAttestationPointer",
43
+ },
44
+ attestTxId: {
45
+ type: sequelize_1.DataTypes.STRING,
46
+ defaultValue: "",
47
+ },
48
+ attestTxHash: {
49
+ type: sequelize_1.DataTypes.STRING,
50
+ defaultValue: "",
51
+ },
52
+ attestTime: {
53
+ type: sequelize_1.DataTypes.INTEGER,
54
+ defaultValue: 0,
55
+ },
56
+ numberOfAttestations: {
57
+ type: sequelize_1.DataTypes.INTEGER,
58
+ defaultValue: 0,
59
+ },
60
+ };
61
+ const addAttestationHooks = () => {
62
+ Attestation.beforeBulkCreate((packet, options) => {
63
+ for (let index = 0; index < packet.length; index++) {
64
+ packet[index] = processStrings(packet[index]);
65
+ }
66
+ });
67
+ Attestation.beforeSave((packet, options) => {
68
+ packet = processStrings(packet);
69
+ });
70
+ };
71
+ exports.addAttestationHooks = addAttestationHooks;
72
+ function processStrings(packet) {
73
+ if (packet.packetId)
74
+ packet.packetId = (0, utils_1.toLowerCase)(packet.packetId);
75
+ if (packet.root)
76
+ packet.root = (0, utils_1.toLowerCase)(packet.root);
77
+ if (packet.switchboard)
78
+ packet.switchboard = (0, utils_1.toLowerCase)(packet.switchboard);
79
+ if (packet.attester)
80
+ packet.attester = (0, utils_1.toLowerCase)(packet.attester);
81
+ if (packet.attestTxId)
82
+ packet.attestTxId = (0, utils_1.toLowerCase)(packet.attestTxId);
83
+ if (packet.attestTxHash)
84
+ packet.attestTxHash = (0, utils_1.toLowerCase)(packet.attestTxHash);
85
+ return packet;
86
+ }
@@ -1,3 +1,5 @@
1
1
  export * from "./packet";
2
2
  export * from "./message";
3
3
  export * from "./attestSignature";
4
+ export * from "./attestation";
5
+ export * from "./proposal";
@@ -17,3 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./packet"), exports);
18
18
  __exportStar(require("./message"), exports);
19
19
  __exportStar(require("./attestSignature"), exports);
20
+ __exportStar(require("./attestation"), exports);
21
+ __exportStar(require("./proposal"), exports);
@@ -163,3 +163,4 @@ export declare const MessageModel: {
163
163
  defaultValue: string;
164
164
  };
165
165
  };
166
+ export declare const addMessageHooks: () => void;
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MessageModel = exports.Message = exports.ExecutionRelayStatus = void 0;
3
+ exports.addMessageHooks = exports.MessageModel = exports.Message = exports.ExecutionRelayStatus = void 0;
4
4
  const sequelize_1 = require("sequelize");
5
+ const utils_1 = require("../utils");
5
6
  var ExecutionRelayStatus;
6
7
  (function (ExecutionRelayStatus) {
7
8
  ExecutionRelayStatus["EXECUTED"] = "EXECUTED";
@@ -133,3 +134,50 @@ exports.MessageModel = {
133
134
  defaultValue: "",
134
135
  },
135
136
  };
137
+ function processStrings(message) {
138
+ if (message.srcPlug)
139
+ message.srcPlug = (0, utils_1.toLowerCase)(message.srcPlug);
140
+ if (message.destPlug)
141
+ message.destPlug = (0, utils_1.toLowerCase)(message.destPlug);
142
+ if (message.messageId)
143
+ message.messageId = (0, utils_1.toLowerCase)(message.messageId);
144
+ if (message.executionParams) {
145
+ message.executionParams = (0, utils_1.toLowerCase)(message.executionParams);
146
+ }
147
+ if (message.transmissionParams) {
148
+ message.transmissionParams = (0, utils_1.toLowerCase)(message.transmissionParams);
149
+ }
150
+ if (message.packedMessage) {
151
+ message.packedMessage = (0, utils_1.toLowerCase)(message.packedMessage);
152
+ }
153
+ if (message.decapacitorProof) {
154
+ message.decapacitorProof = (0, utils_1.toLowerCase)(message.decapacitorProof);
155
+ }
156
+ if (message.payload)
157
+ message.payload = (0, utils_1.toLowerCase)(message.payload);
158
+ if (message.executor)
159
+ message.executor = (0, utils_1.toLowerCase)(message.executor);
160
+ if (message.executeTxHash) {
161
+ message.executeTxHash = (0, utils_1.toLowerCase)(message.executeTxHash);
162
+ }
163
+ if (message.outboundTxHash) {
164
+ message.outboundTxHash = (0, utils_1.toLowerCase)(message.outboundTxHash);
165
+ }
166
+ if (message.packedMessage) {
167
+ message.packedMessage = (0, utils_1.toLowerCase)(message.packedMessage);
168
+ }
169
+ if (message.rootHash)
170
+ message.rootHash = (0, utils_1.toLowerCase)(message.rootHash);
171
+ return message;
172
+ }
173
+ const addMessageHooks = () => {
174
+ Message.beforeBulkCreate((message, options) => {
175
+ for (let index = 0; index < message.length; index++) {
176
+ message[index] = processStrings(message[index]);
177
+ }
178
+ });
179
+ Message.beforeSave((message, options) => {
180
+ message = processStrings(message);
181
+ });
182
+ };
183
+ exports.addMessageHooks = addMessageHooks;
@@ -63,6 +63,8 @@ export declare class Packet extends Model {
63
63
  attestRelayStatus: AttestRelayStatus;
64
64
  outboundTxHash: string;
65
65
  outboundTime: number;
66
+ proposeTime: number;
67
+ attestTime: number;
66
68
  packetTripTxHash: string;
67
69
  isFilled: boolean;
68
70
  isSealed: boolean;
@@ -71,6 +73,7 @@ export declare class Packet extends Model {
71
73
  isVerified: boolean;
72
74
  isFullyExecuted: boolean;
73
75
  tripreason: TripReason;
76
+ executionWaitTime: number;
74
77
  }
75
78
  export declare const PacketModel: {
76
79
  id: {
@@ -153,6 +156,12 @@ export declare const PacketModel: {
153
156
  outboundTime: {
154
157
  type: DataTypes.IntegerDataTypeConstructor;
155
158
  };
159
+ proposeTime: {
160
+ type: DataTypes.IntegerDataTypeConstructor;
161
+ };
162
+ attestTime: {
163
+ type: DataTypes.IntegerDataTypeConstructor;
164
+ };
156
165
  sealTime: {
157
166
  type: DataTypes.IntegerDataTypeConstructor;
158
167
  };
@@ -199,6 +208,9 @@ export declare const PacketModel: {
199
208
  selectedProposalCount: {
200
209
  type: DataTypes.IntegerDataTypeConstructor;
201
210
  };
211
+ executionWaitTime: {
212
+ type: DataTypes.IntegerDataTypeConstructor;
213
+ };
202
214
  attestTxId: {
203
215
  type: DataTypes.StringDataTypeConstructor;
204
216
  defaultValue: string;
@@ -218,3 +230,4 @@ export declare const PacketModel: {
218
230
  defaultValue: AttestRelayStatus;
219
231
  };
220
232
  };
233
+ export declare const addPacketHooks: () => void;