@ichidao/ichi-vaults-sdk 0.1.39 → 0.1.41

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 (66) hide show
  1. package/README.md +205 -0
  2. package/dist/abis/types/DepositGuardWithHtsWrapping.d.ts +339 -0
  3. package/dist/abis/types/DepositGuardWithHtsWrapping.js +3 -0
  4. package/dist/abis/types/DepositGuardWithHtsWrapping.js.map +1 -0
  5. package/dist/abis/types/ERC20Wrapper.d.ts +171 -0
  6. package/dist/abis/types/ERC20Wrapper.js +3 -0
  7. package/dist/abis/types/ERC20Wrapper.js.map +1 -0
  8. package/dist/abis/types/factories/DepositGuardWithHtsWrapping__factory.d.ts +410 -0
  9. package/dist/abis/types/factories/DepositGuardWithHtsWrapping__factory.js +540 -0
  10. package/dist/abis/types/factories/DepositGuardWithHtsWrapping__factory.js.map +1 -0
  11. package/dist/abis/types/factories/ERC20Wrapper__factory.d.ts +168 -0
  12. package/dist/abis/types/factories/ERC20Wrapper__factory.js +235 -0
  13. package/dist/abis/types/factories/ERC20Wrapper__factory.js.map +1 -0
  14. package/dist/abis/types/factories/index.d.ts +2 -0
  15. package/dist/abis/types/factories/index.js +5 -1
  16. package/dist/abis/types/factories/index.js.map +1 -1
  17. package/dist/abis/types/index.d.ts +4 -0
  18. package/dist/abis/types/index.js +5 -1
  19. package/dist/abis/types/index.js.map +1 -1
  20. package/dist/src/__tests__/index.test.js +112 -15
  21. package/dist/src/__tests__/index.test.js.map +1 -1
  22. package/dist/src/abis/types/DepositGuardWithHtsWrapping.d.ts +339 -0
  23. package/dist/src/abis/types/ERC20Wrapper.d.ts +171 -0
  24. package/dist/src/abis/types/factories/DepositGuardWithHtsWrapping__factory.d.ts +410 -0
  25. package/dist/src/abis/types/factories/ERC20Wrapper__factory.d.ts +168 -0
  26. package/dist/src/abis/types/factories/index.d.ts +2 -0
  27. package/dist/src/abis/types/index.d.ts +4 -0
  28. package/dist/src/contracts/index.d.ts +3 -1
  29. package/dist/src/contracts/index.js +11 -1
  30. package/dist/src/contracts/index.js.map +1 -1
  31. package/dist/src/functions/_withdrawHelpers.d.ts +4 -0
  32. package/dist/src/functions/_withdrawHelpers.js +72 -0
  33. package/dist/src/functions/_withdrawHelpers.js.map +1 -0
  34. package/dist/src/functions/depositWithHtsWrapping.d.ts +8 -0
  35. package/dist/src/functions/depositWithHtsWrapping.js +243 -0
  36. package/dist/src/functions/depositWithHtsWrapping.js.map +1 -0
  37. package/dist/src/functions/withdraw.js +4 -26
  38. package/dist/src/functions/withdraw.js.map +1 -1
  39. package/dist/src/functions/withdrawWithErc20Wrapping.d.ts +5 -0
  40. package/dist/src/functions/withdrawWithErc20Wrapping.js +137 -0
  41. package/dist/src/functions/withdrawWithErc20Wrapping.js.map +1 -0
  42. package/dist/src/graphql/constants.js +6 -0
  43. package/dist/src/graphql/constants.js.map +1 -1
  44. package/dist/src/index.cjs.js +3 -1
  45. package/dist/src/index.d.ts +2 -0
  46. package/dist/src/index.esm.js +3 -1
  47. package/dist/src/index.js +2 -0
  48. package/dist/src/index.js.map +1 -1
  49. package/dist/src/src/contracts/index.d.ts +3 -1
  50. package/dist/src/src/functions/_withdrawHelpers.d.ts +4 -0
  51. package/dist/src/src/functions/depositWithHtsWrapping.d.ts +8 -0
  52. package/dist/src/src/functions/withdrawWithErc20Wrapping.d.ts +5 -0
  53. package/dist/src/src/index.d.ts +2 -0
  54. package/dist/src/src/types/index.d.ts +1 -0
  55. package/dist/src/src/utils/config/addresses.d.ts +1 -0
  56. package/dist/src/src/utils/multicallUtils.d.ts +1 -1
  57. package/dist/src/types/index.d.ts +1 -0
  58. package/dist/src/types/index.js +1 -0
  59. package/dist/src/types/index.js.map +1 -1
  60. package/dist/src/utils/config/addresses.d.ts +1 -0
  61. package/dist/src/utils/config/addresses.js +13 -2
  62. package/dist/src/utils/config/addresses.js.map +1 -1
  63. package/dist/src/utils/multicallUtils.d.ts +1 -1
  64. package/dist/src/utils/multicallUtils.js +26 -2
  65. package/dist/src/utils/multicallUtils.js.map +1 -1
  66. package/package.json +1 -1
