@gearbox-protocol/sdk 0.0.39 → 0.0.42
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/lib/core/adapters.d.ts +14 -0
- package/lib/core/adapters.js +18 -0
- package/lib/core/contracts.d.ts +32 -65
- package/lib/core/contracts.js +169 -105
- package/lib/core/contractsRegister.js +28 -31
- package/lib/core/oracles.d.ts +5 -5
- package/lib/core/pathfinder.d.ts +5 -5
- package/lib/core/pathfinder.js +1 -1
- package/lib/core/priceFeeds.d.ts +2 -2
- package/lib/core/priceFeeds.js +31 -0
- package/lib/core/protocols.d.ts +13 -0
- package/lib/core/protocols.js +39 -0
- package/lib/core/token.d.ts +30 -5
- package/lib/core/token.js +119 -11
- package/lib/core/tokenData.d.ts +2 -2
- package/lib/devops/loggedDeployer.d.ts +7 -0
- package/lib/devops/loggedDeployer.js +22 -0
- package/lib/devops/verifierDeployer.d.ts +13 -0
- package/lib/devops/verifierDeployer.js +161 -0
- package/lib/index.d.ts +2 -1
- package/lib/index.js +3 -2
- package/package.json +6 -2
- package/src/core/adapters.ts +16 -0
- package/src/core/contracts.ts +241 -140
- package/src/core/contractsRegister.ts +10 -17
- package/src/core/oracles.ts +5 -5
- package/src/core/pathfinder.ts +6 -6
- package/src/core/priceFeeds.ts +442 -412
- package/src/core/protocols.ts +40 -0
- package/src/core/token.ts +200 -60
- package/src/core/tokenData.ts +2 -2
- package/src/devops/loggedDeployer.ts +22 -0
- package/src/devops/verifierDeployer.ts +79 -0
- package/src/index.ts +2 -1
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.protocolData = exports.Protocols = void 0;
|
|
5
|
+
var Protocols;
|
|
6
|
+
(function (Protocols) {
|
|
7
|
+
Protocols[Protocols["Uniswap"] = 0] = "Uniswap";
|
|
8
|
+
Protocols[Protocols["Sushiswap"] = 1] = "Sushiswap";
|
|
9
|
+
Protocols[Protocols["Curve"] = 2] = "Curve";
|
|
10
|
+
Protocols[Protocols["Yearn"] = 3] = "Yearn";
|
|
11
|
+
Protocols[Protocols["Convex"] = 4] = "Convex";
|
|
12
|
+
Protocols[Protocols["Lido"] = 5] = "Lido";
|
|
13
|
+
})(Protocols = exports.Protocols || (exports.Protocols = {}));
|
|
14
|
+
exports.protocolData = (_a = {},
|
|
15
|
+
_a[Protocols.Uniswap] = {
|
|
16
|
+
name: "Uniswap",
|
|
17
|
+
icon: "/protocols/uniswap.png"
|
|
18
|
+
},
|
|
19
|
+
_a[Protocols.Sushiswap] = {
|
|
20
|
+
name: "Sushiswap",
|
|
21
|
+
icon: "/protocols/sushi.svg"
|
|
22
|
+
},
|
|
23
|
+
_a[Protocols.Curve] = {
|
|
24
|
+
name: "Curve",
|
|
25
|
+
icon: "/protocols/curve.svg"
|
|
26
|
+
},
|
|
27
|
+
_a[Protocols.Yearn] = {
|
|
28
|
+
name: "Yearn",
|
|
29
|
+
icon: "/protocols/yearn.svg"
|
|
30
|
+
},
|
|
31
|
+
_a[Protocols.Convex] = {
|
|
32
|
+
name: "Convex",
|
|
33
|
+
icon: "/protocols/convex.svg"
|
|
34
|
+
},
|
|
35
|
+
_a[Protocols.Lido] = {
|
|
36
|
+
name: "Lido",
|
|
37
|
+
icon: "/protocols/lido.svg"
|
|
38
|
+
},
|
|
39
|
+
_a);
|
package/lib/core/token.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { NetworkType } from "./constants";
|
|
2
|
+
import { ConvexPoolContract } from "./contracts";
|
|
2
3
|
declare enum TokenType {
|
|
3
4
|
CONNECTOR = 0,
|
|
4
5
|
NORMAL_TOKEN = 1,
|
|
@@ -11,25 +12,49 @@ declare enum TokenType {
|
|
|
11
12
|
CONVEX_STAKED_PHANTOM_TOKEN = 8
|
|
12
13
|
}
|
|
13
14
|
export declare const priority: Record<TokenType, number>;
|
|
15
|
+
export declare type NormalToken = "1INCH" | "AAVE" | "COMP" | "CRV" | "DAI" | "DPI" | "FEI" | "LINK" | "SNX" | "SUSHI" | "UNI" | "USDC" | "USDT" | "WBTC" | "WETH" | "YFI" | "STETH" | "FTM" | "CVX" | "FRAX" | "FXS" | "LDO" | "SPELL" | "LUSD" | "sUSD" | "GUSD" | "LUNA" | "LQTY";
|
|
16
|
+
export declare type CurveLPToken = "3Crv" | "steCRV" | "FRAX3CRV" | "LUSD3CRV" | "crvPlain3andSUSD" | "gusd3CRV";
|
|
17
|
+
export declare type YearnLPToken = "yvDAI" | "yvUSDC" | "yvWETH" | "yvWBTC" | "yvCurve_stETH" | "yvCurve_FRAX";
|
|
18
|
+
export declare type ConvexLPToken = "cvx3Crv" | "cvxsteCRV" | "cvxFRAX3CRV" | "cvxcrvPlain3andSUSD" | "cvxgusd3CRV";
|
|
19
|
+
export declare type ConvexStakedPhantomToken = "stkcvx3Crv" | "stkcvxsteCRV" | "stkcvxFRAX3CRV" | "stkcvxcrvPlain3andSUSD" | "stkcvxgusd3CRV";
|
|
20
|
+
export declare type SupportedToken = NormalToken | YearnLPToken | CurveLPToken | ConvexLPToken | ConvexStakedPhantomToken;
|
|
14
21
|
export declare type TokenDataI = {
|
|
22
|
+
symbol: NormalToken;
|
|
15
23
|
type: TokenType.CONNECTOR;
|
|
16
24
|
} | {
|
|
25
|
+
symbol: NormalToken;
|
|
17
26
|
type: TokenType.NORMAL_TOKEN;
|
|
18
27
|
} | {
|
|
28
|
+
symbol: CurveLPToken;
|
|
19
29
|
type: TokenType.CURVE_LP;
|
|
20
30
|
} | {
|
|
31
|
+
symbol: YearnLPToken;
|
|
21
32
|
type: TokenType.YEARN_VAULT;
|
|
22
|
-
underlying:
|
|
33
|
+
underlying: NormalToken;
|
|
23
34
|
} | {
|
|
35
|
+
symbol: CurveLPToken;
|
|
24
36
|
type: TokenType.META_CURVE_LP;
|
|
25
37
|
} | {
|
|
38
|
+
symbol: YearnLPToken;
|
|
26
39
|
type: TokenType.YEARN_VAULT_OF_CURVE_LP;
|
|
40
|
+
underlying: CurveLPToken;
|
|
27
41
|
} | {
|
|
42
|
+
symbol: YearnLPToken;
|
|
43
|
+
type: TokenType.YEARN_VAULT_OF_META_CURVE_LP;
|
|
44
|
+
underlying: CurveLPToken;
|
|
45
|
+
} | {
|
|
46
|
+
symbol: ConvexLPToken;
|
|
28
47
|
type: TokenType.CONVEX_LP_TOKEN;
|
|
48
|
+
pool: ConvexPoolContract;
|
|
49
|
+
underlying: CurveLPToken;
|
|
50
|
+
stakedToken: ConvexStakedPhantomToken;
|
|
29
51
|
} | {
|
|
30
|
-
|
|
52
|
+
symbol: ConvexStakedPhantomToken;
|
|
53
|
+
type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN;
|
|
54
|
+
pool: ConvexPoolContract;
|
|
55
|
+
underlying: CurveLPToken;
|
|
56
|
+
lpToken: ConvexLPToken;
|
|
31
57
|
};
|
|
32
|
-
export declare
|
|
33
|
-
export declare const
|
|
34
|
-
export declare const tokenDataByNetwork: Record<NetworkType, Record<SupportedTokens, string>>;
|
|
58
|
+
export declare const supportedTokens: Record<SupportedToken, TokenDataI>;
|
|
59
|
+
export declare const tokenDataByNetwork: Record<NetworkType, Record<SupportedToken, string>>;
|
|
35
60
|
export {};
|
package/lib/core/token.js
CHANGED
|
@@ -27,149 +27,247 @@ exports.priority = (_a = {},
|
|
|
27
27
|
_a);
|
|
28
28
|
exports.supportedTokens = {
|
|
29
29
|
"1INCH": {
|
|
30
|
+
symbol: "1INCH",
|
|
30
31
|
type: TokenType.NORMAL_TOKEN
|
|
31
32
|
},
|
|
32
33
|
AAVE: {
|
|
34
|
+
symbol: "AAVE",
|
|
33
35
|
type: TokenType.NORMAL_TOKEN
|
|
34
36
|
},
|
|
35
37
|
COMP: {
|
|
38
|
+
symbol: "COMP",
|
|
36
39
|
type: TokenType.NORMAL_TOKEN
|
|
37
40
|
},
|
|
38
41
|
CRV: {
|
|
42
|
+
symbol: "CRV",
|
|
39
43
|
type: TokenType.NORMAL_TOKEN
|
|
40
44
|
},
|
|
41
45
|
DAI: {
|
|
46
|
+
symbol: "DAI",
|
|
42
47
|
type: TokenType.CONNECTOR
|
|
43
48
|
},
|
|
44
49
|
DPI: {
|
|
50
|
+
symbol: "DPI",
|
|
45
51
|
type: TokenType.NORMAL_TOKEN
|
|
46
52
|
},
|
|
47
53
|
FEI: {
|
|
54
|
+
symbol: "FEI",
|
|
48
55
|
type: TokenType.NORMAL_TOKEN
|
|
49
56
|
},
|
|
50
57
|
LINK: {
|
|
58
|
+
symbol: "LINK",
|
|
51
59
|
type: TokenType.NORMAL_TOKEN
|
|
52
60
|
},
|
|
53
61
|
SNX: {
|
|
62
|
+
symbol: "SNX",
|
|
54
63
|
type: TokenType.NORMAL_TOKEN
|
|
55
64
|
},
|
|
56
65
|
SUSHI: {
|
|
66
|
+
symbol: "SUSHI",
|
|
57
67
|
type: TokenType.NORMAL_TOKEN
|
|
58
68
|
},
|
|
59
69
|
UNI: {
|
|
70
|
+
symbol: "UNI",
|
|
60
71
|
type: TokenType.NORMAL_TOKEN
|
|
61
72
|
},
|
|
62
73
|
USDC: {
|
|
74
|
+
symbol: "USDC",
|
|
63
75
|
type: TokenType.CONNECTOR
|
|
64
76
|
},
|
|
65
77
|
USDT: {
|
|
78
|
+
symbol: "USDT",
|
|
66
79
|
type: TokenType.NORMAL_TOKEN
|
|
67
80
|
},
|
|
68
81
|
WBTC: {
|
|
82
|
+
symbol: "WBTC",
|
|
69
83
|
type: TokenType.CONNECTOR
|
|
70
84
|
},
|
|
71
85
|
WETH: {
|
|
86
|
+
symbol: "WETH",
|
|
72
87
|
type: TokenType.CONNECTOR
|
|
73
88
|
},
|
|
74
89
|
YFI: {
|
|
90
|
+
symbol: "YFI",
|
|
75
91
|
type: TokenType.NORMAL_TOKEN
|
|
76
92
|
},
|
|
77
93
|
/// UPDATE
|
|
78
94
|
STETH: {
|
|
95
|
+
symbol: "STETH",
|
|
79
96
|
type: TokenType.NORMAL_TOKEN
|
|
80
97
|
},
|
|
81
98
|
FTM: {
|
|
99
|
+
symbol: "FTM",
|
|
82
100
|
type: TokenType.NORMAL_TOKEN
|
|
83
101
|
},
|
|
84
102
|
CVX: {
|
|
103
|
+
symbol: "CVX",
|
|
85
104
|
type: TokenType.NORMAL_TOKEN
|
|
86
105
|
},
|
|
87
106
|
FRAX: {
|
|
107
|
+
symbol: "FRAX",
|
|
88
108
|
type: TokenType.NORMAL_TOKEN
|
|
89
109
|
},
|
|
90
110
|
FXS: {
|
|
111
|
+
symbol: "FXS",
|
|
91
112
|
type: TokenType.NORMAL_TOKEN
|
|
92
113
|
},
|
|
93
114
|
LDO: {
|
|
115
|
+
symbol: "LDO",
|
|
94
116
|
type: TokenType.NORMAL_TOKEN
|
|
95
117
|
},
|
|
96
118
|
SPELL: {
|
|
119
|
+
symbol: "SPELL",
|
|
97
120
|
type: TokenType.NORMAL_TOKEN
|
|
98
121
|
},
|
|
99
122
|
LUSD: {
|
|
123
|
+
symbol: "LUSD",
|
|
100
124
|
type: TokenType.NORMAL_TOKEN
|
|
101
125
|
},
|
|
102
126
|
sUSD: {
|
|
127
|
+
symbol: "sUSD",
|
|
103
128
|
type: TokenType.NORMAL_TOKEN
|
|
104
129
|
},
|
|
105
130
|
GUSD: {
|
|
131
|
+
symbol: "GUSD",
|
|
106
132
|
type: TokenType.NORMAL_TOKEN
|
|
107
133
|
},
|
|
108
134
|
LUNA: {
|
|
135
|
+
symbol: "LUNA",
|
|
109
136
|
type: TokenType.NORMAL_TOKEN
|
|
110
137
|
},
|
|
111
138
|
LQTY: {
|
|
139
|
+
symbol: "LQTY",
|
|
112
140
|
type: TokenType.NORMAL_TOKEN
|
|
113
141
|
},
|
|
114
142
|
// YEARN TOKENS
|
|
115
143
|
yvDAI: {
|
|
144
|
+
symbol: "yvDAI",
|
|
116
145
|
type: TokenType.YEARN_VAULT,
|
|
117
|
-
underlying: "DAI"
|
|
146
|
+
underlying: "DAI"
|
|
118
147
|
},
|
|
119
148
|
yvUSDC: {
|
|
149
|
+
symbol: "yvUSDC",
|
|
120
150
|
type: TokenType.YEARN_VAULT,
|
|
121
151
|
underlying: "USDC"
|
|
122
152
|
},
|
|
123
153
|
yvWETH: {
|
|
154
|
+
symbol: "yvWETH",
|
|
124
155
|
type: TokenType.YEARN_VAULT,
|
|
125
|
-
underlying: "WETH"
|
|
156
|
+
underlying: "WETH"
|
|
126
157
|
},
|
|
127
158
|
yvWBTC: {
|
|
159
|
+
symbol: "yvWBTC",
|
|
128
160
|
type: TokenType.YEARN_VAULT,
|
|
129
161
|
underlying: "WBTC"
|
|
130
162
|
},
|
|
131
163
|
// CURVE LP TOKENS
|
|
132
164
|
"3Crv": {
|
|
133
|
-
|
|
165
|
+
symbol: "3Crv",
|
|
166
|
+
type: TokenType.CURVE_LP,
|
|
134
167
|
},
|
|
135
168
|
steCRV: {
|
|
169
|
+
symbol: "steCRV",
|
|
136
170
|
type: TokenType.CURVE_LP
|
|
137
171
|
},
|
|
138
172
|
crvPlain3andSUSD: {
|
|
173
|
+
symbol: "crvPlain3andSUSD",
|
|
139
174
|
type: TokenType.CURVE_LP
|
|
140
175
|
},
|
|
141
176
|
// META CURVE LP TOKENS
|
|
142
177
|
FRAX3CRV: {
|
|
178
|
+
symbol: "FRAX3CRV",
|
|
143
179
|
type: TokenType.META_CURVE_LP
|
|
144
180
|
},
|
|
145
181
|
LUSD3CRV: {
|
|
182
|
+
symbol: "LUSD3CRV",
|
|
146
183
|
type: TokenType.META_CURVE_LP
|
|
147
184
|
},
|
|
148
185
|
gusd3CRV: {
|
|
186
|
+
symbol: "gusd3CRV",
|
|
149
187
|
type: TokenType.META_CURVE_LP
|
|
150
188
|
},
|
|
151
189
|
// CONVEX LP TOKENS
|
|
152
190
|
cvx3Crv: {
|
|
153
|
-
|
|
191
|
+
symbol: "cvx3Crv",
|
|
192
|
+
type: TokenType.CONVEX_LP_TOKEN,
|
|
193
|
+
pool: "CONVEX_3CRV",
|
|
194
|
+
underlying: "3Crv",
|
|
195
|
+
stakedToken: "stkcvx3Crv",
|
|
154
196
|
},
|
|
155
197
|
cvxsteCRV: {
|
|
156
|
-
|
|
198
|
+
symbol: "cvxsteCRV",
|
|
199
|
+
type: TokenType.CONVEX_LP_TOKEN,
|
|
200
|
+
pool: "CONVEX_STECRV",
|
|
201
|
+
underlying: "steCRV",
|
|
202
|
+
stakedToken: "stkcvxsteCRV",
|
|
157
203
|
},
|
|
158
204
|
cvxFRAX3CRV: {
|
|
159
|
-
|
|
205
|
+
symbol: "cvxFRAX3CRV",
|
|
206
|
+
type: TokenType.CONVEX_LP_TOKEN,
|
|
207
|
+
pool: "CONVEX_FRAX3CRV",
|
|
208
|
+
underlying: "FRAX3CRV",
|
|
209
|
+
stakedToken: "stkcvxFRAX3CRV",
|
|
160
210
|
},
|
|
161
211
|
cvxcrvPlain3andSUSD: {
|
|
162
|
-
|
|
212
|
+
symbol: "cvxcrvPlain3andSUSD",
|
|
213
|
+
type: TokenType.CONVEX_LP_TOKEN,
|
|
214
|
+
pool: "CONVEX_SUSD",
|
|
215
|
+
underlying: "crvPlain3andSUSD",
|
|
216
|
+
stakedToken: "stkcvxcrvPlain3andSUSD",
|
|
163
217
|
},
|
|
164
218
|
cvxgusd3CRV: {
|
|
165
|
-
|
|
219
|
+
symbol: "cvxgusd3CRV",
|
|
220
|
+
type: TokenType.CONVEX_LP_TOKEN,
|
|
221
|
+
pool: "CONVEX_GUSD",
|
|
222
|
+
underlying: "gusd3CRV",
|
|
223
|
+
stakedToken: "stkcvxgusd3CRV"
|
|
166
224
|
},
|
|
167
225
|
// YEARN- CURVE TOKENS
|
|
168
226
|
yvCurve_stETH: {
|
|
169
|
-
|
|
227
|
+
symbol: "yvCurve_stETH",
|
|
228
|
+
type: TokenType.YEARN_VAULT_OF_CURVE_LP,
|
|
229
|
+
underlying: "steCRV"
|
|
170
230
|
},
|
|
171
231
|
yvCurve_FRAX: {
|
|
172
|
-
|
|
232
|
+
symbol: "yvCurve_FRAX",
|
|
233
|
+
type: TokenType.YEARN_VAULT_OF_META_CURVE_LP,
|
|
234
|
+
underlying: "FRAX3CRV"
|
|
235
|
+
},
|
|
236
|
+
// STAKED CONVEX
|
|
237
|
+
stkcvx3Crv: {
|
|
238
|
+
symbol: "stkcvx3Crv",
|
|
239
|
+
type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
|
|
240
|
+
pool: "CONVEX_3CRV",
|
|
241
|
+
underlying: "3Crv",
|
|
242
|
+
lpToken: "cvx3Crv",
|
|
243
|
+
},
|
|
244
|
+
stkcvxsteCRV: {
|
|
245
|
+
symbol: "stkcvxsteCRV",
|
|
246
|
+
type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
|
|
247
|
+
pool: "CONVEX_STECRV",
|
|
248
|
+
underlying: "steCRV",
|
|
249
|
+
lpToken: "cvxsteCRV",
|
|
250
|
+
},
|
|
251
|
+
stkcvxFRAX3CRV: {
|
|
252
|
+
symbol: "stkcvxFRAX3CRV",
|
|
253
|
+
type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
|
|
254
|
+
pool: "CONVEX_FRAX3CRV",
|
|
255
|
+
underlying: "FRAX3CRV",
|
|
256
|
+
lpToken: "cvxFRAX3CRV",
|
|
257
|
+
},
|
|
258
|
+
stkcvxcrvPlain3andSUSD: {
|
|
259
|
+
symbol: "stkcvxcrvPlain3andSUSD",
|
|
260
|
+
type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
|
|
261
|
+
pool: "CONVEX_SUSD",
|
|
262
|
+
underlying: "crvPlain3andSUSD",
|
|
263
|
+
lpToken: "cvxcrvPlain3andSUSD",
|
|
264
|
+
},
|
|
265
|
+
stkcvxgusd3CRV: {
|
|
266
|
+
symbol: "stkcvxgusd3CRV",
|
|
267
|
+
type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
|
|
268
|
+
pool: "CONVEX_GUSD",
|
|
269
|
+
underlying: "gusd3CRV",
|
|
270
|
+
lpToken: "cvxgusd3CRV"
|
|
173
271
|
}
|
|
174
272
|
};
|
|
175
273
|
exports.tokenDataByNetwork = {
|
|
@@ -224,7 +322,11 @@ exports.tokenDataByNetwork = {
|
|
|
224
322
|
cvxcrvPlain3andSUSD: "0x11D200ef1409cecA8D6d23e6496550f707772F11",
|
|
225
323
|
cvxgusd3CRV: "0x15c2471ef46Fa721990730cfa526BcFb45574576",
|
|
226
324
|
// CONVEX PHANTOM TOKEN ADDRESSES
|
|
227
|
-
|
|
325
|
+
stkcvx3Crv: "",
|
|
326
|
+
stkcvxsteCRV: "",
|
|
327
|
+
stkcvxFRAX3CRV: "",
|
|
328
|
+
stkcvxcrvPlain3andSUSD: "",
|
|
329
|
+
stkcvxgusd3CRV: "",
|
|
228
330
|
// YEARN- CURVE TOKENS
|
|
229
331
|
yvCurve_stETH: "0xdCD90C7f6324cfa40d7169ef80b12031770B4325",
|
|
230
332
|
yvCurve_FRAX: "0xB4AdA607B9d6b2c9Ee07A275e9616B84AC560139"
|
|
@@ -281,6 +383,12 @@ exports.tokenDataByNetwork = {
|
|
|
281
383
|
cvxFRAX3CRV: "",
|
|
282
384
|
cvxcrvPlain3andSUSD: "",
|
|
283
385
|
cvxgusd3CRV: "",
|
|
386
|
+
// CONVEX PHANTOM TOKEN ADDRESSES
|
|
387
|
+
stkcvx3Crv: "",
|
|
388
|
+
stkcvxsteCRV: "",
|
|
389
|
+
stkcvxFRAX3CRV: "",
|
|
390
|
+
stkcvxcrvPlain3andSUSD: "",
|
|
391
|
+
stkcvxgusd3CRV: "",
|
|
284
392
|
// YEARN- CURVE TOKENS
|
|
285
393
|
yvCurve_stETH: "0xdDc2FA328321573Bc2647C0135D75012c522CDAC",
|
|
286
394
|
yvCurve_FRAX: ""
|
package/lib/core/tokenData.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BigNumber } from "ethers";
|
|
2
2
|
import { TokenDataPayload } from "../payload/token";
|
|
3
3
|
import { NetworkType } from "./constants";
|
|
4
|
-
import {
|
|
4
|
+
import { SupportedToken } from "./token";
|
|
5
5
|
export declare class TokenData {
|
|
6
6
|
readonly id: string;
|
|
7
7
|
readonly symbol: string;
|
|
@@ -24,5 +24,5 @@ export interface TokenSavedData {
|
|
|
24
24
|
type: TokenType;
|
|
25
25
|
}
|
|
26
26
|
export declare const WETHToken: Record<NetworkType, string>;
|
|
27
|
-
export declare const connectors: Record<NetworkType, Array<
|
|
27
|
+
export declare const connectors: Record<NetworkType, Array<SupportedToken>>;
|
|
28
28
|
export declare function getConnectors(networkType: NetworkType): string[];
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LoggedDeployer = void 0;
|
|
4
|
+
var tslog_1 = require("tslog");
|
|
5
|
+
var LoggedDeployer = /** @class */ (function () {
|
|
6
|
+
function LoggedDeployer() {
|
|
7
|
+
this._logger = new tslog_1.Logger({
|
|
8
|
+
minLevel: "error",
|
|
9
|
+
displayFunctionName: false,
|
|
10
|
+
displayLoggerName: false,
|
|
11
|
+
displayFilePath: "hidden",
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
LoggedDeployer.prototype.enableLogs = function () {
|
|
15
|
+
this._logger.setSettings({ minLevel: "debug" });
|
|
16
|
+
};
|
|
17
|
+
LoggedDeployer.prototype.disableLogs = function () {
|
|
18
|
+
this._logger.setSettings({ minLevel: "error" });
|
|
19
|
+
};
|
|
20
|
+
return LoggedDeployer;
|
|
21
|
+
}());
|
|
22
|
+
exports.LoggedDeployer = LoggedDeployer;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { LoggedDeployer } from "./loggedDeployer";
|
|
2
|
+
export interface VerifyRequest {
|
|
3
|
+
address: string;
|
|
4
|
+
constructorArguments: Array<any>;
|
|
5
|
+
}
|
|
6
|
+
export declare class Verifier extends LoggedDeployer {
|
|
7
|
+
protected verifier: Array<VerifyRequest>;
|
|
8
|
+
protected apiKey: string;
|
|
9
|
+
constructor();
|
|
10
|
+
addContract(c: VerifyRequest): void;
|
|
11
|
+
deploy(): Promise<void>;
|
|
12
|
+
protected _saveVerifier(): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
32
|
+
});
|
|
33
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
41
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
42
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
43
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
44
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
45
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
46
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
47
|
+
});
|
|
48
|
+
};
|
|
49
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
50
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
51
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
52
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
53
|
+
function step(op) {
|
|
54
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
55
|
+
while (_) try {
|
|
56
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
57
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
58
|
+
switch (op[0]) {
|
|
59
|
+
case 0: case 1: t = op; break;
|
|
60
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
61
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
62
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
63
|
+
default:
|
|
64
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
65
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
66
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
67
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
68
|
+
if (t[2]) _.ops.pop();
|
|
69
|
+
_.trys.pop(); continue;
|
|
70
|
+
}
|
|
71
|
+
op = body.call(thisArg, _);
|
|
72
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
73
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
77
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
78
|
+
};
|
|
79
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
80
|
+
exports.Verifier = void 0;
|
|
81
|
+
/*
|
|
82
|
+
* Copyright (c) 2021. Gearbox
|
|
83
|
+
*/
|
|
84
|
+
var loggedDeployer_1 = require("./loggedDeployer");
|
|
85
|
+
var fs = __importStar(require("fs"));
|
|
86
|
+
var dotenv_1 = require("dotenv");
|
|
87
|
+
var axios_1 = __importDefault(require("axios"));
|
|
88
|
+
var hre = require("hardhat");
|
|
89
|
+
var VERIFIER_FILE = "./.verifier.json";
|
|
90
|
+
(0, dotenv_1.config)({ path: ".env" });
|
|
91
|
+
var Verifier = /** @class */ (function (_super) {
|
|
92
|
+
__extends(Verifier, _super);
|
|
93
|
+
function Verifier() {
|
|
94
|
+
var _this = _super.call(this) || this;
|
|
95
|
+
_this.verifier = [];
|
|
96
|
+
// this.verifier = verifierJson;
|
|
97
|
+
// JSON.parse("")
|
|
98
|
+
_this.apiKey = process.env.ETHERSCAN_API_KEY || "";
|
|
99
|
+
if (_this.apiKey === "")
|
|
100
|
+
throw new Error("No etherscan API provided");
|
|
101
|
+
return _this;
|
|
102
|
+
}
|
|
103
|
+
Verifier.prototype.addContract = function (c) {
|
|
104
|
+
// Add logic to check if address is already exists
|
|
105
|
+
this.verifier.push(c);
|
|
106
|
+
this._saveVerifier();
|
|
107
|
+
};
|
|
108
|
+
Verifier.prototype.deploy = function () {
|
|
109
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
110
|
+
var i, params, url, isVerified;
|
|
111
|
+
return __generator(this, function (_a) {
|
|
112
|
+
switch (_a.label) {
|
|
113
|
+
case 0:
|
|
114
|
+
this.enableLogs();
|
|
115
|
+
i = 0;
|
|
116
|
+
_a.label = 1;
|
|
117
|
+
case 1:
|
|
118
|
+
if (!(i < this.verifier.length)) return [3 /*break*/, 7];
|
|
119
|
+
params = this.verifier.shift();
|
|
120
|
+
url = "https://api-kovan.etherscan.io/api?module=contract&action=getabi&address=".concat(params === null || params === void 0 ? void 0 : params.address, "&apikey=").concat(this.apiKey);
|
|
121
|
+
return [4 /*yield*/, axios_1.default.get(url)];
|
|
122
|
+
case 2:
|
|
123
|
+
isVerified = _a.sent();
|
|
124
|
+
console.log(isVerified.data);
|
|
125
|
+
if (!(isVerified.data.status === '1')) return [3 /*break*/, 3];
|
|
126
|
+
this._logger.debug("".concat(params === null || params === void 0 ? void 0 : params.address, " is already verified"));
|
|
127
|
+
return [3 /*break*/, 5];
|
|
128
|
+
case 3:
|
|
129
|
+
this._logger.info("Verifing: ".concat(params === null || params === void 0 ? void 0 : params.address));
|
|
130
|
+
return [4 /*yield*/, hre.run("verify:verify", params)];
|
|
131
|
+
case 4:
|
|
132
|
+
_a.sent();
|
|
133
|
+
_a.label = 5;
|
|
134
|
+
case 5:
|
|
135
|
+
this._saveVerifier();
|
|
136
|
+
_a.label = 6;
|
|
137
|
+
case 6:
|
|
138
|
+
i++;
|
|
139
|
+
return [3 /*break*/, 1];
|
|
140
|
+
case 7: return [2 /*return*/];
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
});
|
|
144
|
+
};
|
|
145
|
+
Verifier.prototype._saveVerifier = function () {
|
|
146
|
+
fs.writeFileSync(VERIFIER_FILE, JSON.stringify(this.verifier));
|
|
147
|
+
this._logger.debug("Deploy progress was saved into .verifier.json");
|
|
148
|
+
};
|
|
149
|
+
return Verifier;
|
|
150
|
+
}(loggedDeployer_1.LoggedDeployer));
|
|
151
|
+
exports.Verifier = Verifier;
|
|
152
|
+
// const verifier = new Verifier();
|
|
153
|
+
// verifier
|
|
154
|
+
// .deploy()
|
|
155
|
+
// .then(() => {
|
|
156
|
+
// process.exit(0);
|
|
157
|
+
// })
|
|
158
|
+
// .catch((error) => {
|
|
159
|
+
// console.error(error);
|
|
160
|
+
// process.exit(1);
|
|
161
|
+
// });
|
package/lib/index.d.ts
CHANGED
|
@@ -28,9 +28,10 @@ export * from "./utils/math";
|
|
|
28
28
|
export * from "./core/creditCard";
|
|
29
29
|
export * from "./payload/graphPayload";
|
|
30
30
|
export * from "./types/index";
|
|
31
|
+
export * from "./devops/verifierDeployer";
|
|
31
32
|
export type { IAppPoolService, IAppCreditManager, IAppERC20, IAppAddressProvider, IDataCompressor, IWETHGateway } from "./types";
|
|
32
33
|
export * from "./core/history";
|
|
33
34
|
export { MultiCallContract } from "./utils/multicall";
|
|
34
35
|
export { callRepeater } from "./utils/repeater";
|
|
35
36
|
export { getContractName } from "./core/contractsRegister";
|
|
36
|
-
export { AdapterInterface } from "./core/
|
|
37
|
+
export { AdapterInterface } from "./core/adapters";
|
package/lib/index.js
CHANGED
|
@@ -45,6 +45,7 @@ __exportStar(require("./utils/math"), exports);
|
|
|
45
45
|
__exportStar(require("./core/creditCard"), exports);
|
|
46
46
|
__exportStar(require("./payload/graphPayload"), exports);
|
|
47
47
|
__exportStar(require("./types/index"), exports);
|
|
48
|
+
__exportStar(require("./devops/verifierDeployer"), exports);
|
|
48
49
|
__exportStar(require("./core/history"), exports);
|
|
49
50
|
var multicall_1 = require("./utils/multicall");
|
|
50
51
|
Object.defineProperty(exports, "MultiCallContract", { enumerable: true, get: function () { return multicall_1.MultiCallContract; } });
|
|
@@ -52,5 +53,5 @@ var repeater_1 = require("./utils/repeater");
|
|
|
52
53
|
Object.defineProperty(exports, "callRepeater", { enumerable: true, get: function () { return repeater_1.callRepeater; } });
|
|
53
54
|
var contractsRegister_1 = require("./core/contractsRegister");
|
|
54
55
|
Object.defineProperty(exports, "getContractName", { enumerable: true, get: function () { return contractsRegister_1.getContractName; } });
|
|
55
|
-
var
|
|
56
|
-
Object.defineProperty(exports, "AdapterInterface", { enumerable: true, get: function () { return
|
|
56
|
+
var adapters_1 = require("./core/adapters");
|
|
57
|
+
Object.defineProperty(exports, "AdapterInterface", { enumerable: true, get: function () { return adapters_1.AdapterInterface; } });
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gearbox-protocol/sdk",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.42",
|
|
4
4
|
"description": "Gearbox SDK",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -16,12 +16,16 @@
|
|
|
16
16
|
"moment": "^2.29.1"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
|
+
"@types/axios": "^0.14.0",
|
|
19
20
|
"@types/jest": "^26.0.4",
|
|
20
21
|
"@types/node": "^14.0.23",
|
|
21
|
-
"
|
|
22
|
+
"axios": "^0.27.2",
|
|
23
|
+
"dotenv": "^16.0.1",
|
|
24
|
+
"ethers": "^5.6.5",
|
|
22
25
|
"jest": "^26.1.0",
|
|
23
26
|
"prettier": "^2.3.0",
|
|
24
27
|
"ts-node": "^10.1.0",
|
|
28
|
+
"tslog": "^3.3.3",
|
|
25
29
|
"typescript": "^4.2.4"
|
|
26
30
|
}
|
|
27
31
|
}
|