@typus/typus-sdk 0.2.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -3
- package/lib/constants.d.ts +11 -9
- package/lib/constants.js +12 -10
- package/lib/scripts/coveredCall/getNewCoveredCallVaultTx.js +5 -2
- package/lib/scripts/coveredCall/getUpdatePayoffConfigTx.js +3 -2
- package/lib/{scripts/getCoveredCallVaultAsset.d.ts → test/getUsersShares.d.ts} +0 -0
- package/lib/{scripts/getCoveredCallVaultAsset.js → test/getUsersShares.js} +6 -9
- package/lib/test/{getUserDepositData.d.ts → getVaultData.d.ts} +0 -0
- package/lib/test/{getUserDepositData.js → getVaultData.js} +6 -18
- package/lib/test/testClaim.d.ts +1 -0
- package/lib/test/testClaim.js +81 -0
- package/lib/test/testDeposit.js +2 -2
- package/lib/test/testMint.js +1 -1
- package/lib/test/testNewVault.js +33 -61
- package/lib/test/testSettle.js +223 -155
- package/lib/utils/coveredCall/createTimeOracle.d.ts +1 -0
- package/lib/utils/coveredCall/createTimeOracle.js +91 -0
- package/lib/utils/coveredCall/getClaimAllTx.js +2 -2
- package/lib/utils/coveredCall/getNewCoveredCallVaultTx.d.ts +1 -1
- package/lib/utils/coveredCall/getNewCoveredCallVaultTx.js +4 -1
- package/lib/utils/coveredCall/getUpdatePayoffConfigTx.d.ts +1 -1
- package/lib/utils/coveredCall/getUpdatePayoffConfigTx.js +2 -1
- package/lib/utils/fetchData.d.ts +5 -0
- package/lib/utils/fetchData.js +1 -0
- package/lib/utils/getUsersShares.d.ts +7 -0
- package/lib/utils/getUsersShares.js +73 -0
- package/lib/utils/getVaultData.d.ts +2 -0
- package/lib/utils/getVaultData.js +109 -0
- package/lib/utils/isObjAvailable.d.ts +1 -0
- package/lib/utils/{getCoveredCallVaultAsset.js → isObjAvailable.js} +17 -9
- package/lib/utils/loadUsersDepositData.js +1 -1
- package/package.json +3 -2
- package/lib/utils/getCoveredCallVaultAsset.d.ts +0 -1
package/lib/test/testSettle.js
CHANGED
|
@@ -64,10 +64,10 @@ var __values = (this && this.__values) || function(o) {
|
|
|
64
64
|
};
|
|
65
65
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
66
66
|
var getNewOracleTx_1 = require("../utils/getNewOracleTx");
|
|
67
|
-
var getNewTimeOracleTx_1 = require("../utils/getNewTimeOracleTx");
|
|
68
67
|
var getUpdateOracleTx_1 = require("../utils/getUpdateOracleTx");
|
|
69
68
|
var getNewCoveredCallVaultTx_1 = require("../utils/coveredCall/getNewCoveredCallVaultTx");
|
|
70
69
|
var getDepositTx_1 = require("../utils/coveredCall/getDepositTx");
|
|
70
|
+
var createTimeOracle_1 = require("../utils/coveredCall/createTimeOracle");
|
|
71
71
|
var constants_1 = require("../constants");
|
|
72
72
|
var sui_js_1 = require("@mysten/sui.js");
|
|
73
73
|
var getTypeArgumentFromToken_1 = require("../utils/getTypeArgumentFromToken");
|
|
@@ -76,37 +76,39 @@ var getNewAuctionWithNextCoveredCallVaultTx_1 = require("../utils/coveredCall/ge
|
|
|
76
76
|
var getNewBidTx_1 = require("../utils/coveredCall/getNewBidTx");
|
|
77
77
|
var getDeliveryTx_1 = require("../utils/coveredCall/getDeliveryTx");
|
|
78
78
|
var getUpdatePayoffConfigTx_1 = require("../utils/coveredCall/getUpdatePayoffConfigTx");
|
|
79
|
+
var getSettleTx_1 = require("../utils/coveredCall/getSettleTx");
|
|
79
80
|
var provider = new sui_js_1.JsonRpcProvider(sui_js_1.Network.DEVNET); //for read only operations
|
|
80
81
|
var keypair = sui_js_1.Ed25519Keypair.deriveKeypair(constants_1.TEST_MNEMONIC);
|
|
81
82
|
var signer = new sui_js_1.RawSigner(keypair, provider);
|
|
82
|
-
var token = "
|
|
83
|
-
var
|
|
83
|
+
var token = "0x8f306b0fcbcbdee0b3a5e694c06039dfe8ca7f14"; // minted token
|
|
84
|
+
var tokenB = "0xb1bf91e97ea97712903824f2f9f4a29d629e9fab";
|
|
84
85
|
var decimal = 8;
|
|
85
86
|
var strike = 2000;
|
|
86
87
|
var isRolling = true;
|
|
87
88
|
var expirationTsMs1 = 1000000;
|
|
88
89
|
var expirationTsMs2 = 2000000;
|
|
90
|
+
// let priceOracle = '0x636b4e02991f13720571d0cbbc8b83d80cd14729';
|
|
91
|
+
// let priceOracleManager = '0xd958057a227cdfd2080f4aeda7a16d6fe7135bcc';
|
|
92
|
+
// let timeOracle = '0x2b06a0f8109e394258c288b1d90c8c5a9c3832db';
|
|
93
|
+
// let timeOracleManager = '0xcad2723ff9c95ce423d3614375e2fa73ce9a7c04';
|
|
89
94
|
(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
90
|
-
var typeArgument, _a, priceOracle, priceOracleManager, _b, timeOracle, timeOracleManager, price, ts, vaultIndex, startAuctionTsMs, endAuctionTsMs, decaySpeed, initialPrice, finalPrice, currentTime,
|
|
95
|
+
var typeArgument, _a, priceOracle, priceOracleManager, _b, timeOracle, timeOracleManager, price, ts, tokenDecimal, shareDecimal, vaultIndex, depositAmount, startAuctionTsMs, endAuctionTsMs, decaySpeed, initialPrice, finalPrice, currentTime, bidSize, sellSize, premiumRoi, exposureRatio;
|
|
91
96
|
return __generator(this, function (_c) {
|
|
92
97
|
switch (_c.label) {
|
|
93
98
|
case 0: return [4 /*yield*/, (0, getTypeArgumentFromToken_1.getTypeArgumentFromToken)(token)
|
|
94
99
|
//create price oracle and time oracle
|
|
95
|
-
//DONE
|
|
96
100
|
];
|
|
97
101
|
case 1:
|
|
98
102
|
typeArgument = _c.sent();
|
|
99
103
|
return [4 /*yield*/, createPriceOracle(typeArgument)];
|
|
100
104
|
case 2:
|
|
101
105
|
_a = __read.apply(void 0, [_c.sent(), 2]), priceOracle = _a[0], priceOracleManager = _a[1];
|
|
102
|
-
return [4 /*yield*/, createTimeOracle()
|
|
106
|
+
return [4 /*yield*/, (0, createTimeOracle_1.createTimeOracle)()
|
|
103
107
|
// update price oracle and time oracle
|
|
104
|
-
//DONE
|
|
105
108
|
];
|
|
106
109
|
case 3:
|
|
107
110
|
_b = __read.apply(void 0, [_c.sent()
|
|
108
111
|
// update price oracle and time oracle
|
|
109
|
-
//DONE
|
|
110
112
|
, 2]), timeOracle = _b[0], timeOracleManager = _b[1];
|
|
111
113
|
price = 10000000000;
|
|
112
114
|
ts = 0 //ms
|
|
@@ -114,29 +116,23 @@ var expirationTsMs2 = 2000000;
|
|
|
114
116
|
return [4 /*yield*/, updatePriceOracle(priceOracle, priceOracleManager, typeArgument, price, ts)
|
|
115
117
|
// await updateTimeOracle(timeOracle, timeOracleManager, ts)
|
|
116
118
|
//create new vault
|
|
117
|
-
//DONE
|
|
118
119
|
];
|
|
119
120
|
case 4:
|
|
120
121
|
_c.sent();
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
return [4 /*yield*/, createNewVault(typeArgument, priceOracle)
|
|
122
|
+
tokenDecimal = 9;
|
|
123
|
+
shareDecimal = 4;
|
|
124
|
+
return [4 /*yield*/, createNewVault(typeArgument, expirationTsMs1, tokenDecimal, shareDecimal, timeOracle)
|
|
125
125
|
//deposit to new vault
|
|
126
|
-
//DONE
|
|
127
126
|
];
|
|
128
127
|
case 5:
|
|
129
|
-
// await updateTimeOracle(timeOracle, timeOracleManager, ts)
|
|
130
|
-
//create new vault
|
|
131
|
-
//DONE
|
|
132
128
|
_c.sent();
|
|
133
129
|
return [4 /*yield*/, getNewestVaultIndex(constants_1.COVERED_CALL_REGISTRY)];
|
|
134
130
|
case 6:
|
|
135
131
|
vaultIndex = _c.sent();
|
|
132
|
+
depositAmount = 50000000000;
|
|
136
133
|
return [4 /*yield*/, depositToVault(typeArgument, vaultIndex, depositAmount)
|
|
137
134
|
//================================start auction================================
|
|
138
135
|
//update price oracle and time oracle
|
|
139
|
-
//DONE
|
|
140
136
|
];
|
|
141
137
|
case 7:
|
|
142
138
|
_c.sent();
|
|
@@ -146,7 +142,6 @@ var expirationTsMs2 = 2000000;
|
|
|
146
142
|
_c.sent();
|
|
147
143
|
return [4 /*yield*/, updateTimeOracle(timeOracle, timeOracleManager, startAuctionTsMs)
|
|
148
144
|
//new_auction_with_next_covered_call_vault
|
|
149
|
-
//DONE
|
|
150
145
|
];
|
|
151
146
|
case 9:
|
|
152
147
|
_c.sent();
|
|
@@ -156,71 +151,74 @@ var expirationTsMs2 = 2000000;
|
|
|
156
151
|
finalPrice = 100000000;
|
|
157
152
|
return [4 /*yield*/, createNewAuctionWithNextCoveredCallVault(typeArgument, vaultIndex, startAuctionTsMs, endAuctionTsMs, decaySpeed, initialPrice, finalPrice, expirationTsMs2, strike)
|
|
158
153
|
//update time oracle
|
|
159
|
-
//DONE
|
|
160
154
|
];
|
|
161
155
|
case 10:
|
|
162
156
|
_c.sent();
|
|
163
157
|
currentTime = startAuctionTsMs + 300;
|
|
164
158
|
return [4 /*yield*/, updateTimeOracle(timeOracle, timeOracleManager, currentTime)
|
|
165
159
|
//new bid
|
|
166
|
-
//DONE
|
|
167
160
|
];
|
|
168
161
|
case 11:
|
|
169
162
|
_c.sent();
|
|
170
|
-
|
|
171
|
-
return [4 /*yield*/, newBid(vaultIndex,
|
|
172
|
-
//check some data
|
|
173
|
-
//TODO
|
|
163
|
+
bidSize = 50000000000;
|
|
164
|
+
return [4 /*yield*/, newBid(typeArgument, vaultIndex, bidSize, tokenB, timeOracle)
|
|
165
|
+
// //check some data
|
|
166
|
+
// //TODO
|
|
174
167
|
//update time oracle
|
|
175
|
-
//DONE
|
|
176
168
|
];
|
|
177
169
|
case 12:
|
|
178
170
|
_c.sent();
|
|
179
|
-
//check some data
|
|
180
|
-
//TODO
|
|
171
|
+
// //check some data
|
|
172
|
+
// //TODO
|
|
181
173
|
//update time oracle
|
|
182
|
-
//DONE
|
|
183
174
|
return [4 /*yield*/, updateTimeOracle(timeOracle, timeOracleManager, endAuctionTsMs + 1)
|
|
184
175
|
//delivery
|
|
185
|
-
//DONE
|
|
186
176
|
];
|
|
187
177
|
case 13:
|
|
188
|
-
//check some data
|
|
189
|
-
//TODO
|
|
178
|
+
// //check some data
|
|
179
|
+
// //TODO
|
|
190
180
|
//update time oracle
|
|
191
|
-
//DONE
|
|
192
181
|
_c.sent();
|
|
193
|
-
sellSize =
|
|
194
|
-
return [4 /*yield*/, delivery(vaultIndex, sellSize, timeOracle)
|
|
195
|
-
//================================end auction================================
|
|
182
|
+
sellSize = 50000000000;
|
|
183
|
+
return [4 /*yield*/, delivery(typeArgument, vaultIndex, sellSize, timeOracle)
|
|
184
|
+
// //================================end auction================================
|
|
196
185
|
//update price oracle and time oracle
|
|
197
|
-
//DONE
|
|
198
186
|
];
|
|
199
187
|
case 14:
|
|
200
188
|
_c.sent();
|
|
201
|
-
//================================end auction================================
|
|
189
|
+
// //================================end auction================================
|
|
202
190
|
//update price oracle and time oracle
|
|
203
|
-
//DONE
|
|
204
191
|
return [4 /*yield*/, updatePriceOracle(priceOracle, priceOracleManager, typeArgument, price, endAuctionTsMs)];
|
|
205
192
|
case 15:
|
|
206
|
-
//================================end auction================================
|
|
193
|
+
// //================================end auction================================
|
|
207
194
|
//update price oracle and time oracle
|
|
208
|
-
//DONE
|
|
209
195
|
_c.sent();
|
|
210
196
|
return [4 /*yield*/, updateTimeOracle(timeOracle, timeOracleManager, endAuctionTsMs)
|
|
211
197
|
//update payoff config
|
|
212
|
-
//DONE
|
|
213
198
|
];
|
|
214
199
|
case 16:
|
|
215
200
|
_c.sent();
|
|
216
201
|
premiumRoi = 100000;
|
|
217
|
-
|
|
202
|
+
exposureRatio = bidSize * (Math.pow(10, decimal)) / depositAmount;
|
|
203
|
+
return [4 /*yield*/, updatePayoffConfig(typeArgument, vaultIndex, price, premiumRoi, exposureRatio)
|
|
218
204
|
//update price oracle and time oracle
|
|
219
|
-
//TODO
|
|
220
|
-
//settle
|
|
221
|
-
//TODO
|
|
222
205
|
];
|
|
223
206
|
case 17:
|
|
207
|
+
_c.sent();
|
|
208
|
+
//update price oracle and time oracle
|
|
209
|
+
price = 9800000000;
|
|
210
|
+
return [4 /*yield*/, updatePriceOracle(priceOracle, priceOracleManager, typeArgument, price, expirationTsMs1)];
|
|
211
|
+
case 18:
|
|
212
|
+
_c.sent();
|
|
213
|
+
return [4 /*yield*/, updateTimeOracle(timeOracle, timeOracleManager, expirationTsMs1)
|
|
214
|
+
//settle
|
|
215
|
+
];
|
|
216
|
+
case 19:
|
|
217
|
+
_c.sent();
|
|
218
|
+
//settle
|
|
219
|
+
return [4 /*yield*/, settle(typeArgument, vaultIndex, priceOracle, timeOracle)];
|
|
220
|
+
case 20:
|
|
221
|
+
//settle
|
|
224
222
|
_c.sent();
|
|
225
223
|
return [2 /*return*/];
|
|
226
224
|
}
|
|
@@ -271,57 +269,12 @@ function createPriceOracle(typeArgument) {
|
|
|
271
269
|
});
|
|
272
270
|
});
|
|
273
271
|
}
|
|
274
|
-
function createTimeOracle() {
|
|
275
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
276
|
-
var _this = this;
|
|
277
|
-
return __generator(this, function (_a) {
|
|
278
|
-
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
279
|
-
var newTimeOracleTx, moveCallTxn, digest, txn, timeOracle, managerCap, e_2;
|
|
280
|
-
return __generator(this, function (_a) {
|
|
281
|
-
switch (_a.label) {
|
|
282
|
-
case 0:
|
|
283
|
-
_a.trys.push([0, 4, , 5]);
|
|
284
|
-
console.log("create new time oracle...");
|
|
285
|
-
return [4 /*yield*/, (0, getNewTimeOracleTx_1.getNewTimeOracleTx)(constants_1.ORACLE_PACKAGE)];
|
|
286
|
-
case 1:
|
|
287
|
-
newTimeOracleTx = _a.sent();
|
|
288
|
-
return [4 /*yield*/, signer.executeMoveCall(newTimeOracleTx)];
|
|
289
|
-
case 2:
|
|
290
|
-
moveCallTxn = _a.sent();
|
|
291
|
-
digest = moveCallTxn.EffectsCert.certificate.transactionDigest;
|
|
292
|
-
return [4 /*yield*/, provider.getTransactionWithEffects(digest)];
|
|
293
|
-
case 3:
|
|
294
|
-
txn = _a.sent();
|
|
295
|
-
timeOracle = void 0;
|
|
296
|
-
managerCap = void 0;
|
|
297
|
-
if (txn.effects.created[0].owner["AddressOwner"] == undefined) {
|
|
298
|
-
timeOracle = txn.effects.created[0].reference.objectId;
|
|
299
|
-
managerCap = txn.effects.created[1].reference.objectId;
|
|
300
|
-
}
|
|
301
|
-
else {
|
|
302
|
-
timeOracle = txn.effects.created[1].reference.objectId;
|
|
303
|
-
managerCap = txn.effects.created[0].reference.objectId;
|
|
304
|
-
}
|
|
305
|
-
resolve([timeOracle, managerCap]);
|
|
306
|
-
return [3 /*break*/, 5];
|
|
307
|
-
case 4:
|
|
308
|
-
e_2 = _a.sent();
|
|
309
|
-
console.log("err in createTimeOracle");
|
|
310
|
-
reject(e_2);
|
|
311
|
-
return [3 /*break*/, 5];
|
|
312
|
-
case 5: return [2 /*return*/];
|
|
313
|
-
}
|
|
314
|
-
});
|
|
315
|
-
}); })];
|
|
316
|
-
});
|
|
317
|
-
});
|
|
318
|
-
}
|
|
319
272
|
function updatePriceOracle(priceOracle, priceOracleManager, typeArgument, price, ts) {
|
|
320
273
|
return __awaiter(this, void 0, void 0, function () {
|
|
321
274
|
var _this = this;
|
|
322
275
|
return __generator(this, function (_a) {
|
|
323
276
|
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
324
|
-
var updateOracleTx,
|
|
277
|
+
var updateOracleTx, e_2;
|
|
325
278
|
return __generator(this, function (_a) {
|
|
326
279
|
switch (_a.label) {
|
|
327
280
|
case 0:
|
|
@@ -332,16 +285,20 @@ function updatePriceOracle(priceOracle, priceOracleManager, typeArgument, price,
|
|
|
332
285
|
return [4 /*yield*/, signer.executeMoveCall(updateOracleTx)];
|
|
333
286
|
case 2:
|
|
334
287
|
_a.sent();
|
|
288
|
+
console.log("update price oracle successfully");
|
|
289
|
+
resolve(null);
|
|
335
290
|
return [3 /*break*/, 4];
|
|
336
291
|
case 3:
|
|
337
|
-
|
|
292
|
+
e_2 = _a.sent();
|
|
338
293
|
console.error("err in updatePriceOracle");
|
|
339
294
|
reject();
|
|
340
295
|
return [3 /*break*/, 4];
|
|
341
296
|
case 4: return [2 /*return*/];
|
|
342
297
|
}
|
|
343
298
|
});
|
|
344
|
-
}); })
|
|
299
|
+
}); }).catch(function (error) {
|
|
300
|
+
console.error(error);
|
|
301
|
+
})];
|
|
345
302
|
});
|
|
346
303
|
});
|
|
347
304
|
}
|
|
@@ -350,7 +307,7 @@ function updateTimeOracle(timeOracle, managerCap, ts) {
|
|
|
350
307
|
var _this = this;
|
|
351
308
|
return __generator(this, function (_a) {
|
|
352
309
|
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
353
|
-
var updateTimeOracleTx,
|
|
310
|
+
var updateTimeOracleTx, e_3;
|
|
354
311
|
return __generator(this, function (_a) {
|
|
355
312
|
switch (_a.label) {
|
|
356
313
|
case 0:
|
|
@@ -361,30 +318,34 @@ function updateTimeOracle(timeOracle, managerCap, ts) {
|
|
|
361
318
|
return [4 /*yield*/, signer.executeMoveCall(updateTimeOracleTx)];
|
|
362
319
|
case 2:
|
|
363
320
|
_a.sent();
|
|
321
|
+
console.log("update time oracle successfully");
|
|
322
|
+
resolve(null);
|
|
364
323
|
return [3 /*break*/, 4];
|
|
365
324
|
case 3:
|
|
366
|
-
|
|
325
|
+
e_3 = _a.sent();
|
|
367
326
|
console.error("err in updateTimeOracle");
|
|
368
327
|
reject();
|
|
369
328
|
return [3 /*break*/, 4];
|
|
370
329
|
case 4: return [2 /*return*/];
|
|
371
330
|
}
|
|
372
331
|
});
|
|
373
|
-
}); })
|
|
332
|
+
}); }).catch(function (error) {
|
|
333
|
+
console.error(error);
|
|
334
|
+
})];
|
|
374
335
|
});
|
|
375
336
|
});
|
|
376
337
|
}
|
|
377
|
-
function createNewVault(typeArgument,
|
|
338
|
+
function createNewVault(typeArgument, expirationTsMs1, tokenDecimal, shareDecimal, timeOracle) {
|
|
378
339
|
return __awaiter(this, void 0, void 0, function () {
|
|
379
340
|
var _this = this;
|
|
380
341
|
return __generator(this, function (_a) {
|
|
381
342
|
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
382
|
-
var newCoveredCallVaultTx, moveCallTxn,
|
|
343
|
+
var newCoveredCallVaultTx, moveCallTxn, e_4;
|
|
383
344
|
return __generator(this, function (_a) {
|
|
384
345
|
switch (_a.label) {
|
|
385
346
|
case 0:
|
|
386
347
|
_a.trys.push([0, 4, , 5]);
|
|
387
|
-
return [4 /*yield*/, (0, getNewCoveredCallVaultTx_1.getNewCoveredCallVaultTx)(constants_1.COVERED_CALL_PACKAGE, constants_1.COVERED_CALL_REGISTRY, typeArgument, constants_1.COVERED_CALL_MANAGER, expirationTsMs1, strike)];
|
|
348
|
+
return [4 /*yield*/, (0, getNewCoveredCallVaultTx_1.getNewCoveredCallVaultTx)(constants_1.COVERED_CALL_PACKAGE, constants_1.COVERED_CALL_REGISTRY, typeArgument, constants_1.COVERED_CALL_MANAGER, tokenDecimal, shareDecimal, timeOracle, expirationTsMs1, strike)];
|
|
388
349
|
case 1:
|
|
389
350
|
newCoveredCallVaultTx = _a.sent();
|
|
390
351
|
return [4 /*yield*/, signer.executeMoveCall(newCoveredCallVaultTx)];
|
|
@@ -393,23 +354,27 @@ function createNewVault(typeArgument, priceOracle) {
|
|
|
393
354
|
return [4 /*yield*/, checkData(moveCallTxn)];
|
|
394
355
|
case 3:
|
|
395
356
|
_a.sent();
|
|
357
|
+
console.log("create new vault successfully");
|
|
358
|
+
resolve(null);
|
|
396
359
|
return [3 /*break*/, 5];
|
|
397
360
|
case 4:
|
|
398
|
-
|
|
361
|
+
e_4 = _a.sent();
|
|
399
362
|
console.error("err in createNewVault");
|
|
400
363
|
reject();
|
|
401
364
|
return [3 /*break*/, 5];
|
|
402
365
|
case 5: return [2 /*return*/];
|
|
403
366
|
}
|
|
404
367
|
});
|
|
405
|
-
}); })
|
|
368
|
+
}); }).catch(function (error) {
|
|
369
|
+
console.error(error);
|
|
370
|
+
})];
|
|
406
371
|
});
|
|
407
372
|
});
|
|
408
373
|
}
|
|
409
374
|
function checkData(moveCallTxn) {
|
|
410
375
|
return __awaiter(this, void 0, void 0, function () {
|
|
411
|
-
var txn, _a, _b, obj,
|
|
412
|
-
var
|
|
376
|
+
var txn, _a, _b, obj, e_5;
|
|
377
|
+
var e_6, _c;
|
|
413
378
|
return __generator(this, function (_d) {
|
|
414
379
|
switch (_d.label) {
|
|
415
380
|
case 0:
|
|
@@ -427,17 +392,17 @@ function checkData(moveCallTxn) {
|
|
|
427
392
|
console.log("new covered call vault: " + obj.reference.objectId);
|
|
428
393
|
}
|
|
429
394
|
}
|
|
430
|
-
catch (
|
|
395
|
+
catch (e_6_1) { e_6 = { error: e_6_1 }; }
|
|
431
396
|
finally {
|
|
432
397
|
try {
|
|
433
398
|
if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
|
|
434
399
|
}
|
|
435
|
-
finally { if (
|
|
400
|
+
finally { if (e_6) throw e_6.error; }
|
|
436
401
|
}
|
|
437
402
|
return [3 /*break*/, 3];
|
|
438
403
|
case 2:
|
|
439
|
-
|
|
440
|
-
console.error(
|
|
404
|
+
e_5 = _d.sent();
|
|
405
|
+
console.error(e_5);
|
|
441
406
|
return [3 /*break*/, 3];
|
|
442
407
|
case 3: return [2 /*return*/];
|
|
443
408
|
}
|
|
@@ -465,7 +430,7 @@ function depositToVault(typeArgument, vaultIndex, depositAmount) {
|
|
|
465
430
|
var _this = this;
|
|
466
431
|
return __generator(this, function (_a) {
|
|
467
432
|
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
468
|
-
var depositTx,
|
|
433
|
+
var depositTx, e_7;
|
|
469
434
|
return __generator(this, function (_a) {
|
|
470
435
|
switch (_a.label) {
|
|
471
436
|
case 0:
|
|
@@ -476,80 +441,183 @@ function depositToVault(typeArgument, vaultIndex, depositAmount) {
|
|
|
476
441
|
return [4 /*yield*/, signer.executeMoveCall(depositTx)];
|
|
477
442
|
case 2:
|
|
478
443
|
_a.sent();
|
|
444
|
+
console.log("deposit to vault successfully");
|
|
445
|
+
resolve(null);
|
|
479
446
|
return [3 /*break*/, 4];
|
|
480
447
|
case 3:
|
|
481
|
-
|
|
448
|
+
e_7 = _a.sent();
|
|
449
|
+
console.log(e_7);
|
|
482
450
|
console.error("err in depositToVault");
|
|
483
|
-
reject();
|
|
484
451
|
return [3 /*break*/, 4];
|
|
485
452
|
case 4: return [2 /*return*/];
|
|
486
453
|
}
|
|
487
454
|
});
|
|
488
|
-
}); })
|
|
455
|
+
}); }).catch(function (error) {
|
|
456
|
+
console.error(error);
|
|
457
|
+
})];
|
|
489
458
|
});
|
|
490
459
|
});
|
|
491
460
|
}
|
|
492
461
|
function createNewAuctionWithNextCoveredCallVault(typeArgument, vaultIndex, startAuctionTsMs, endAuctionTsMs, decaySpeed, initialPrice, finalPrice, expirationTsMs2, strike) {
|
|
493
462
|
return __awaiter(this, void 0, void 0, function () {
|
|
494
|
-
var
|
|
463
|
+
var _this = this;
|
|
495
464
|
return __generator(this, function (_a) {
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
465
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
466
|
+
var txn, e_8;
|
|
467
|
+
return __generator(this, function (_a) {
|
|
468
|
+
switch (_a.label) {
|
|
469
|
+
case 0:
|
|
470
|
+
_a.trys.push([0, 3, , 4]);
|
|
471
|
+
return [4 /*yield*/, (0, getNewAuctionWithNextCoveredCallVaultTx_1.getNewAuctionWithNextCoveredCallVaultTx)(constants_1.COVERED_CALL_PACKAGE, constants_1.COVERED_CALL_MANAGER, constants_1.COVERED_CALL_REGISTRY, typeArgument, vaultIndex, startAuctionTsMs, endAuctionTsMs, decaySpeed, initialPrice, finalPrice, expirationTsMs2, strike)];
|
|
472
|
+
case 1:
|
|
473
|
+
txn = _a.sent();
|
|
474
|
+
return [4 /*yield*/, signer.executeMoveCall(txn)];
|
|
475
|
+
case 2:
|
|
476
|
+
_a.sent();
|
|
477
|
+
console.log("create new auction with next covered call successfully");
|
|
478
|
+
resolve(null);
|
|
479
|
+
return [3 /*break*/, 4];
|
|
480
|
+
case 3:
|
|
481
|
+
e_8 = _a.sent();
|
|
482
|
+
console.error("err in createNewAuctionWithNextCoveredCallVault");
|
|
483
|
+
return [3 /*break*/, 4];
|
|
484
|
+
case 4: return [2 /*return*/];
|
|
485
|
+
}
|
|
486
|
+
});
|
|
487
|
+
}); }).catch(function (error) {
|
|
488
|
+
console.error(error);
|
|
489
|
+
})];
|
|
505
490
|
});
|
|
506
491
|
});
|
|
507
492
|
}
|
|
508
|
-
function newBid(vaultIndex, size, token, timeOracle) {
|
|
493
|
+
function newBid(typeArgument, vaultIndex, size, token, timeOracle) {
|
|
509
494
|
return __awaiter(this, void 0, void 0, function () {
|
|
510
|
-
var
|
|
495
|
+
var _this = this;
|
|
511
496
|
return __generator(this, function (_a) {
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
497
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
498
|
+
var newBidTx, e_9;
|
|
499
|
+
return __generator(this, function (_a) {
|
|
500
|
+
switch (_a.label) {
|
|
501
|
+
case 0:
|
|
502
|
+
_a.trys.push([0, 3, , 4]);
|
|
503
|
+
return [4 /*yield*/, (0, getNewBidTx_1.getNewBidTx)(constants_1.COVERED_CALL_PACKAGE, constants_1.COVERED_CALL_REGISTRY, typeArgument, vaultIndex, size, token, timeOracle)];
|
|
504
|
+
case 1:
|
|
505
|
+
newBidTx = _a.sent();
|
|
506
|
+
return [4 /*yield*/, signer.executeMoveCall(newBidTx)];
|
|
507
|
+
case 2:
|
|
508
|
+
_a.sent();
|
|
509
|
+
console.log("new bid successfully ");
|
|
510
|
+
resolve(null);
|
|
511
|
+
return [3 /*break*/, 4];
|
|
512
|
+
case 3:
|
|
513
|
+
e_9 = _a.sent();
|
|
514
|
+
console.error(e_9);
|
|
515
|
+
return [3 /*break*/, 4];
|
|
516
|
+
case 4: return [2 /*return*/];
|
|
517
|
+
}
|
|
518
|
+
});
|
|
519
|
+
}); }).catch(function (error) {
|
|
520
|
+
console.error(error);
|
|
521
|
+
})];
|
|
521
522
|
});
|
|
522
523
|
});
|
|
523
524
|
}
|
|
524
|
-
function delivery(vaultIndex, sellSize, timeOracle) {
|
|
525
|
+
function delivery(typeArgument, vaultIndex, sellSize, timeOracle) {
|
|
525
526
|
return __awaiter(this, void 0, void 0, function () {
|
|
526
|
-
var
|
|
527
|
+
var _this = this;
|
|
527
528
|
return __generator(this, function (_a) {
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
529
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
530
|
+
var deliveryTx, e_10;
|
|
531
|
+
return __generator(this, function (_a) {
|
|
532
|
+
switch (_a.label) {
|
|
533
|
+
case 0:
|
|
534
|
+
_a.trys.push([0, 3, , 4]);
|
|
535
|
+
return [4 /*yield*/, (0, getDeliveryTx_1.getDeliveryTx)(constants_1.COVERED_CALL_PACKAGE, constants_1.COVERED_CALL_MANAGER, constants_1.COVERED_CALL_REGISTRY, typeArgument, vaultIndex, sellSize, timeOracle)];
|
|
536
|
+
case 1:
|
|
537
|
+
deliveryTx = _a.sent();
|
|
538
|
+
return [4 /*yield*/, signer.executeMoveCall(deliveryTx)];
|
|
539
|
+
case 2:
|
|
540
|
+
_a.sent();
|
|
541
|
+
console.log("delivery successfully");
|
|
542
|
+
resolve(null);
|
|
543
|
+
return [3 /*break*/, 4];
|
|
544
|
+
case 3:
|
|
545
|
+
e_10 = _a.sent();
|
|
546
|
+
console.error("err in delivery");
|
|
547
|
+
reject();
|
|
548
|
+
return [3 /*break*/, 4];
|
|
549
|
+
case 4: return [2 /*return*/];
|
|
550
|
+
}
|
|
551
|
+
});
|
|
552
|
+
}); }).catch(function (error) {
|
|
553
|
+
console.error(error);
|
|
554
|
+
})];
|
|
537
555
|
});
|
|
538
556
|
});
|
|
539
557
|
}
|
|
540
|
-
function updatePayoffConfig(vaultIndex, price, premiumRoi) {
|
|
558
|
+
function updatePayoffConfig(typeArgument, vaultIndex, price, premiumRoi, exposureRatio) {
|
|
541
559
|
return __awaiter(this, void 0, void 0, function () {
|
|
542
|
-
var
|
|
560
|
+
var _this = this;
|
|
543
561
|
return __generator(this, function (_a) {
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
562
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
563
|
+
var updatePayoffConfigTx, e_11;
|
|
564
|
+
return __generator(this, function (_a) {
|
|
565
|
+
switch (_a.label) {
|
|
566
|
+
case 0:
|
|
567
|
+
_a.trys.push([0, 3, , 4]);
|
|
568
|
+
return [4 /*yield*/, (0, getUpdatePayoffConfigTx_1.getUpdatePayoffConfigTx)(constants_1.COVERED_CALL_PACKAGE, constants_1.COVERED_CALL_REGISTRY, typeArgument, constants_1.COVERED_CALL_MANAGER, vaultIndex, price, premiumRoi, exposureRatio)];
|
|
569
|
+
case 1:
|
|
570
|
+
updatePayoffConfigTx = _a.sent();
|
|
571
|
+
return [4 /*yield*/, signer.executeMoveCall(updatePayoffConfigTx)];
|
|
572
|
+
case 2:
|
|
573
|
+
_a.sent();
|
|
574
|
+
console.log("update payoff config successfully");
|
|
575
|
+
resolve(null);
|
|
576
|
+
return [3 /*break*/, 4];
|
|
577
|
+
case 3:
|
|
578
|
+
e_11 = _a.sent();
|
|
579
|
+
console.error(e_11);
|
|
580
|
+
reject();
|
|
581
|
+
return [3 /*break*/, 4];
|
|
582
|
+
case 4: return [2 /*return*/];
|
|
583
|
+
}
|
|
584
|
+
});
|
|
585
|
+
}); }).catch(function (error) {
|
|
586
|
+
console.error(error);
|
|
587
|
+
})];
|
|
588
|
+
});
|
|
589
|
+
});
|
|
590
|
+
}
|
|
591
|
+
function settle(typeArgument, vaultIndex, priceOracle, timeOracle) {
|
|
592
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
593
|
+
var _this = this;
|
|
594
|
+
return __generator(this, function (_a) {
|
|
595
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
596
|
+
var settleTx, e_12;
|
|
597
|
+
return __generator(this, function (_a) {
|
|
598
|
+
switch (_a.label) {
|
|
599
|
+
case 0:
|
|
600
|
+
_a.trys.push([0, 3, , 4]);
|
|
601
|
+
return [4 /*yield*/, (0, getSettleTx_1.getSettleTx)(constants_1.COVERED_CALL_PACKAGE, constants_1.COVERED_CALL_REGISTRY, typeArgument, constants_1.COVERED_CALL_MANAGER, vaultIndex, priceOracle, timeOracle)];
|
|
602
|
+
case 1:
|
|
603
|
+
settleTx = _a.sent();
|
|
604
|
+
return [4 /*yield*/, signer.executeMoveCall(settleTx)];
|
|
605
|
+
case 2:
|
|
606
|
+
_a.sent();
|
|
607
|
+
console.log("settle successfully");
|
|
608
|
+
resolve(null);
|
|
609
|
+
return [3 /*break*/, 4];
|
|
610
|
+
case 3:
|
|
611
|
+
e_12 = _a.sent();
|
|
612
|
+
console.error(e_12);
|
|
613
|
+
reject();
|
|
614
|
+
return [3 /*break*/, 4];
|
|
615
|
+
case 4: return [2 /*return*/];
|
|
616
|
+
}
|
|
617
|
+
});
|
|
618
|
+
}); }).catch(function (error) {
|
|
619
|
+
console.error(error);
|
|
620
|
+
})];
|
|
553
621
|
});
|
|
554
622
|
});
|
|
555
623
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function createTimeOracle(): Promise<[string, string]>;
|