@@ -0,0 +1,168 @@
1
+ import { Signer } from "ethers";
2
+ import type { Provider } from "@ethersproject/providers";
3
+ import type { ERC20Wrapper, ERC20WrapperInterface } from "../ERC20Wrapper";
4
+ export declare class ERC20Wrapper__factory {
5
+ static readonly abi: readonly [{
6
+ readonly type: "error";
7
+ readonly name: "SafeERC20FailedOperation";
8
+ readonly inputs: readonly [{
9
+ readonly type: "address";
10
+ readonly name: "token";
11
+ }];
12
+ }, {
13
+ readonly type: "event";
14
+ readonly anonymous: false;
15
+ readonly name: "Create";
16
+ readonly inputs: readonly [{
17
+ readonly type: "address";
18
+ readonly name: "erc20Token";
19
+ readonly indexed: true;
20
+ }, {
21
+ readonly type: "address";
22
+ readonly name: "htsToken";
23
+ readonly indexed: true;
24
+ }, {
25
+ readonly type: "uint256";
26
+ readonly name: "htsDecimals";
27
+ readonly indexed: false;
28
+ }];
29
+ }, {
30
+ readonly type: "event";
31
+ readonly anonymous: false;
32
+ readonly name: "Unwrap";
33
+ readonly inputs: readonly [{
34
+ readonly type: "address";
35
+ readonly name: "token";
36
+ readonly indexed: true;
37
+ }, {
38
+ readonly type: "address";
39
+ readonly name: "from";
40
+ readonly indexed: true;
41
+ }, {
42
+ readonly type: "address";
43
+ readonly name: "to";
44
+ readonly indexed: true;
45
+ }, {
46
+ readonly type: "uint256";
47
+ readonly name: "amount";
48
+ readonly indexed: false;
49
+ }];
50
+ }, {
51
+ readonly type: "event";
52
+ readonly anonymous: false;
53
+ readonly name: "Wrap";
54
+ readonly inputs: readonly [{
55
+ readonly type: "address";
56
+ readonly name: "token";
57
+ readonly indexed: true;
58
+ }, {
59
+ readonly type: "address";
60
+ readonly name: "from";
61
+ readonly indexed: true;
62
+ }, {
63
+ readonly type: "address";
64
+ readonly name: "to";
65
+ readonly indexed: true;
66
+ }, {
67
+ readonly type: "uint256";
68
+ readonly name: "amount";
69
+ readonly indexed: false;
70
+ }];
71
+ }, {
72
+ readonly type: "function";
73
+ readonly name: "create";
74
+ readonly constant: false;
75
+ readonly stateMutability: "payable";
76
+ readonly payable: true;
77
+ readonly inputs: readonly [{
78
+ readonly type: "address";
79
+ readonly name: "erc20Token";
80
+ }];
81
+ readonly outputs: readonly [{
82
+ readonly type: "address";
83
+ readonly name: "htsToken";
84
+ }, {
85
+ readonly type: "uint256";
86
+ readonly name: "htsDecimals";
87
+ }];
88
+ }, {
89
+ readonly type: "function";
90
+ readonly name: "erc20Counterpart";
91
+ readonly constant: true;
92
+ readonly stateMutability: "view";
93
+ readonly payable: false;
94
+ readonly inputs: readonly [{
95
+ readonly type: "address";
96
+ readonly name: "";
97
+ }];
98
+ readonly outputs: readonly [{
99
+ readonly type: "address";
100
+ readonly name: "";
101
+ }];
102
+ }, {
103
+ readonly type: "function";
104
+ readonly name: "htsCounterpart";
105
+ readonly constant: true;
106
+ readonly stateMutability: "view";
107
+ readonly payable: false;
108
+ readonly inputs: readonly [{
109
+ readonly type: "address";
110
+ readonly name: "";
111
+ }];
112
+ readonly outputs: readonly [{
113
+ readonly type: "address";
114
+ readonly name: "";
115
+ }];
116
+ }, {
117
+ readonly type: "function";
118
+ readonly name: "rates";
119
+ readonly constant: true;
120
+ readonly stateMutability: "view";
121
+ readonly payable: false;
122
+ readonly inputs: readonly [{
123
+ readonly type: "address";
124
+ readonly name: "";
125
+ }];
126
+ readonly outputs: readonly [{
127
+ readonly type: "uint256";
128
+ readonly name: "";
129
+ }];
130
+ }, {
131
+ readonly type: "function";
132
+ readonly name: "unwrap";
133
+ readonly constant: false;
134
+ readonly payable: false;
135
+ readonly inputs: readonly [{
136
+ readonly type: "address";
137
+ readonly name: "erc20Token";
138
+ }, {
139
+ readonly type: "address";
140
+ readonly name: "to";
141
+ }, {
142
+ readonly type: "uint256";
143
+ readonly name: "erc20Amount";
144
+ }];
145
+ readonly outputs: readonly [];
146
+ }, {
147
+ readonly type: "function";
148
+ readonly name: "wrap";
149
+ readonly constant: false;
150
+ readonly payable: false;
151
+ readonly inputs: readonly [{
152
+ readonly type: "address";
153
+ readonly name: "erc20Token";
154
+ }, {
155
+ readonly type: "address";
156
+ readonly name: "to";
157
+ }, {
158
+ readonly type: "uint256";
159
+ readonly name: "erc20Amount";
160
+ }];
161
+ readonly outputs: readonly [];
162
+ }, {
163
+ readonly type: "receive";
164
+ readonly stateMutability: "payable";
165
+ }];
166
+ static createInterface(): ERC20WrapperInterface;
167
+ static connect(address: string, signerOrProvider: Signer | Provider): ERC20Wrapper;
168
+ }
@@ -0,0 +1,235 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ /* tslint:disable */
4
+ /* eslint-disable */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ERC20Wrapper__factory = void 0;
7
+ var ethers_1 = require("ethers");
8
+ var _abi = [
9
+ {
10
+ type: "error",
11
+ name: "SafeERC20FailedOperation",
12
+ inputs: [
13
+ {
14
+ type: "address",
15
+ name: "token",
16
+ },
17
+ ],
18
+ },
19
+ {
20
+ type: "event",
21
+ anonymous: false,
22
+ name: "Create",
23
+ inputs: [
24
+ {
25
+ type: "address",
26
+ name: "erc20Token",
27
+ indexed: true,
28
+ },
29
+ {
30
+ type: "address",
31
+ name: "htsToken",
32
+ indexed: true,
33
+ },
34
+ {
35
+ type: "uint256",
36
+ name: "htsDecimals",
37
+ indexed: false,
38
+ },
39
+ ],
40
+ },
41
+ {
42
+ type: "event",
43
+ anonymous: false,
44
+ name: "Unwrap",
45
+ inputs: [
46
+ {
47
+ type: "address",
48
+ name: "token",
49
+ indexed: true,
50
+ },
51
+ {
52
+ type: "address",
53
+ name: "from",
54
+ indexed: true,
55
+ },
56
+ {
57
+ type: "address",
58
+ name: "to",
59
+ indexed: true,
60
+ },
61
+ {
62
+ type: "uint256",
63
+ name: "amount",
64
+ indexed: false,
65
+ },
66
+ ],
67
+ },
68
+ {
69
+ type: "event",
70
+ anonymous: false,
71
+ name: "Wrap",
72
+ inputs: [
73
+ {
74
+ type: "address",
75
+ name: "token",
76
+ indexed: true,
77
+ },
78
+ {
79
+ type: "address",
80
+ name: "from",
81
+ indexed: true,
82
+ },
83
+ {
84
+ type: "address",
85
+ name: "to",
86
+ indexed: true,
87
+ },
88
+ {
89
+ type: "uint256",
90
+ name: "amount",
91
+ indexed: false,
92
+ },
93
+ ],
94
+ },
95
+ {
96
+ type: "function",
97
+ name: "create",
98
+ constant: false,
99
+ stateMutability: "payable",
100
+ payable: true,
101
+ inputs: [
102
+ {
103
+ type: "address",
104
+ name: "erc20Token",
105
+ },
106
+ ],
107
+ outputs: [
108
+ {
109
+ type: "address",
110
+ name: "htsToken",
111
+ },
112
+ {
113
+ type: "uint256",
114
+ name: "htsDecimals",
115
+ },
116
+ ],
117
+ },
118
+ {
119
+ type: "function",
120
+ name: "erc20Counterpart",
121
+ constant: true,
122
+ stateMutability: "view",
123
+ payable: false,
124
+ inputs: [
125
+ {
126
+ type: "address",
127
+ name: "",
128
+ },
129
+ ],
130
+ outputs: [
131
+ {
132
+ type: "address",
133
+ name: "",
134
+ },
135
+ ],
136
+ },
137
+ {
138
+ type: "function",
139
+ name: "htsCounterpart",
140
+ constant: true,
141
+ stateMutability: "view",
142
+ payable: false,
143
+ inputs: [
144
+ {
145
+ type: "address",
146
+ name: "",
147
+ },
148
+ ],
149
+ outputs: [
150
+ {
151
+ type: "address",
152
+ name: "",
153
+ },
154
+ ],
155
+ },
156
+ {
157
+ type: "function",
158
+ name: "rates",
159
+ constant: true,
160
+ stateMutability: "view",
161
+ payable: false,
162
+ inputs: [
163
+ {
164
+ type: "address",
165
+ name: "",
166
+ },
167
+ ],
168
+ outputs: [
169
+ {
170
+ type: "uint256",
171
+ name: "",
172
+ },
173
+ ],
174
+ },
175
+ {
176
+ type: "function",
177
+ name: "unwrap",
178
+ constant: false,
179
+ payable: false,
180
+ inputs: [
181
+ {
182
+ type: "address",
183
+ name: "erc20Token",
184
+ },
185
+ {
186
+ type: "address",
187
+ name: "to",
188
+ },
189
+ {
190
+ type: "uint256",
191
+ name: "erc20Amount",
192
+ },
193
+ ],
194
+ outputs: [],
195
+ },
196
+ {
197
+ type: "function",
198
+ name: "wrap",
199
+ constant: false,
200
+ payable: false,
201
+ inputs: [
202
+ {
203
+ type: "address",
204
+ name: "erc20Token",
205
+ },
206
+ {
207
+ type: "address",
208
+ name: "to",
209
+ },
210
+ {
211
+ type: "uint256",
212
+ name: "erc20Amount",
213
+ },
214
+ ],
215
+ outputs: [],
216
+ },
217
+ {
218
+ type: "receive",
219
+ stateMutability: "payable",
220
+ },
221
+ ];
222
+ var ERC20Wrapper__factory = /** @class */ (function () {
223
+ function ERC20Wrapper__factory() {
224
+ }
225
+ ERC20Wrapper__factory.createInterface = function () {
226
+ return new ethers_1.utils.Interface(_abi);
227
+ };
228
+ ERC20Wrapper__factory.connect = function (address, signerOrProvider) {
229
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
230
+ };
231
+ ERC20Wrapper__factory.abi = _abi;
232
+ return ERC20Wrapper__factory;
233
+ }());
234
+ exports.ERC20Wrapper__factory = ERC20Wrapper__factory;
235
+ //# sourceMappingURL=ERC20Wrapper__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ERC20Wrapper__factory.js","sourceRoot":"","sources":["../../../../abis/types/factories/ERC20Wrapper__factory.ts"],"names":[],"mappings":";AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;;;AAEpB,iCAAiD;AAIjD,IAAM,IAAI,GAAG;IACX;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,0BAA0B;QAChC,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;aACd;SACF;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,KAAK;aACf;SACF;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,KAAK;aACf;SACF;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,KAAK;aACf;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;QACf,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE,IAAI;QACb,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,YAAY;aACnB;SACF;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,UAAU;aACjB;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,aAAa;aACpB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,MAAM;QACvB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,EAAE;aACT;SACF;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,EAAE;aACT;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,MAAM;QACvB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,EAAE;aACT;SACF;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,EAAE;aACT;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,MAAM;QACvB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,EAAE;aACT;SACF;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,EAAE;aACT;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,KAAK;QACd,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,YAAY;aACnB;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,IAAI;aACX;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,aAAa;aACpB;SACF;QACD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,KAAK;QACd,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,YAAY;aACnB;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,IAAI;aACX;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,aAAa;aACpB;SACF;QACD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,SAAS;KAC3B;CACO,CAAC;AAEX;IAAA;IAWA,CAAC;IATQ,qCAAe,GAAtB;QACE,OAAO,IAAI,cAAK,CAAC,SAAS,CAAC,IAAI,CAA0B,CAAC;IAC5D,CAAC;IACM,6BAAO,GAAd,UACE,OAAe,EACf,gBAAmC;QAEnC,OAAO,IAAI,iBAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAiB,CAAC;IACvE,CAAC;IATe,yBAAG,GAAG,IAAI,CAAC;IAU7B,4BAAC;CAAA,AAXD,IAWC;AAXY,sDAAqB"}
@@ -1,5 +1,7 @@
1
1
  export { DepositGuard__factory } from "./DepositGuard__factory";
