@socket.tech/dl-common 1.0.3-test.8 → 1.0.4
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.
- package/dist/constants/confirmations.d.ts +5 -0
- package/dist/constants/confirmations.js +17 -0
- package/dist/constants/enums.d.ts +9 -2
- package/dist/constants/enums.js +9 -1
- package/dist/constants/types.d.ts +14 -5
- package/dist/constants/types.js +9 -1
- package/dist/constants/waitTime.d.ts +1 -0
- package/dist/constants/waitTime.js +7 -13
- package/dist/dl-common/constants/confirmations.d.ts +5 -0
- package/dist/dl-common/constants/confirmations.js +17 -0
- package/dist/dl-common/constants/enums.d.ts +44 -0
- package/dist/{types/codes.js → dl-common/constants/enums.js} +25 -1
- package/dist/dl-common/constants/index.d.ts +3 -0
- package/dist/{types → dl-common/constants}/index.js +2 -1
- package/dist/{types → dl-common/constants}/types.d.ts +49 -9
- package/dist/{types → dl-common/constants}/types.js +17 -13
- package/dist/dl-common/constants/waitTime.d.ts +8 -0
- package/dist/dl-common/constants/waitTime.js +49 -0
- package/dist/dl-common/index.d.ts +4 -0
- package/dist/dl-common/index.js +20 -0
- package/dist/dl-common/models/attestSignature.d.ts +35 -0
- package/dist/dl-common/models/attestSignature.js +53 -0
- package/dist/{models/attestations.d.ts → dl-common/models/attestation.d.ts} +3 -2
- package/dist/{models/attestations.js → dl-common/models/attestation.js} +30 -3
- package/dist/dl-common/models/index.d.ts +7 -0
- package/dist/dl-common/models/index.js +23 -0
- package/dist/dl-common/models/lastBlock.d.ts +28 -0
- package/dist/dl-common/models/lastBlock.js +27 -0
- package/dist/dl-common/models/message.d.ts +166 -0
- package/dist/dl-common/models/message.js +183 -0
- package/dist/dl-common/models/packet.d.ts +241 -0
- package/dist/dl-common/models/packet.js +250 -0
- package/dist/dl-common/models/proposal.d.ts +127 -0
- package/dist/dl-common/models/proposal.js +141 -0
- package/dist/dl-common/models/switchboard.d.ts +69 -0
- package/dist/dl-common/models/switchboard.js +92 -0
- package/dist/dl-common/models/transaction.d.ts +0 -0
- package/dist/dl-common/models/transaction.js +280 -0
- package/dist/dl-common/services/cacheService.d.ts +14 -0
- package/dist/dl-common/services/cacheService.js +77 -0
- package/dist/dl-common/services/eventBridgeService.d.ts +8 -0
- package/dist/dl-common/services/eventBridgeService.js +40 -0
- package/dist/dl-common/services/index.d.ts +3 -0
- package/dist/dl-common/services/index.js +20 -0
- package/dist/dl-common/services/queueService.d.ts +10 -0
- package/dist/dl-common/services/queueService.js +62 -0
- package/dist/dl-common/utils/address.d.ts +2 -0
- package/dist/dl-common/utils/address.js +8 -0
- package/dist/dl-common/utils/axios.d.ts +2 -0
- package/dist/dl-common/utils/axios.js +54 -0
- package/dist/dl-common/utils/dataStructHelper.d.ts +2 -0
- package/dist/dl-common/utils/dataStructHelper.js +10 -0
- package/dist/dl-common/utils/discord.d.ts +2 -0
- package/dist/dl-common/utils/discord.js +35 -0
- package/dist/dl-common/utils/ethersAwsKmsSigner.d.ts +2 -0
- package/dist/dl-common/utils/ethersAwsKmsSigner.js +26 -0
- package/dist/dl-common/utils/eventGetter.d.ts +4 -0
- package/dist/dl-common/utils/eventGetter.js +50 -0
- package/dist/dl-common/utils/extraUtils.d.ts +32 -0
- package/dist/dl-common/utils/extraUtils.js +103 -0
- package/dist/dl-common/utils/idUtils.d.ts +14 -0
- package/dist/dl-common/utils/idUtils.js +50 -0
- package/dist/dl-common/utils/index.d.ts +13 -0
- package/dist/dl-common/utils/index.js +29 -0
- package/dist/dl-common/utils/relaySigner.d.ts +21 -0
- package/dist/dl-common/utils/relaySigner.js +68 -0
- package/dist/dl-common/utils/s3Service.d.ts +5 -0
- package/dist/dl-common/utils/s3Service.js +45 -0
- package/dist/dl-common/utils/secretManagerService.d.ts +2 -0
- package/dist/dl-common/utils/secretManagerService.js +33 -0
- package/dist/dl-common/utils/signer/adapter.d.ts +18 -0
- package/dist/dl-common/utils/signer/adapter.js +71 -0
- package/dist/dl-common/utils/signer/address.d.ts +10 -0
- package/dist/dl-common/utils/signer/address.js +42 -0
- package/dist/dl-common/utils/signer/asn1-parser.d.ts +11 -0
- package/dist/dl-common/utils/signer/asn1-parser.js +80 -0
- package/dist/dl-common/utils/signer/crypto.d.ts +6 -0
- package/dist/dl-common/utils/signer/crypto.js +34 -0
- package/dist/dl-common/utils/signer/index.d.ts +4 -0
- package/dist/dl-common/utils/signer/index.js +20 -0
- package/dist/dl-common/utils/signer/kms-ethers-signer.d.ts +19 -0
- package/dist/dl-common/utils/signer/kms-ethers-signer.js +32 -0
- package/dist/dl-common/utils/signer/kms-signer.d.ts +14 -0
- package/dist/dl-common/utils/signer/kms-signer.js +46 -0
- package/dist/dl-common/utils/signer/signature.d.ts +17 -0
- package/dist/dl-common/utils/signer/signature.js +65 -0
- package/dist/dl-common/utils/signer/signer.d.ts +7 -0
- package/dist/dl-common/utils/signer/signer.js +2 -0
- package/dist/dl-common/utils/time.d.ts +2 -0
- package/dist/dl-common/utils/time.js +7 -0
- package/dist/index.js +30 -14
- package/dist/models/attestation.d.ts +2 -2
- package/dist/models/attestation.js +2 -2
- package/dist/models/index.d.ts +1 -0
- package/dist/models/index.js +1 -0
- package/dist/models/lastBlock.d.ts +28 -0
- package/dist/models/lastBlock.js +27 -0
- package/dist/models/message.d.ts +2 -2
- package/dist/models/message.js +2 -2
- package/dist/models/packet.d.ts +10 -2
- package/dist/models/packet.js +11 -2
- package/dist/models/proposal.d.ts +2 -2
- package/dist/models/proposal.js +2 -2
- package/dist/models/switchboard.d.ts +10 -2
- package/dist/models/switchboard.js +22 -5
- package/dist/models/transaction.d.ts +0 -0
- package/dist/models/transaction.js +280 -0
- package/dist/services/eventBridgeService.d.ts +8 -0
- package/dist/services/eventBridgeService.js +40 -0
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.js +1 -0
- package/dist/services/queueService.d.ts +2 -2
- package/dist/services/queueService.js +22 -14
- package/dist/src/constants/batcherModes.d.ts +7 -0
- package/dist/src/constants/batcherModes.js +56 -0
- package/dist/src/constants/config.d.ts +39 -0
- package/dist/src/constants/config.js +77 -0
- package/dist/src/constants/enums.d.ts +21 -0
- package/dist/src/constants/enums.js +27 -0
- package/dist/src/constants/gasEstimation.d.ts +8 -0
- package/dist/src/constants/gasEstimation.js +61 -0
- package/dist/src/constants/index.d.ts +11 -0
- package/dist/src/constants/index.js +28 -0
- package/dist/src/constants/limits.d.ts +21 -0
- package/dist/src/constants/limits.js +91 -0
- package/dist/src/constants/prometheus.config.d.ts +43 -0
- package/dist/src/constants/prometheus.config.js +316 -0
- package/dist/src/constants/relayer.d.ts +6 -0
- package/dist/src/constants/relayer.js +15 -0
- package/dist/src/constants/s3Config.d.ts +13 -0
- package/dist/src/constants/s3Config.js +61 -0
- package/dist/src/constants/stageConfig.d.ts +7 -0
- package/dist/src/constants/stageConfig.js +24 -0
- package/dist/src/constants/types.d.ts +45 -0
- package/dist/src/constants/types.js +2 -0
- package/dist/src/constants/watchers.d.ts +15 -0
- package/dist/src/constants/watchers.js +137 -0
- package/dist/src/controllers/index.d.ts +0 -0
- package/dist/src/controllers/index.js +3 -0
- package/dist/src/db/associations.d.ts +1 -0
- package/dist/src/db/associations.js +46 -0
- package/dist/src/db/connection.d.ts +4 -0
- package/dist/src/db/connection.js +73 -0
- package/dist/src/db/index.d.ts +2 -0
- package/dist/src/db/index.js +18 -0
- package/dist/src/db/init.d.ts +2 -0
- package/dist/src/db/init.js +27 -0
- package/dist/src/handlers/common.d.ts +2 -0
- package/dist/src/handlers/common.js +59 -0
- package/dist/src/handlers/cronHandler.d.ts +10 -0
- package/dist/src/handlers/cronHandler.js +268 -0
- package/dist/src/handlers/executeHandler.d.ts +3 -0
- package/dist/src/handlers/executeHandler.js +66 -0
- package/dist/src/handlers/handler.d.ts +2 -0
- package/dist/src/handlers/handler.js +29 -0
- package/dist/src/handlers/proposeHandler.d.ts +3 -0
- package/dist/src/handlers/proposeHandler.js +69 -0
- package/dist/src/handlers/routes.d.ts +2 -0
- package/dist/src/handlers/routes.js +26 -0
- package/dist/src/handlers/sealHandler.d.ts +4 -0
- package/dist/src/handlers/sealHandler.js +245 -0
- package/dist/src/handlers/statusHandler.d.ts +5 -0
- package/dist/src/handlers/statusHandler.js +116 -0
- package/dist/src/handlers/taskHandler.d.ts +2 -0
- package/dist/src/handlers/taskHandler.js +110 -0
- package/dist/src/handlers/testHandler.d.ts +4 -0
- package/dist/src/handlers/testHandler.js +99 -0
- package/dist/src/main.d.ts +0 -0
- package/dist/src/main.js +12 -0
- package/dist/src/relayers/common.d.ts +7 -0
- package/dist/src/relayers/common.js +55 -0
- package/dist/src/relayers/index.d.ts +2 -0
- package/dist/src/relayers/index.js +19 -0
- package/dist/src/relayers/proposeRelayer.d.ts +7 -0
- package/dist/src/relayers/proposeRelayer.js +587 -0
- package/dist/src/relayers/sealRelayer.d.ts +8 -0
- package/dist/src/relayers/sealRelayer.js +276 -0
- package/dist/src/services/attestService.d.ts +45 -0
- package/dist/src/services/attestService.js +269 -0
- package/dist/src/services/batcherService.d.ts +9 -0
- package/dist/src/services/batcherService.js +197 -0
- package/dist/src/services/executeService.d.ts +16 -0
- package/dist/src/services/executeService.js +209 -0
- package/dist/src/services/gasEstimationService.d.ts +3 -0
- package/dist/src/services/gasEstimationService.js +12 -0
- package/dist/src/services/index.d.ts +4 -0
- package/dist/src/services/index.js +23 -0
- package/dist/src/services/indexSealService.d.ts +15 -0
- package/dist/src/services/indexSealService.js +120 -0
- package/dist/src/services/proposalCheckService.d.ts +9 -0
- package/dist/src/services/proposalCheckService.js +119 -0
- package/dist/src/services/sealService.d.ts +27 -0
- package/dist/src/services/sealService.js +190 -0
- package/dist/src/statusTrackers/failedMessage.d.ts +8 -0
- package/dist/src/statusTrackers/failedMessage.js +72 -0
- package/dist/src/statusTrackers/failedPacket.d.ts +13 -0
- package/dist/src/statusTrackers/failedPacket.js +110 -0
- package/dist/src/statusTrackers/index.d.ts +3 -0
- package/dist/src/statusTrackers/index.js +26 -0
- package/dist/src/statusTrackers/message.d.ts +4 -0
- package/dist/src/statusTrackers/message.js +257 -0
- package/dist/src/statusTrackers/packet.d.ts +33 -0
- package/dist/src/statusTrackers/packet.js +477 -0
- package/dist/src/utils/chain-utils.d.ts +5 -0
- package/dist/src/utils/chain-utils.js +42 -0
- package/dist/src/utils/index.d.ts +2 -0
- package/dist/src/utils/index.js +18 -0
- package/dist/src/utils/logger.d.ts +9 -0
- package/dist/src/utils/logger.js +9 -0
- package/dist/utils/ethersAwsKmsSigner.d.ts +2 -2
- package/dist/utils/ethersAwsKmsSigner.js +6 -3
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.js +2 -0
- package/dist/utils/relaySigner.d.ts +2 -4
- package/dist/utils/relaySigner.js +7 -10
- package/dist/utils/s3Service.d.ts +5 -0
- package/dist/utils/s3Service.js +45 -0
- package/dist/utils/signer/adapter.d.ts +18 -0
- package/dist/utils/signer/adapter.js +71 -0
- package/dist/utils/signer/address.d.ts +10 -0
- package/dist/utils/signer/address.js +42 -0
- package/dist/utils/signer/asn1-parser.d.ts +11 -0
- package/dist/utils/signer/asn1-parser.js +80 -0
- package/dist/utils/signer/crypto.d.ts +6 -0
- package/dist/utils/signer/crypto.js +34 -0
- package/dist/utils/signer/index.d.ts +4 -0
- package/dist/utils/signer/index.js +20 -0
- package/dist/utils/signer/kms-ethers-signer.d.ts +19 -0
- package/dist/utils/signer/kms-ethers-signer.js +32 -0
- package/dist/utils/signer/kms-signer.d.ts +14 -0
- package/dist/utils/signer/kms-signer.js +46 -0
- package/dist/utils/signer/signature.d.ts +17 -0
- package/dist/utils/signer/signature.js +65 -0
- package/dist/utils/signer/signer.d.ts +7 -0
- package/dist/utils/signer/signer.js +2 -0
- package/dist/utils/time.d.ts +1 -0
- package/dist/utils/time.js +3 -1
- package/package.json +51 -16
- package/dist/types/codes.d.ts +0 -22
- package/dist/types/index.d.ts +0 -2
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addProposalHooks = exports.ProposalModel = exports.Proposal = exports.ProposalTripRelayStatus = exports.MatchState = exports.RootMatchState = exports.TripStatus = void 0;
|
|
4
|
+
const sequelize_1 = require("sequelize");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
var TripStatus;
|
|
7
|
+
(function (TripStatus) {
|
|
8
|
+
TripStatus["TRIP_REQUIRED"] = "TRIP_REQUIRED";
|
|
9
|
+
TripStatus["TRIP_INITIATED"] = "TRIP_INITIATED";
|
|
10
|
+
TripStatus["TRIP_SUCCESSFUL"] = "TRIP_SUCCESSFUL";
|
|
11
|
+
TripStatus["TRIP_FAILED"] = "TRIP_FAILED";
|
|
12
|
+
TripStatus["NO"] = "NO";
|
|
13
|
+
})(TripStatus || (exports.TripStatus = TripStatus = {}));
|
|
14
|
+
var RootMatchState;
|
|
15
|
+
(function (RootMatchState) {
|
|
16
|
+
RootMatchState["ROOTS_MATCHED"] = "ROOTS_MATCHED";
|
|
17
|
+
RootMatchState["ROOTS_MISMATCHED"] = "ROOTS_MISMATCHED";
|
|
18
|
+
RootMatchState["NO"] = "NO";
|
|
19
|
+
})(RootMatchState || (exports.RootMatchState = RootMatchState = {}));
|
|
20
|
+
var MatchState;
|
|
21
|
+
(function (MatchState) {
|
|
22
|
+
MatchState["MATCHED"] = "MATCHED";
|
|
23
|
+
MatchState["MISMATCHED"] = "MISMATCHED";
|
|
24
|
+
MatchState["NO"] = "NO";
|
|
25
|
+
})(MatchState || (exports.MatchState = MatchState = {}));
|
|
26
|
+
var ProposalTripRelayStatus;
|
|
27
|
+
(function (ProposalTripRelayStatus) {
|
|
28
|
+
ProposalTripRelayStatus["IS_TRIPPING"] = "IS_TRIPPING";
|
|
29
|
+
ProposalTripRelayStatus["NO"] = "NO";
|
|
30
|
+
ProposalTripRelayStatus["TRIPPING_FAILED"] = "TRIPPING_FAILED";
|
|
31
|
+
ProposalTripRelayStatus["TRIPPED"] = "TRIPPED";
|
|
32
|
+
})(ProposalTripRelayStatus || (exports.ProposalTripRelayStatus = ProposalTripRelayStatus = {}));
|
|
33
|
+
class Proposal extends sequelize_1.Model {
|
|
34
|
+
}
|
|
35
|
+
exports.Proposal = Proposal;
|
|
36
|
+
exports.ProposalModel = {
|
|
37
|
+
id: {
|
|
38
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
39
|
+
autoIncrement: true,
|
|
40
|
+
primaryKey: true,
|
|
41
|
+
},
|
|
42
|
+
srcChainSlug: {
|
|
43
|
+
type: sequelize_1.DataTypes.BIGINT,
|
|
44
|
+
},
|
|
45
|
+
dstChainSlug: {
|
|
46
|
+
type: sequelize_1.DataTypes.BIGINT,
|
|
47
|
+
},
|
|
48
|
+
packetId: {
|
|
49
|
+
type: sequelize_1.DataTypes.STRING,
|
|
50
|
+
unique: "uniqueProposalPointer",
|
|
51
|
+
},
|
|
52
|
+
proposalCount: {
|
|
53
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
54
|
+
unique: "uniqueProposalPointer",
|
|
55
|
+
},
|
|
56
|
+
root: {
|
|
57
|
+
type: sequelize_1.DataTypes.STRING,
|
|
58
|
+
},
|
|
59
|
+
switchboard: {
|
|
60
|
+
type: sequelize_1.DataTypes.STRING,
|
|
61
|
+
unique: "uniqueProposalPointer",
|
|
62
|
+
},
|
|
63
|
+
proposer: {
|
|
64
|
+
type: sequelize_1.DataTypes.STRING,
|
|
65
|
+
},
|
|
66
|
+
proposeTxHash: {
|
|
67
|
+
type: sequelize_1.DataTypes.STRING,
|
|
68
|
+
defaultValue: "",
|
|
69
|
+
},
|
|
70
|
+
proposeTime: {
|
|
71
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
72
|
+
},
|
|
73
|
+
tripTxId: {
|
|
74
|
+
type: sequelize_1.DataTypes.STRING,
|
|
75
|
+
defaultValue: "",
|
|
76
|
+
},
|
|
77
|
+
tripTxHash: {
|
|
78
|
+
type: sequelize_1.DataTypes.STRING,
|
|
79
|
+
defaultValue: "",
|
|
80
|
+
},
|
|
81
|
+
tripTime: {
|
|
82
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
83
|
+
},
|
|
84
|
+
tripErrorMessage: {
|
|
85
|
+
type: sequelize_1.DataTypes.STRING,
|
|
86
|
+
defaultValue: "",
|
|
87
|
+
},
|
|
88
|
+
isTripped: {
|
|
89
|
+
type: sequelize_1.DataTypes.BOOLEAN,
|
|
90
|
+
defaultValue: false,
|
|
91
|
+
},
|
|
92
|
+
tripRelayStatus: {
|
|
93
|
+
type: sequelize_1.DataTypes.ENUM,
|
|
94
|
+
values: [...Object.values(ProposalTripRelayStatus)],
|
|
95
|
+
defaultValue: ProposalTripRelayStatus.NO,
|
|
96
|
+
},
|
|
97
|
+
totalAttestations: {
|
|
98
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
99
|
+
defaultValue: 0,
|
|
100
|
+
},
|
|
101
|
+
rootMatchState: {
|
|
102
|
+
type: sequelize_1.DataTypes.ENUM,
|
|
103
|
+
values: [...Object.values(RootMatchState)],
|
|
104
|
+
defaultValue: RootMatchState.NO,
|
|
105
|
+
},
|
|
106
|
+
switchboardMatchState: {
|
|
107
|
+
type: sequelize_1.DataTypes.ENUM,
|
|
108
|
+
values: [...Object.values(MatchState)],
|
|
109
|
+
defaultValue: MatchState.NO,
|
|
110
|
+
},
|
|
111
|
+
isTripRequired: {
|
|
112
|
+
type: sequelize_1.DataTypes.BOOLEAN,
|
|
113
|
+
defaultValue: false,
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
function processStrings(proposal) {
|
|
117
|
+
if (proposal.packetId)
|
|
118
|
+
proposal.packetId = (0, utils_1.toLowerCase)(proposal.packetId);
|
|
119
|
+
if (proposal.root)
|
|
120
|
+
proposal.root = (0, utils_1.toLowerCase)(proposal.root);
|
|
121
|
+
if (proposal.switchboard)
|
|
122
|
+
proposal.switchboard = (0, utils_1.toLowerCase)(proposal.switchboard);
|
|
123
|
+
if (proposal.proposer)
|
|
124
|
+
proposal.proposer = (0, utils_1.toLowerCase)(proposal.proposer);
|
|
125
|
+
if (proposal.proposeTxHash)
|
|
126
|
+
proposal.proposeTxHash = (0, utils_1.toLowerCase)(proposal.proposeTxHash);
|
|
127
|
+
if (proposal.tripTxHash)
|
|
128
|
+
proposal.tripTxHash = (0, utils_1.toLowerCase)(proposal.tripTxHash);
|
|
129
|
+
return proposal;
|
|
130
|
+
}
|
|
131
|
+
const addProposalHooks = () => {
|
|
132
|
+
Proposal.beforeBulkCreate((proposal, options) => {
|
|
133
|
+
for (let index = 0; index < proposal.length; index++) {
|
|
134
|
+
proposal[index] = processStrings(proposal[index]);
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
Proposal.beforeSave((proposal, options) => {
|
|
138
|
+
proposal = processStrings(proposal);
|
|
139
|
+
});
|
|
140
|
+
};
|
|
141
|
+
exports.addProposalHooks = addProposalHooks;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { IntegrationTypes } from "@socket.tech/dl-core";
|
|
2
|
+
import { DataTypes, Model } from "sequelize";
|
|
3
|
+
export declare enum CapacitorType {
|
|
4
|
+
singleCapacitor = "1",
|
|
5
|
+
hashChainCapacitor = "2"
|
|
6
|
+
}
|
|
7
|
+
export declare class Switchboard extends Model {
|
|
8
|
+
id: number;
|
|
9
|
+
switchboardId: string;
|
|
10
|
+
srcChainSlug: number;
|
|
11
|
+
dstChainSlug: number;
|
|
12
|
+
maxPacketLength: number;
|
|
13
|
+
srcSwitchboard: string;
|
|
14
|
+
dstSwitchboard: string;
|
|
15
|
+
srcCapacitor: string;
|
|
16
|
+
srcDecapacitor: string;
|
|
17
|
+
capacitorType: CapacitorType;
|
|
18
|
+
isEnabled: boolean;
|
|
19
|
+
integrationType: IntegrationTypes;
|
|
20
|
+
}
|
|
21
|
+
export declare const SwitchboardModel: {
|
|
22
|
+
id: {
|
|
23
|
+
type: DataTypes.IntegerDataTypeConstructor;
|
|
24
|
+
autoIncrement: boolean;
|
|
25
|
+
primaryKey: boolean;
|
|
26
|
+
};
|
|
27
|
+
switchboardId: {
|
|
28
|
+
type: DataTypes.StringDataTypeConstructor;
|
|
29
|
+
};
|
|
30
|
+
srcChainSlug: {
|
|
31
|
+
type: DataTypes.BigIntDataTypeConstructor;
|
|
32
|
+
unique: string;
|
|
33
|
+
};
|
|
34
|
+
dstChainSlug: {
|
|
35
|
+
type: DataTypes.BigIntDataTypeConstructor;
|
|
36
|
+
unique: string;
|
|
37
|
+
};
|
|
38
|
+
maxPacketLength: {
|
|
39
|
+
type: DataTypes.IntegerDataTypeConstructor;
|
|
40
|
+
};
|
|
41
|
+
srcSwitchboard: {
|
|
42
|
+
type: DataTypes.StringDataTypeConstructor;
|
|
43
|
+
unique: string;
|
|
44
|
+
};
|
|
45
|
+
dstSwitchboard: {
|
|
46
|
+
type: DataTypes.StringDataTypeConstructor;
|
|
47
|
+
};
|
|
48
|
+
srcCapacitor: {
|
|
49
|
+
type: DataTypes.StringDataTypeConstructor;
|
|
50
|
+
};
|
|
51
|
+
srcDecapacitor: {
|
|
52
|
+
type: DataTypes.StringDataTypeConstructor;
|
|
53
|
+
};
|
|
54
|
+
capacitorType: {
|
|
55
|
+
type: DataTypes.EnumDataTypeConstructor;
|
|
56
|
+
values: CapacitorType[];
|
|
57
|
+
defaultValue: CapacitorType;
|
|
58
|
+
};
|
|
59
|
+
isEnabled: {
|
|
60
|
+
type: DataTypes.AbstractDataTypeConstructor;
|
|
61
|
+
defaultValue: boolean;
|
|
62
|
+
};
|
|
63
|
+
integrationType: {
|
|
64
|
+
type: DataTypes.EnumDataTypeConstructor;
|
|
65
|
+
values: IntegrationTypes[];
|
|
66
|
+
defaultValue: IntegrationTypes;
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
export declare const addSwitchboardHooks: () => Promise<void>;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addSwitchboardHooks = exports.SwitchboardModel = exports.Switchboard = exports.CapacitorType = void 0;
|
|
4
|
+
const dl_core_1 = require("@socket.tech/dl-core");
|
|
5
|
+
const sequelize_1 = require("sequelize");
|
|
6
|
+
const __1 = require("..");
|
|
7
|
+
var CapacitorType;
|
|
8
|
+
(function (CapacitorType) {
|
|
9
|
+
CapacitorType["singleCapacitor"] = "1";
|
|
10
|
+
CapacitorType["hashChainCapacitor"] = "2";
|
|
11
|
+
})(CapacitorType || (exports.CapacitorType = CapacitorType = {}));
|
|
12
|
+
class Switchboard extends sequelize_1.Model {
|
|
13
|
+
}
|
|
14
|
+
exports.Switchboard = Switchboard;
|
|
15
|
+
exports.SwitchboardModel = {
|
|
16
|
+
id: {
|
|
17
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
18
|
+
autoIncrement: true,
|
|
19
|
+
primaryKey: true,
|
|
20
|
+
},
|
|
21
|
+
switchboardId: {
|
|
22
|
+
type: sequelize_1.DataTypes.STRING,
|
|
23
|
+
},
|
|
24
|
+
srcChainSlug: {
|
|
25
|
+
type: sequelize_1.DataTypes.BIGINT,
|
|
26
|
+
unique: "uniqueSwitchboardPointer",
|
|
27
|
+
},
|
|
28
|
+
dstChainSlug: {
|
|
29
|
+
type: sequelize_1.DataTypes.BIGINT,
|
|
30
|
+
unique: "uniqueSwitchboardPointer",
|
|
31
|
+
},
|
|
32
|
+
maxPacketLength: {
|
|
33
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
34
|
+
},
|
|
35
|
+
srcSwitchboard: {
|
|
36
|
+
type: sequelize_1.DataTypes.STRING,
|
|
37
|
+
unique: "uniqueSwitchboardPointer",
|
|
38
|
+
},
|
|
39
|
+
dstSwitchboard: {
|
|
40
|
+
type: sequelize_1.DataTypes.STRING,
|
|
41
|
+
},
|
|
42
|
+
srcCapacitor: {
|
|
43
|
+
type: sequelize_1.DataTypes.STRING,
|
|
44
|
+
},
|
|
45
|
+
srcDecapacitor: {
|
|
46
|
+
type: sequelize_1.DataTypes.STRING,
|
|
47
|
+
},
|
|
48
|
+
capacitorType: {
|
|
49
|
+
type: sequelize_1.DataTypes.ENUM,
|
|
50
|
+
values: [...Object.values(CapacitorType)],
|
|
51
|
+
defaultValue: CapacitorType.singleCapacitor,
|
|
52
|
+
},
|
|
53
|
+
isEnabled: {
|
|
54
|
+
type: sequelize_1.DataTypes.BOOLEAN,
|
|
55
|
+
defaultValue: false,
|
|
56
|
+
},
|
|
57
|
+
integrationType: {
|
|
58
|
+
type: sequelize_1.DataTypes.ENUM,
|
|
59
|
+
values: [...Object.values(dl_core_1.IntegrationTypes)],
|
|
60
|
+
defaultValue: dl_core_1.IntegrationTypes.unknown,
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
const addSwitchboardHooks = async () => {
|
|
64
|
+
Switchboard.beforeBulkCreate((switchboards, options) => {
|
|
65
|
+
for (let index = 0; index < switchboards.length; index++) {
|
|
66
|
+
switchboards[index] = processStrings(switchboards[index]);
|
|
67
|
+
switchboards[index] = createSwitchboardId(switchboards[index]);
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
Switchboard.beforeSave((switchboard, options) => {
|
|
71
|
+
switchboard = processStrings(switchboard);
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
exports.addSwitchboardHooks = addSwitchboardHooks;
|
|
75
|
+
function processStrings(switchboard) {
|
|
76
|
+
if (switchboard.srcSwitchboard)
|
|
77
|
+
switchboard.srcSwitchboard = (0, __1.toLowerCase)(switchboard.srcSwitchboard);
|
|
78
|
+
if (switchboard.dstSwitchboard)
|
|
79
|
+
switchboard.dstSwitchboard = (0, __1.toLowerCase)(switchboard.dstSwitchboard);
|
|
80
|
+
if (switchboard.srcCapacitor)
|
|
81
|
+
switchboard.srcCapacitor = (0, __1.toLowerCase)(switchboard.srcCapacitor);
|
|
82
|
+
if (switchboard.srcDecapacitor)
|
|
83
|
+
switchboard.srcDecapacitor = (0, __1.toLowerCase)(switchboard.srcDecapacitor);
|
|
84
|
+
return switchboard;
|
|
85
|
+
}
|
|
86
|
+
function createSwitchboardId(switchboard) {
|
|
87
|
+
if (switchboard.srcSwitchboard &&
|
|
88
|
+
switchboard.srcChainSlug &&
|
|
89
|
+
switchboard.dstChainSlug)
|
|
90
|
+
switchboard.switchboardId = `${switchboard.srcChainSlug}-${switchboard.dstChainSlug}-${switchboard.srcSwitchboard.toLowerCase()}`;
|
|
91
|
+
return switchboard;
|
|
92
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// import { IntegrationTypes } from "@socket.tech/dl-core";
|
|
3
|
+
// import { DataTypes, Model } from "sequelize";
|
|
4
|
+
// import { toLowerCase } from "../utils";
|
|
5
|
+
// import {Project} from "@socket.tech/socket-plugs";
|
|
6
|
+
// export enum SealRelayStatus {
|
|
7
|
+
// SEALED = "SEALED",
|
|
8
|
+
// SEALING = "SEALING",
|
|
9
|
+
// NO = "NO",
|
|
10
|
+
// SEAL_FAILED = "SEAL_FAILED",
|
|
11
|
+
// }
|
|
12
|
+
// export enum PacketTripRelayStatus {
|
|
13
|
+
// IS_TRIPPING = "IS_TRIPPING",
|
|
14
|
+
// NO = "NO",
|
|
15
|
+
// TRIPPING_FAILED = "TRIPPING_FAILED",
|
|
16
|
+
// TRIPPED = "TRIPPED",
|
|
17
|
+
// }
|
|
18
|
+
// export enum ProposeRelayStatus {
|
|
19
|
+
// PROPOSED = "PROPOSED",
|
|
20
|
+
// PROPOSING = "PROPOSING",
|
|
21
|
+
// CONFIRMING = "CONFIRMING",
|
|
22
|
+
// NO = "NO",
|
|
23
|
+
// PROPOSE_FAILED = "PROPOSE_FAILED",
|
|
24
|
+
// CONFIRM_FAILED = "CONFIRM_FAILED",
|
|
25
|
+
// }
|
|
26
|
+
// export enum TxType {
|
|
27
|
+
// SUPERBRIDGE = "SUPERBRIDGE",
|
|
28
|
+
// SUPERTOKEN = "SUPERTOKEN"
|
|
29
|
+
// }
|
|
30
|
+
// export class Transaction extends Model {
|
|
31
|
+
// declare id: number;
|
|
32
|
+
// srcChainSlug: number;
|
|
33
|
+
// dstChainSlug: number;
|
|
34
|
+
// from: string;
|
|
35
|
+
// to:string;
|
|
36
|
+
// amount:number;
|
|
37
|
+
// token: string;
|
|
38
|
+
// tokenAddress: string;
|
|
39
|
+
// srcPlug: string;
|
|
40
|
+
// dstPlug: string;
|
|
41
|
+
// usdAmount: number;
|
|
42
|
+
// type: TxType;
|
|
43
|
+
// project: Project;
|
|
44
|
+
// srcTxHash: string;
|
|
45
|
+
// txTime: string;
|
|
46
|
+
// root: string;
|
|
47
|
+
// rootSealed: string;
|
|
48
|
+
// sealer: string;
|
|
49
|
+
// sealTxHash: string;
|
|
50
|
+
// sealTxId: string;
|
|
51
|
+
// sealSignature: string;
|
|
52
|
+
// sealTime: number;
|
|
53
|
+
// sealRelayStatus: SealRelayStatus;
|
|
54
|
+
// packetTripTime: number;
|
|
55
|
+
// packetTripTxnHash: string;
|
|
56
|
+
// packetTripErrorMessage: string;
|
|
57
|
+
// isPacketTripped: boolean;
|
|
58
|
+
// packetTripRelayStatus: PacketTripRelayStatus;
|
|
59
|
+
// // proposeTxId, proposeTxHash refers to the proposal sent by us. For details of other proposals, see Proposal table.
|
|
60
|
+
// proposeTxId: string;
|
|
61
|
+
// proposeTxHash: string;
|
|
62
|
+
// proposeRelayStatus: ProposeRelayStatus;
|
|
63
|
+
// selectedProposalCount: number;
|
|
64
|
+
// // attestTxId, attestTxHash refers to the attestation sent by us. For details of other attestations, see Attestation table.
|
|
65
|
+
// attestTxId: string;
|
|
66
|
+
// attestTxHash: string;
|
|
67
|
+
// attestRelayStatus: AttestRelayStatus;
|
|
68
|
+
// outboundTxHash: string;
|
|
69
|
+
// outboundTime: number;
|
|
70
|
+
// sealIndexTime: number;
|
|
71
|
+
// proposeTime: number;
|
|
72
|
+
// attestTime: number;
|
|
73
|
+
// packetTripTxHash: string;
|
|
74
|
+
// isFilled: boolean;
|
|
75
|
+
// isSealed: boolean;
|
|
76
|
+
// isProposed: boolean;
|
|
77
|
+
// isAttested: boolean;
|
|
78
|
+
// isVerified: boolean;
|
|
79
|
+
// isFullyExecuted: boolean;
|
|
80
|
+
// tripreason: TripReason;
|
|
81
|
+
// executionWaitTime: number;
|
|
82
|
+
// }
|
|
83
|
+
// export const PacketModel = {
|
|
84
|
+
// id: {
|
|
85
|
+
// type: DataTypes.INTEGER,
|
|
86
|
+
// autoIncrement: true,
|
|
87
|
+
// },
|
|
88
|
+
// srcChainSlug: {
|
|
89
|
+
// type: DataTypes.BIGINT,
|
|
90
|
+
// },
|
|
91
|
+
// dstChainSlug: {
|
|
92
|
+
// type: DataTypes.BIGINT,
|
|
93
|
+
// },
|
|
94
|
+
// srcCapacitor: {
|
|
95
|
+
// type: DataTypes.STRING,
|
|
96
|
+
// },
|
|
97
|
+
// dstSwitchboard: {
|
|
98
|
+
// type: DataTypes.STRING,
|
|
99
|
+
// },
|
|
100
|
+
// switchboardId: {
|
|
101
|
+
// type: DataTypes.STRING,
|
|
102
|
+
// },
|
|
103
|
+
// integrationType: {
|
|
104
|
+
// type: DataTypes.ENUM,
|
|
105
|
+
// values: [...Object.values(IntegrationTypes)],
|
|
106
|
+
// defaultValue: IntegrationTypes.unknown,
|
|
107
|
+
// },
|
|
108
|
+
// packetId: {
|
|
109
|
+
// type: DataTypes.STRING,
|
|
110
|
+
// primaryKey: true,
|
|
111
|
+
// },
|
|
112
|
+
// capacitorPacketCount: {
|
|
113
|
+
// type: DataTypes.STRING,
|
|
114
|
+
// },
|
|
115
|
+
// root: {
|
|
116
|
+
// type: DataTypes.STRING,
|
|
117
|
+
// },
|
|
118
|
+
// rootSealed: {
|
|
119
|
+
// type: DataTypes.STRING,
|
|
120
|
+
// },
|
|
121
|
+
// isFilled: {
|
|
122
|
+
// type: DataTypes.BOOLEAN,
|
|
123
|
+
// },
|
|
124
|
+
// isSealed: {
|
|
125
|
+
// type: DataTypes.BOOLEAN,
|
|
126
|
+
// defaultValue: false,
|
|
127
|
+
// },
|
|
128
|
+
// isProposed: {
|
|
129
|
+
// type: DataTypes.BOOLEAN,
|
|
130
|
+
// defaultValue: false,
|
|
131
|
+
// },
|
|
132
|
+
// isAttested: {
|
|
133
|
+
// type: DataTypes.BOOLEAN,
|
|
134
|
+
// defaultValue: false,
|
|
135
|
+
// },
|
|
136
|
+
// isVerified: {
|
|
137
|
+
// type: DataTypes.BOOLEAN,
|
|
138
|
+
// defaultValue: false,
|
|
139
|
+
// },
|
|
140
|
+
// isFullyExecuted: {
|
|
141
|
+
// type: DataTypes.BOOLEAN,
|
|
142
|
+
// defaultValue: false,
|
|
143
|
+
// },
|
|
144
|
+
// sealer: {
|
|
145
|
+
// type: DataTypes.STRING,
|
|
146
|
+
// },
|
|
147
|
+
// sealRelayStatus: {
|
|
148
|
+
// type: DataTypes.ENUM,
|
|
149
|
+
// values: [...Object.values(SealRelayStatus)],
|
|
150
|
+
// defaultValue: SealRelayStatus.NO,
|
|
151
|
+
// },
|
|
152
|
+
// sealTxId: {
|
|
153
|
+
// type: DataTypes.STRING,
|
|
154
|
+
// defaultValue: "",
|
|
155
|
+
// },
|
|
156
|
+
// sealTxHash: {
|
|
157
|
+
// type: DataTypes.STRING,
|
|
158
|
+
// defaultValue: "",
|
|
159
|
+
// },
|
|
160
|
+
// outboundTxHash: {
|
|
161
|
+
// type: DataTypes.STRING,
|
|
162
|
+
// defaultValue: "",
|
|
163
|
+
// },
|
|
164
|
+
// outboundTime: {
|
|
165
|
+
// type: DataTypes.INTEGER,
|
|
166
|
+
// },
|
|
167
|
+
// proposeTime: {
|
|
168
|
+
// type: DataTypes.INTEGER,
|
|
169
|
+
// },
|
|
170
|
+
// attestTime: {
|
|
171
|
+
// type: DataTypes.INTEGER,
|
|
172
|
+
// },
|
|
173
|
+
// sealTime: {
|
|
174
|
+
// type: DataTypes.INTEGER,
|
|
175
|
+
// },
|
|
176
|
+
// sealIndexTime: {
|
|
177
|
+
// type: DataTypes.INTEGER,
|
|
178
|
+
// },
|
|
179
|
+
// sealSignature: {
|
|
180
|
+
// type: DataTypes.STRING,
|
|
181
|
+
// },
|
|
182
|
+
// packetTripRelayStatus: {
|
|
183
|
+
// type: DataTypes.ENUM,
|
|
184
|
+
// values: [...Object.values(PacketTripRelayStatus)],
|
|
185
|
+
// defaultValue: PacketTripRelayStatus.NO,
|
|
186
|
+
// },
|
|
187
|
+
// packetTripTxId: {
|
|
188
|
+
// type: DataTypes.STRING,
|
|
189
|
+
// defaultValue: "",
|
|
190
|
+
// },
|
|
191
|
+
// packetTripTxHash: {
|
|
192
|
+
// type: DataTypes.STRING,
|
|
193
|
+
// defaultValue: "",
|
|
194
|
+
// },
|
|
195
|
+
// packetTripErrorMessage: {
|
|
196
|
+
// type: DataTypes.STRING,
|
|
197
|
+
// defaultValue: "",
|
|
198
|
+
// },
|
|
199
|
+
// packetTripTime: {
|
|
200
|
+
// type: DataTypes.INTEGER,
|
|
201
|
+
// },
|
|
202
|
+
// isPacketTripped: {
|
|
203
|
+
// type: DataTypes.BOOLEAN,
|
|
204
|
+
// defaultValue: false,
|
|
205
|
+
// },
|
|
206
|
+
// proposeTxId: {
|
|
207
|
+
// type: DataTypes.STRING,
|
|
208
|
+
// defaultValue: "",
|
|
209
|
+
// },
|
|
210
|
+
// proposeTxHash: {
|
|
211
|
+
// type: DataTypes.STRING,
|
|
212
|
+
// defaultValue: "",
|
|
213
|
+
// },
|
|
214
|
+
// proposeRelayStatus: {
|
|
215
|
+
// type: DataTypes.ENUM,
|
|
216
|
+
// values: [...Object.values(ProposeRelayStatus)],
|
|
217
|
+
// defaultValue: ProposeRelayStatus.NO,
|
|
218
|
+
// },
|
|
219
|
+
// selectedProposalCount: {
|
|
220
|
+
// type: DataTypes.INTEGER,
|
|
221
|
+
// },
|
|
222
|
+
// executionWaitTime: {
|
|
223
|
+
// type: DataTypes.INTEGER,
|
|
224
|
+
// },
|
|
225
|
+
// attestTxId: {
|
|
226
|
+
// type: DataTypes.STRING,
|
|
227
|
+
// defaultValue: "",
|
|
228
|
+
// },
|
|
229
|
+
// attestTxHash: {
|
|
230
|
+
// type: DataTypes.STRING,
|
|
231
|
+
// defaultValue: "",
|
|
232
|
+
// },
|
|
233
|
+
// tripReason: {
|
|
234
|
+
// type: DataTypes.ENUM,
|
|
235
|
+
// values: [...Object.values(TripReason)],
|
|
236
|
+
// defaultValue: TripReason.NO,
|
|
237
|
+
// },
|
|
238
|
+
// // packetTripTxHash: {
|
|
239
|
+
// // type: DataTypes.STRING,
|
|
240
|
+
// // defaultValue: "",
|
|
241
|
+
// // },
|
|
242
|
+
// attestRelayStatus: {
|
|
243
|
+
// type: DataTypes.ENUM,
|
|
244
|
+
// values: [...Object.values(AttestRelayStatus)],
|
|
245
|
+
// defaultValue: AttestRelayStatus.NO,
|
|
246
|
+
// },
|
|
247
|
+
// };
|
|
248
|
+
// function processStrings(packet: Packet): Packet {
|
|
249
|
+
// if (packet.packetId) packet.packetId = toLowerCase(packet.packetId);
|
|
250
|
+
// if (packet.root) packet.root = toLowerCase(packet.root);
|
|
251
|
+
// if (packet.rootSealed) packet.rootSealed = toLowerCase(packet.rootSealed);
|
|
252
|
+
// if (packet.sealer) packet.sealer = toLowerCase(packet.sealer);
|
|
253
|
+
// if (packet.outboundTxHash) {
|
|
254
|
+
// packet.outboundTxHash = toLowerCase(packet.outboundTxHash);
|
|
255
|
+
// }
|
|
256
|
+
// if (packet.sealTxHash) packet.sealTxHash = toLowerCase(packet.sealTxHash);
|
|
257
|
+
// if (packet.sealSignature) {
|
|
258
|
+
// packet.sealSignature = toLowerCase(packet.sealSignature);
|
|
259
|
+
// }
|
|
260
|
+
// if (packet.dstSwitchboard) {
|
|
261
|
+
// packet.dstSwitchboard = toLowerCase(packet.dstSwitchboard);
|
|
262
|
+
// }
|
|
263
|
+
// if (packet.switchboardId) {
|
|
264
|
+
// packet.switchboardId = toLowerCase(packet.switchboardId);
|
|
265
|
+
// }
|
|
266
|
+
// if (packet.packetTripTxHash) {
|
|
267
|
+
// packet.packetTripTxHash = toLowerCase(packet.packetTripTxHash);
|
|
268
|
+
// }
|
|
269
|
+
// return packet;
|
|
270
|
+
// }
|
|
271
|
+
// export const addPacketHooks = () => {
|
|
272
|
+
// Packet.beforeBulkCreate((packet, options) => {
|
|
273
|
+
// for (let index = 0; index < packet.length; index++) {
|
|
274
|
+
// packet[index] = processStrings(packet[index]);
|
|
275
|
+
// }
|
|
276
|
+
// });
|
|
277
|
+
// Packet.beforeSave((packet, options) => {
|
|
278
|
+
// packet = processStrings(packet);
|
|
279
|
+
// });
|
|
280
|
+
// };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare let client: any;
|
|
2
|
+
export declare const initCache: (host: string, port: number, password: string, stage: string, serviceName: string) => void;
|
|
3
|
+
export declare const formatKey: (key: string) => string;
|
|
4
|
+
export declare const getKey: (key: string) => Promise<any>;
|
|
5
|
+
export declare const lock: (key: string, expire?: number) => Promise<boolean>;
|
|
6
|
+
export declare const deleteKey: (key: string) => Promise<any>;
|
|
7
|
+
export declare const unlock: (key: string) => Promise<any>;
|
|
8
|
+
export declare const setKey: (key: string, value: any, expire?: number, setIfNotExist?: boolean) => Promise<boolean>;
|
|
9
|
+
export declare const rpush: (key: string, values: any[]) => Promise<any>;
|
|
10
|
+
export declare const lpop: (key: string) => Promise<any>;
|
|
11
|
+
export declare const getListLength: (key: string) => Promise<any>;
|
|
12
|
+
export declare const increment: (key: string) => Promise<any>;
|
|
13
|
+
export declare const decrement: (key: string) => Promise<any>;
|
|
14
|
+
export declare const sendCommand: (command: string, params: any[]) => Promise<any>;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sendCommand = exports.decrement = exports.increment = exports.getListLength = exports.lpop = exports.rpush = exports.setKey = exports.unlock = exports.deleteKey = exports.lock = exports.getKey = exports.formatKey = exports.initCache = exports.client = void 0;
|
|
4
|
+
const redis = require("async-redis");
|
|
5
|
+
let deploymentStage;
|
|
6
|
+
let servicePrefix;
|
|
7
|
+
const initCache = (host, port, password, stage, serviceName) => {
|
|
8
|
+
exports.client = redis.createClient({
|
|
9
|
+
port,
|
|
10
|
+
host,
|
|
11
|
+
password,
|
|
12
|
+
});
|
|
13
|
+
deploymentStage = stage;
|
|
14
|
+
servicePrefix = serviceName;
|
|
15
|
+
};
|
|
16
|
+
exports.initCache = initCache;
|
|
17
|
+
const formatKey = (key) => {
|
|
18
|
+
return deploymentStage + "_" + servicePrefix + "_" + key;
|
|
19
|
+
};
|
|
20
|
+
exports.formatKey = formatKey;
|
|
21
|
+
const getKey = async (key) => {
|
|
22
|
+
return await exports.client.get((0, exports.formatKey)(key));
|
|
23
|
+
};
|
|
24
|
+
exports.getKey = getKey;
|
|
25
|
+
const lock = async (key, expire = 0) => {
|
|
26
|
+
return await (0, exports.setKey)(key, "locked", expire, true);
|
|
27
|
+
};
|
|
28
|
+
exports.lock = lock;
|
|
29
|
+
const deleteKey = async (key) => {
|
|
30
|
+
return await exports.client.del((0, exports.formatKey)(key));
|
|
31
|
+
};
|
|
32
|
+
exports.deleteKey = deleteKey;
|
|
33
|
+
const unlock = async (key) => {
|
|
34
|
+
return await exports.client.del((0, exports.formatKey)(key));
|
|
35
|
+
};
|
|
36
|
+
exports.unlock = unlock;
|
|
37
|
+
const setKey = async (key, value, expire = 0, setIfNotExist = false) => {
|
|
38
|
+
let params = [(0, exports.formatKey)(key), value];
|
|
39
|
+
if (expire > 0)
|
|
40
|
+
params.push("EX", expire);
|
|
41
|
+
if (setIfNotExist)
|
|
42
|
+
params.push("NX");
|
|
43
|
+
let response = await exports.client.sendCommand("SET", params);
|
|
44
|
+
if (response) {
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
else
|
|
48
|
+
return false;
|
|
49
|
+
};
|
|
50
|
+
exports.setKey = setKey;
|
|
51
|
+
const rpush = async (key, values) => {
|
|
52
|
+
return await exports.client.rpush((0, exports.formatKey)(key), values);
|
|
53
|
+
};
|
|
54
|
+
exports.rpush = rpush;
|
|
55
|
+
const lpop = async (key) => {
|
|
56
|
+
return await exports.client.lpop((0, exports.formatKey)(key));
|
|
57
|
+
};
|
|
58
|
+
exports.lpop = lpop;
|
|
59
|
+
const getListLength = async (key) => {
|
|
60
|
+
return await exports.client.llen((0, exports.formatKey)(key));
|
|
61
|
+
};
|
|
62
|
+
exports.getListLength = getListLength;
|
|
63
|
+
const increment = async (key) => {
|
|
64
|
+
let value = await exports.client.incr((0, exports.formatKey)(key));
|
|
65
|
+
console.log("incremented key : ", (0, exports.formatKey)(key), " value : ", value);
|
|
66
|
+
return value;
|
|
67
|
+
};
|
|
68
|
+
exports.increment = increment;
|
|
69
|
+
const decrement = async (key) => {
|
|
70
|
+
return await exports.client.decr((0, exports.formatKey)(key));
|
|
71
|
+
};
|
|
72
|
+
exports.decrement = decrement;
|
|
73
|
+
const sendCommand = async (command, params) => {
|
|
74
|
+
params[0] = (0, exports.formatKey)(params[0]);
|
|
75
|
+
return await exports.client.sendCommand(command, params);
|
|
76
|
+
};
|
|
77
|
+
exports.sendCommand = sendCommand;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type EventBridgeEntry = {
|
|
2
|
+
eventBus: string;
|
|
3
|
+
source: string;
|
|
4
|
+
detailType: string;
|
|
5
|
+
data: Object;
|
|
6
|
+
};
|
|
7
|
+
export declare const initEventBridgeClient: (region?: string) => void;
|
|
8
|
+
export declare const sendEvents: (events: EventBridgeEntry[]) => Promise<import("@aws-sdk/client-eventbridge").ServiceOutputTypes>;
|