2
+ export { DepositGuardWithHtsWrapping__factory } from "./DepositGuardWithHtsWrapping__factory";
2
3
  export { ERC20__factory } from "./ERC20__factory";
4
+ export { ERC20Wrapper__factory } from "./ERC20Wrapper__factory";
3
5
  export { IchiVault__factory } from "./IchiVault__factory";
4
6
  export { AlgebraIntegralPool__factory } from "./AlgebraIntegralPool__factory";
5
7
  export { AlgebraPool__factory } from "./AlgebraPool__factory";
@@ -1,13 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UniswapV3Pool__factory = exports.Multicall__factory = exports.MultiFeeDistributer__factory = exports.ClPool__factory = exports.AlgebraPool__factory = exports.AlgebraIntegralPool__factory = exports.IchiVault__factory = exports.ERC20__factory = exports.DepositGuard__factory = void 0;
3
+ exports.UniswapV3Pool__factory = exports.Multicall__factory = exports.MultiFeeDistributer__factory = exports.ClPool__factory = exports.AlgebraPool__factory = exports.AlgebraIntegralPool__factory = exports.IchiVault__factory = exports.ERC20Wrapper__factory = exports.ERC20__factory = exports.DepositGuardWithHtsWrapping__factory = exports.DepositGuard__factory = void 0;
4
4
  /* Autogenerated file. Do not edit manually. */
5
5
  /* tslint:disable */
6
6
  /* eslint-disable */
7
7
  var DepositGuard__factory_1 = require("./DepositGuard__factory");
8
8
  Object.defineProperty(exports, "DepositGuard__factory", { enumerable: true, get: function () { return DepositGuard__factory_1.DepositGuard__factory; } });
9
+ var DepositGuardWithHtsWrapping__factory_1 = require("./DepositGuardWithHtsWrapping__factory");
10
+ Object.defineProperty(exports, "DepositGuardWithHtsWrapping__factory", { enumerable: true, get: function () { return DepositGuardWithHtsWrapping__factory_1.DepositGuardWithHtsWrapping__factory; } });
9
11
  var ERC20__factory_1 = require("./ERC20__factory");
10
12
  Object.defineProperty(exports, "ERC20__factory", { enumerable: true, get: function () { return ERC20__factory_1.ERC20__factory; } });
13
+ var ERC20Wrapper__factory_1 = require("./ERC20Wrapper__factory");
14
+ Object.defineProperty(exports, "ERC20Wrapper__factory", { enumerable: true, get: function () { return ERC20Wrapper__factory_1.ERC20Wrapper__factory; } });
11
15
  var IchiVault__factory_1 = require("./IchiVault__factory");
12
16
  Object.defineProperty(exports, "IchiVault__factory", { enumerable: true, get: function () { return IchiVault__factory_1.IchiVault__factory; } });
13
17
  var AlgebraIntegralPool__factory_1 = require("./AlgebraIntegralPool__factory");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../abis/types/factories/index.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA;AAC9B,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,2DAA0D;AAAjD,wHAAA,kBAAkB,OAAA;AAC3B,+EAA8E;AAArE,4IAAA,4BAA4B,OAAA;AACrC,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,+EAA8E;AAArE,4IAAA,4BAA4B,OAAA;AACrC,2DAA0D;AAAjD,wHAAA,kBAAkB,OAAA;AAC3B,mEAAkE;AAAzD,gIAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../abis/types/factories/index.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA;AAC9B,+FAA8F;AAArF,4JAAA,oCAAoC,OAAA;AAC7C,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA;AAC9B,2DAA0D;AAAjD,wHAAA,kBAAkB,OAAA;AAC3B,+EAA8E;AAArE,4IAAA,4BAA4B,OAAA;AACrC,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,+EAA8E;AAArE,4IAAA,4BAA4B,OAAA;AACrC,2DAA0D;AAAjD,wHAAA,kBAAkB,OAAA;AAC3B,mEAAkE;AAAzD,gIAAA,sBAAsB,OAAA"}
@@ -1,5 +1,7 @@
1
1
  export type { DepositGuard } from "./DepositGuard";
2
+ export type { DepositGuardWithHtsWrapping } from "./DepositGuardWithHtsWrapping";
2
3
  export type { ERC20 } from "./ERC20";
4
+ export type { ERC20Wrapper } from "./ERC20Wrapper";
3
5
  export type { IchiVault } from "./IchiVault";
4
6
  export type { AlgebraIntegralPool } from "./AlgebraIntegralPool";
5
7
  export type { AlgebraPool } from "./AlgebraPool";
@@ -12,7 +14,9 @@ export { AlgebraIntegralPool__factory } from "./factories/AlgebraIntegralPool__f
12
14
  export { AlgebraPool__factory } from "./factories/AlgebraPool__factory";
13
15
  export { ClPool__factory } from "./factories/ClPool__factory";
14
16
  export { DepositGuard__factory } from "./factories/DepositGuard__factory";
17
+ export { DepositGuardWithHtsWrapping__factory } from "./factories/DepositGuardWithHtsWrapping__factory";
15
18
  export { ERC20__factory } from "./factories/ERC20__factory";
19
+ export { ERC20Wrapper__factory } from "./factories/ERC20Wrapper__factory";
16
20
  export { IchiVault__factory } from "./factories/IchiVault__factory";
17
21
  export { Multicall__factory } from "./factories/Multicall__factory";
18
22
  export { MultiFeeDistributer__factory } from "./factories/MultiFeeDistributer__factory";
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.UniswapV3Pool__factory = exports.MultiFeeDistributer__factory = exports.Multicall__factory = exports.IchiVault__factory = exports.ERC20__factory = exports.DepositGuard__factory = exports.ClPool__factory = exports.AlgebraPool__factory = exports.AlgebraIntegralPool__factory = exports.factories = void 0;
26
+ exports.UniswapV3Pool__factory = exports.MultiFeeDistributer__factory = exports.Multicall__factory = exports.IchiVault__factory = exports.ERC20Wrapper__factory = exports.ERC20__factory = exports.DepositGuardWithHtsWrapping__factory = exports.DepositGuard__factory = exports.ClPool__factory = exports.AlgebraPool__factory = exports.AlgebraIntegralPool__factory = exports.factories = void 0;
27
27
  exports.factories = __importStar(require("./factories"));
28
28
  var AlgebraIntegralPool__factory_1 = require("./factories/AlgebraIntegralPool__factory");
29
29
  Object.defineProperty(exports, "AlgebraIntegralPool__factory", { enumerable: true, get: function () { return AlgebraIntegralPool__factory_1.AlgebraIntegralPool__factory; } });
@@ -33,8 +33,12 @@ var ClPool__factory_1 = require("./factories/ClPool__factory");
33
33
  Object.defineProperty(exports, "ClPool__factory", { enumerable: true, get: function () { return ClPool__factory_1.ClPool__factory; } });
34
34
  var DepositGuard__factory_1 = require("./factories/DepositGuard__factory");
35
35
  Object.defineProperty(exports, "DepositGuard__factory", { enumerable: true, get: function () { return DepositGuard__factory_1.DepositGuard__factory; } });
36
+ var DepositGuardWithHtsWrapping__factory_1 = require("./factories/DepositGuardWithHtsWrapping__factory");
37
+ Object.defineProperty(exports, "DepositGuardWithHtsWrapping__factory", { enumerable: true, get: function () { return DepositGuardWithHtsWrapping__factory_1.DepositGuardWithHtsWrapping__factory; } });
36
38
  var ERC20__factory_1 = require("./factories/ERC20__factory");
37
39
  Object.defineProperty(exports, "ERC20__factory", { enumerable: true, get: function () { return ERC20__factory_1.ERC20__factory; } });
40
+ var ERC20Wrapper__factory_1 = require("./factories/ERC20Wrapper__factory");
41
+ Object.defineProperty(exports, "ERC20Wrapper__factory", { enumerable: true, get: function () { return ERC20Wrapper__factory_1.ERC20Wrapper__factory; } });
38
42
  var IchiVault__factory_1 = require("./factories/IchiVault__factory");
39
43
  Object.defineProperty(exports, "IchiVault__factory", { enumerable: true, get: function () { return IchiVault__factory_1.IchiVault__factory; } });
40
44
  var Multicall__factory_1 = require("./factories/Multicall__factory");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../abis/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,yDAAyC;AACzC,yFAAwF;AAA/E,4IAAA,4BAA4B,OAAA;AACrC,yEAAwE;AAA/D,4HAAA,oBAAoB,OAAA;AAC7B,+DAA8D;AAArD,kHAAA,eAAe,OAAA;AACxB,2EAA0E;AAAjE,8HAAA,qBAAqB,OAAA;AAC9B,6DAA4D;AAAnD,gHAAA,cAAc,OAAA;AACvB,qEAAoE;AAA3D,wHAAA,kBAAkB,OAAA;AAC3B,qEAAoE;AAA3D,wHAAA,kBAAkB,OAAA;AAC3B,yFAAwF;AAA/E,4IAAA,4BAA4B,OAAA;AACrC,6EAA4E;AAAnE,gIAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../abis/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,yDAAyC;AACzC,yFAAwF;AAA/E,4IAAA,4BAA4B,OAAA;AACrC,yEAAwE;AAA/D,4HAAA,oBAAoB,OAAA;AAC7B,+DAA8D;AAArD,kHAAA,eAAe,OAAA;AACxB,2EAA0E;AAAjE,8HAAA,qBAAqB,OAAA;AAC9B,yGAAwG;AAA/F,4JAAA,oCAAoC,OAAA;AAC7C,6DAA4D;AAAnD,gHAAA,cAAc,OAAA;AACvB,2EAA0E;AAAjE,8HAAA,qBAAqB,OAAA;AAC9B,qEAAoE;AAA3D,wHAAA,kBAAkB,OAAA;AAC3B,qEAAoE;AAA3D,wHAAA,kBAAkB,OAAA;AAC3B,yFAAwF;AAA/E,4IAAA,4BAA4B,OAAA;AACrC,6EAA4E;AAAnE,gIAAA,sBAAsB,OAAA"}
@@ -53,28 +53,28 @@ var parseBigInt_1 = __importDefault(require("../utils/parseBigInt"));
53
53
  var _totalBalances_1 = require("../functions/_totalBalances");
54
54
  var hdWalletProvider = new hdwallet_provider_1.default([process.env.PRIVATE_KEY], process.env.PROVIDER_URL, 0, 1);
55
55
  var provider = new providers_1.Web3Provider(hdWalletProvider, {
56
- chainId: types_1.SupportedChainId.bsc,
57
- name: 'Binance Smart Chain',
56
+ chainId: types_1.SupportedChainId.hedera,
57
+ name: 'hedera',
58
58
  });
59
59
  var account = process.env.ACCOUNT;
60
60
  var vault = {
61
- address: '0x0def612e7a7b51ca7ee38f7905da809bd3491268',
62
- chainId: types_1.SupportedChainId.bsc,
63
- dex: types_1.SupportedDex.Pancakeswap,
61
+ address: '0x6b068a06a23edc1de4f63c4d421e57d71e33573d',
62
+ chainId: types_1.SupportedChainId.hedera,
63
+ dex: types_1.SupportedDex.Bonzo,
64
64
  };
65
65
  var pool = {
66
66
  address: '0x1123E75b71019962CD4d21b0F3018a6412eDb63C',
67
- chainId: types_1.SupportedChainId.bsc,
68
- dex: types_1.SupportedDex.Pancakeswap,
67
+ chainId: types_1.SupportedChainId.hedera,
68
+ dex: types_1.SupportedDex.Bonzo,
69
69
  };
70
70
  var tokens = {
71
71
  pairedToken: '0x0EF4A107b48163ab4b57FCa36e1352151a587Be4',
72
72
  depositToken: '0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c',
73
73
  };
74
74
  var iface = new ethers_1.ethers.utils.Interface(IchiVault_json_1.default);
75
- var amount0 = '10';
76
- var amount1 = '0';
77
- var sharesToWithdraw = '0.00004';
75
+ var amount1 = '0.00000005';
76
+ var amount0 = '0';
77
+ var sharesToWithdraw = '1.07e-16';
78
78
  var bigAmount = '1000';
79
79
  describe('Vault', function () {
80
80
  var share = null;
@@ -123,13 +123,33 @@ describe('Vault', function () {
123
123
  switch (_a.label) {
124
124
  case 0:
125
125
  approve = null;
126
- return [4 /*yield*/, (0, index_1.approveDepositToken)(account, 0, vault.address, provider, vault.dex, amount0)];
126
+ return [4 /*yield*/, (0, index_1.approveDepositToken)(account, 1, vault.address, provider, vault.dex, amount1)];
127
127
  case 1:
128
128
  approve = _a.sent();
129
129
  return [4 /*yield*/, approve.wait()];
130
130
  case 2:
131
131
  _a.sent();
132
- return [4 /*yield*/, (0, index_1.isDepositTokenApproved)(account, 0, amount0, vault.address, provider, vault.dex)];
132
+ return [4 /*yield*/, (0, index_1.isDepositTokenApproved)(account, 1, amount1, vault.address, provider, vault.dex)];
133
+ case 3:
134
+ isApproved = _a.sent();
135
+ expect(isApproved).toEqual(true);
136
+ return [2 /*return*/];
137
+ }
138
+ });
139
+ }); });
140
+ it.skip('approveToken', function () { return __awaiter(void 0, void 0, void 0, function () {
141
+ var approve, isApproved;
142
+ return __generator(this, function (_a) {
143
+ switch (_a.label) {
144
+ case 0:
145
+ approve = null;
146
+ return [4 /*yield*/, (0, index_1.approveToken)(account, '0xd7d4d91d64a6061fa00a94e2b3a2d2a5fb677849', vault.address, provider, vault.dex, amount1)];
147
+ case 1:
148
+ approve = _a.sent();
149
+ return [4 /*yield*/, approve.wait()];
150
+ case 2:
151
+ _a.sent();
152
+ return [4 /*yield*/, (0, index_1.isTokenApproved)(account, '0xd7d4d91d64a6061fa00a94e2b3a2d2a5fb677849', amount1, vault.address, provider, vault.dex)];
133
153
  case 3:
134
154
  isApproved = _a.sent();
135
155
  expect(isApproved).toEqual(true);
@@ -138,13 +158,13 @@ describe('Vault', function () {
138
158
  });
139
159
  }); });
140
160
  it('isDepositTokenApproved', function () { return __awaiter(void 0, void 0, void 0, function () {
141
- var isApproved;
161
+ var is0Approved;
142
162
  return __generator(this, function (_a) {
143
163
  switch (_a.label) {
144
164
  case 0: return [4 /*yield*/, (0, index_1.isDepositTokenApproved)(account, 0, bigAmount, vault.address, provider, vault.dex)];
145
165
  case 1:
146
- isApproved = _a.sent();
147
- expect(isApproved).toEqual(false);
166
+ is0Approved = _a.sent();
167
+ expect(is0Approved).toEqual(false);
148
168
  return [2 /*return*/];
149
169
  }
150
170
  });
@@ -265,6 +285,57 @@ describe('Vault', function () {
265
285
  }
266
286
  });
267
287
  }); });
288
+ it.skip('depositWithHtsWrapping', function () { return __awaiter(void 0, void 0, void 0, function () {
289
+ var isAllowed0, isAllowed1, vaultFromQuery, token0Decimals, token1Decimals, r, a, result;
290
+ var _a;
291
+ return __generator(this, function (_b) {
292
+ switch (_b.label) {
293
+ case 0: return [4 /*yield*/, (0, index_1.isTokenAllowed)(0, vault.address, provider, vault.dex)];
294
+ case 1:
295
+ isAllowed0 = _b.sent();
296
+ return [4 /*yield*/, (0, index_1.isTokenAllowed)(1, vault.address, provider, vault.dex)];
297
+ case 2:
298
+ isAllowed1 = _b.sent();
299
+ console.log({ isAllowed0: isAllowed0 }, { isAllowed1: isAllowed1 });
300
+ return [4 /*yield*/, (0, index_1.getIchiVaultInfo)(vault.chainId, vault.dex, vault.address, provider)];
301
+ case 3:
302
+ vaultFromQuery = _b.sent();
303
+ if (!vaultFromQuery)
304
+ throw new Error("Vault ".concat(vault.address, " not found on chain ").concat(vault.chainId, " and dex ").concat(vault.dex, "]"));
305
+ return [4 /*yield*/, (0, _totalBalances_1.getTokenDecimals)(vaultFromQuery.tokenA, provider, vault.chainId)];
306
+ case 4:
307
+ token0Decimals = _b.sent();
308
+ return [4 /*yield*/, (0, _totalBalances_1.getTokenDecimals)(vaultFromQuery.tokenB, provider, vault.chainId)];
309
+ case 5:
310
+ token1Decimals = _b.sent();
311
+ if (!isAllowed0 && Number(amount0) > 0)
312
+ return [2 /*return*/];
313
+ if (!isAllowed1 && Number(amount1) > 0)
314
+ return [2 /*return*/];
315
+ return [4 /*yield*/, (0, index_1.depositWithHtsWrapping)(account, amount0, amount1, vault.address, provider, vault.dex)];
316
+ case 6:
317
+ r = _b.sent();
318
+ return [4 /*yield*/, r.wait()];
319
+ case 7:
320
+ a = _b.sent();
321
+ result = (_a = a.logs
322
+ .map(function (e) {
323
+ try {
324
+ console.log('iface.parseLog(e):', iface.parseLog(e));
325
+ return iface.parseLog(e);
326
+ }
327
+ catch (error) {
328
+ return null;
329
+ }
330
+ })
331
+ .find(function (e) { return e && e.name === 'Deposit'; })) === null || _a === void 0 ? void 0 : _a.args;
332
+ console.log('Deposit:', result);
333
+ share = (0, formatBigInt_1.default)(result.shares);
334
+ console.log('Deposit share:', share);
335
+ return [2 /*return*/];
336
+ }
337
+ });
338
+ }); });
268
339
  it('getUserBalance', function () { return __awaiter(void 0, void 0, void 0, function () {
269
340
  var userShares;
270
341
  return __generator(this, function (_a) {
@@ -499,6 +570,32 @@ describe('Withdraws', function () {
499
570
  }
500
571
  });
501
572
  }); });
573
+ it.skip('withdrawWithErc20Wrapping', function () { return __awaiter(void 0, void 0, void 0, function () {
574
+ return __generator(this, function (_a) {
575
+ switch (_a.label) {
576
+ case 0: return [4 /*yield*/, (0, index_1.withdrawWithErc20Wrapping)(account, sharesToWithdraw, vault.address, provider, vault.dex)
577
+ .then(function (e) { return e.wait(); })
578
+ .then(function (a) {
579
+ var _a;
580
+ var result = (_a = a.logs
581
+ .map(function (e) {
582
+ try {
583
+ return iface.parseLog(e);
584
+ }
585
+ catch (error) {
586
+ return null;
587
+ }
588
+ })
589
+ .find(function (e) { return e && e.name === 'Withdraw'; })) === null || _a === void 0 ? void 0 : _a.args;
590
+ console.log('withdrawWithErc20Wrapping:', result);
591
+ expect((0, formatBigInt_1.default)(result.shares)).toEqual(sharesToWithdraw);
592
+ })];
593
+ case 1:
594
+ _a.sent();
595
+ return [2 /*return*/];
596
+ }
597
+ });
598
+ }); });
502
599
  });
503
600
  describe('GraphQL', function () {
504
601
  it('GetIchiVaultInfo', function () { return __awaiter(void 0, void 0, void 0, function () {