@typus/typus-sdk 0.1.8 → 0.1.9
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/constants.d.ts +5 -2
- package/lib/constants.js +7 -5
- package/lib/scripts/coveredCall/getClaimAllTx.d.ts +1 -0
- package/lib/scripts/coveredCall/getClaimAllTx.js +56 -0
- package/lib/scripts/coveredCall/getClaimTx.d.ts +1 -0
- package/lib/scripts/coveredCall/getClaimTx.js +57 -0
- package/lib/scripts/coveredCall/getNewAuctionWithNextCoveredCallVaultTx.js +2 -4
- package/lib/scripts/coveredCall/getNewCoveredCallVaultTx.js +2 -5
- package/lib/scripts/coveredCall/getNewManagerTx.d.ts +1 -0
- package/lib/scripts/coveredCall/getNewManagerTx.js +55 -0
- package/lib/scripts/coveredCall/getRemoveManagerTx.d.ts +1 -0
- package/lib/scripts/coveredCall/getRemoveManagerTx.js +54 -0
- package/lib/scripts/coveredCall/getRollOverTx.d.ts +1 -0
- package/lib/scripts/coveredCall/getRollOverTx.js +55 -0
- package/lib/scripts/coveredCall/getSettleTx.d.ts +1 -0
- package/lib/scripts/coveredCall/getSettleTx.js +57 -0
- package/lib/scripts/coveredCall/getSettleWithRollOverTx.d.ts +1 -0
- package/lib/scripts/coveredCall/getSettleWithRollOverTx.js +57 -0
- package/lib/scripts/coveredCall/getUpdatePayoffConfigTx.d.ts +1 -0
- package/lib/scripts/coveredCall/getUpdatePayoffConfigTx.js +57 -0
- package/lib/scripts/getMintTx.js +1 -1
- package/lib/scripts/getNewOracleTx.js +1 -1
- package/lib/scripts/getNewTimeOracleTx.d.ts +1 -0
- package/lib/scripts/getNewTimeOracleTx.js +54 -0
- package/lib/scripts/getSubVault.d.ts +0 -1
- package/lib/scripts/getSubVault.js +5 -51
- package/lib/scripts/getUpdateTimeOracleTx.d.ts +1 -0
- package/lib/scripts/getUpdateTimeOracleTx.js +59 -0
- package/lib/test/testMint.js +11 -9
- package/lib/test/testNewVault.js +7 -9
- package/lib/test/testSettle.d.ts +1 -0
- package/lib/test/testSettle.js +437 -0
- package/lib/utils/coveredCall/getClaimAllTx.d.ts +1 -0
- package/lib/utils/coveredCall/getClaimAllTx.js +60 -0
- package/lib/utils/coveredCall/getClaimTx.d.ts +1 -0
- package/lib/utils/coveredCall/getClaimTx.js +61 -0
- package/lib/utils/coveredCall/getNewAuctionWithNextCoveredCallVaultTx.d.ts +1 -1
- package/lib/utils/coveredCall/getNewAuctionWithNextCoveredCallVaultTx.js +1 -2
- package/lib/utils/coveredCall/getNewCoveredCallVaultTx.d.ts +1 -1
- package/lib/utils/coveredCall/getNewCoveredCallVaultTx.js +1 -3
- package/lib/utils/coveredCall/getNewManagerTx.d.ts +1 -0
- package/lib/utils/coveredCall/getNewManagerTx.js +59 -0
- package/lib/utils/coveredCall/getRemoveManagerTx.d.ts +1 -0
- package/lib/utils/coveredCall/getRemoveManagerTx.js +58 -0
- package/lib/utils/coveredCall/getRollOverTx.d.ts +1 -0
- package/lib/utils/coveredCall/getRollOverTx.js +60 -0
- package/lib/utils/coveredCall/getSettleTx.d.ts +1 -0
- package/lib/utils/coveredCall/getSettleTx.js +62 -0
- package/lib/utils/coveredCall/getSettleWithRollOverTx.d.ts +1 -0
- package/lib/utils/coveredCall/getSettleWithRollOverTx.js +62 -0
- package/lib/utils/coveredCall/getUpdatePayoffConfigTx.d.ts +1 -0
- package/lib/utils/coveredCall/getUpdatePayoffConfigTx.js +62 -0
- package/lib/utils/getNewTimeOracleTx.d.ts +1 -0
- package/lib/utils/getNewTimeOracleTx.js +56 -0
- package/lib/utils/getSubVault.d.ts +0 -3
- package/lib/utils/getSubVault.js +51 -137
- package/lib/utils/getUpdateTimeOracleTx.d.ts +1 -0
- package/lib/utils/getUpdateTimeOracleTx.js +60 -0
- package/lib/utils/getVaultIndexInRegistry.d.ts +1 -0
- package/lib/utils/getVaultIndexInRegistry.js +56 -0
- package/package.json +1 -1
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
39
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
40
|
+
if (!m) return o;
|
|
41
|
+
var i = m.call(o), r, ar = [], e;
|
|
42
|
+
try {
|
|
43
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
44
|
+
}
|
|
45
|
+
catch (error) { e = { error: error }; }
|
|
46
|
+
finally {
|
|
47
|
+
try {
|
|
48
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
49
|
+
}
|
|
50
|
+
finally { if (e) throw e.error; }
|
|
51
|
+
}
|
|
52
|
+
return ar;
|
|
53
|
+
};
|
|
54
|
+
var __values = (this && this.__values) || function(o) {
|
|
55
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
56
|
+
if (m) return m.call(o);
|
|
57
|
+
if (o && typeof o.length === "number") return {
|
|
58
|
+
next: function () {
|
|
59
|
+
if (o && i >= o.length) o = void 0;
|
|
60
|
+
return { value: o && o[i++], done: !o };
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
64
|
+
};
|
|
65
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
66
|
+
var getNewOracleTx_1 = require("../utils/getNewOracleTx");
|
|
67
|
+
var getNewTimeOracleTx_1 = require("../utils/getNewTimeOracleTx");
|
|
68
|
+
var getUpdateOracleTx_1 = require("../utils/getUpdateOracleTx");
|
|
69
|
+
var getNewCoveredCallVaultTx_1 = require("../utils/coveredCall/getNewCoveredCallVaultTx");
|
|
70
|
+
var getDepositTx_1 = require("../utils/coveredCall/getDepositTx");
|
|
71
|
+
var constants_1 = require("../constants");
|
|
72
|
+
var sui_js_1 = require("@mysten/sui.js");
|
|
73
|
+
var getTypeArgumentFromToken_1 = require("../utils/getTypeArgumentFromToken");
|
|
74
|
+
var getUpdateTimeOracleTx_1 = require("../utils/getUpdateTimeOracleTx");
|
|
75
|
+
var provider = new sui_js_1.JsonRpcProvider(sui_js_1.Network.DEVNET); //for read only operations
|
|
76
|
+
var keypair = sui_js_1.Ed25519Keypair.deriveKeypair(constants_1.TEST_MNEMONIC);
|
|
77
|
+
var signer = new sui_js_1.RawSigner(keypair, provider);
|
|
78
|
+
var token = "0x82416a9dacea43afa6570863f1bcd3e55e75448e"; // minted token
|
|
79
|
+
var depositAmount = 5;
|
|
80
|
+
var decimal = 8;
|
|
81
|
+
var strike = 2000;
|
|
82
|
+
var isRolling = true;
|
|
83
|
+
var expirationTsMs1 = 1000000;
|
|
84
|
+
var expirationTsMs2 = 2000000;
|
|
85
|
+
(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
86
|
+
var typeArgument, _a, priceOracle, priceOracleManager, _b, timeOracle, timeOracleManager, price, ts, vaultIndex, startAuctionTsMs;
|
|
87
|
+
return __generator(this, function (_c) {
|
|
88
|
+
switch (_c.label) {
|
|
89
|
+
case 0: return [4 /*yield*/, (0, getTypeArgumentFromToken_1.getTypeArgumentFromToken)(token)
|
|
90
|
+
//create price oracle and time oracle
|
|
91
|
+
//DONE
|
|
92
|
+
];
|
|
93
|
+
case 1:
|
|
94
|
+
typeArgument = _c.sent();
|
|
95
|
+
return [4 /*yield*/, createPriceOracle(typeArgument)];
|
|
96
|
+
case 2:
|
|
97
|
+
_a = __read.apply(void 0, [_c.sent(), 2]), priceOracle = _a[0], priceOracleManager = _a[1];
|
|
98
|
+
return [4 /*yield*/, createTimeOracle()
|
|
99
|
+
// update price oracle and time oracle
|
|
100
|
+
//DONE
|
|
101
|
+
];
|
|
102
|
+
case 3:
|
|
103
|
+
_b = __read.apply(void 0, [_c.sent()
|
|
104
|
+
// update price oracle and time oracle
|
|
105
|
+
//DONE
|
|
106
|
+
, 2]), timeOracle = _b[0], timeOracleManager = _b[1];
|
|
107
|
+
price = 10000000000;
|
|
108
|
+
ts = 0 //ms
|
|
109
|
+
;
|
|
110
|
+
return [4 /*yield*/, updatePriceOracle(priceOracle, priceOracleManager, typeArgument, price, ts)
|
|
111
|
+
// await updateTimeOracle(timeOracle, timeOracleManager, ts)
|
|
112
|
+
//create new vault
|
|
113
|
+
//DONE
|
|
114
|
+
];
|
|
115
|
+
case 4:
|
|
116
|
+
_c.sent();
|
|
117
|
+
// await updateTimeOracle(timeOracle, timeOracleManager, ts)
|
|
118
|
+
//create new vault
|
|
119
|
+
//DONE
|
|
120
|
+
return [4 /*yield*/, createNewVault(typeArgument, priceOracle)
|
|
121
|
+
//deposit to new vault
|
|
122
|
+
//DONE
|
|
123
|
+
];
|
|
124
|
+
case 5:
|
|
125
|
+
// await updateTimeOracle(timeOracle, timeOracleManager, ts)
|
|
126
|
+
//create new vault
|
|
127
|
+
//DONE
|
|
128
|
+
_c.sent();
|
|
129
|
+
return [4 /*yield*/, getNewestVaultIndex(constants_1.COVERED_CALL_REGISTRY)];
|
|
130
|
+
case 6:
|
|
131
|
+
vaultIndex = _c.sent();
|
|
132
|
+
return [4 /*yield*/, depositToVault(typeArgument, vaultIndex, depositAmount)
|
|
133
|
+
//================================start auction================================
|
|
134
|
+
//update price oracle and time oracle
|
|
135
|
+
//DONE
|
|
136
|
+
];
|
|
137
|
+
case 7:
|
|
138
|
+
_c.sent();
|
|
139
|
+
startAuctionTsMs = expirationTsMs1 - 1000;
|
|
140
|
+
return [4 /*yield*/, updatePriceOracle(priceOracle, priceOracleManager, typeArgument, price, startAuctionTsMs)];
|
|
141
|
+
case 8:
|
|
142
|
+
_c.sent();
|
|
143
|
+
return [4 /*yield*/, updateTimeOracle(timeOracle, timeOracleManager, startAuctionTsMs)
|
|
144
|
+
//new_auction_with_next_covered_call_vault
|
|
145
|
+
//TODO
|
|
146
|
+
// let endAuctionTsMs = startAuctionTsMs + 500
|
|
147
|
+
// let decaySpeed = 2;
|
|
148
|
+
// await createNewAuctionWithNextCoveredCallVault(vaultIndex, startAuctionTsMs, endAuctionTsMs,decaySpeed)
|
|
149
|
+
//update time oracle
|
|
150
|
+
//TODO
|
|
151
|
+
//new bid
|
|
152
|
+
//TODO
|
|
153
|
+
//update time oracle
|
|
154
|
+
//TODO
|
|
155
|
+
//delivery
|
|
156
|
+
//TODO
|
|
157
|
+
//================================end auction================================
|
|
158
|
+
//update price oracle and time oracle
|
|
159
|
+
//TODO
|
|
160
|
+
//update payoff config
|
|
161
|
+
//TODO
|
|
162
|
+
//deposit to another vault
|
|
163
|
+
//TODO
|
|
164
|
+
//update price oracle and time oracle
|
|
165
|
+
//TODO
|
|
166
|
+
//settle
|
|
167
|
+
//TODO
|
|
168
|
+
];
|
|
169
|
+
case 9:
|
|
170
|
+
_c.sent();
|
|
171
|
+
return [2 /*return*/];
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
}); })();
|
|
175
|
+
function createPriceOracle(typeArgument) {
|
|
176
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
177
|
+
var _this = this;
|
|
178
|
+
return __generator(this, function (_a) {
|
|
179
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
180
|
+
var newOracleTx, moveCallTxn, digest, txn, priceOracle, managerCap, e_1;
|
|
181
|
+
return __generator(this, function (_a) {
|
|
182
|
+
switch (_a.label) {
|
|
183
|
+
case 0:
|
|
184
|
+
_a.trys.push([0, 4, , 5]);
|
|
185
|
+
console.log("create new price oracle...");
|
|
186
|
+
return [4 /*yield*/, (0, getNewOracleTx_1.getNewOracleTx)(constants_1.ORACLE_PACKAGE, typeArgument, decimal)];
|
|
187
|
+
case 1:
|
|
188
|
+
newOracleTx = _a.sent();
|
|
189
|
+
return [4 /*yield*/, signer.executeMoveCall(newOracleTx)];
|
|
190
|
+
case 2:
|
|
191
|
+
moveCallTxn = _a.sent();
|
|
192
|
+
digest = moveCallTxn.EffectsCert.certificate.transactionDigest;
|
|
193
|
+
return [4 /*yield*/, provider.getTransactionWithEffects(digest)];
|
|
194
|
+
case 3:
|
|
195
|
+
txn = _a.sent();
|
|
196
|
+
priceOracle = void 0;
|
|
197
|
+
managerCap = void 0;
|
|
198
|
+
if (txn.effects.created[0].owner["AddressOwner"] == undefined) {
|
|
199
|
+
priceOracle = txn.effects.created[0].reference.objectId;
|
|
200
|
+
managerCap = txn.effects.created[1].reference.objectId;
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
priceOracle = txn.effects.created[1].reference.objectId;
|
|
204
|
+
managerCap = txn.effects.created[0].reference.objectId;
|
|
205
|
+
}
|
|
206
|
+
resolve([priceOracle, managerCap]);
|
|
207
|
+
return [3 /*break*/, 5];
|
|
208
|
+
case 4:
|
|
209
|
+
e_1 = _a.sent();
|
|
210
|
+
console.error("err in createPriceOracle");
|
|
211
|
+
reject(e_1);
|
|
212
|
+
return [3 /*break*/, 5];
|
|
213
|
+
case 5: return [2 /*return*/];
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
}); })];
|
|
217
|
+
});
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
function createTimeOracle() {
|
|
221
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
222
|
+
var _this = this;
|
|
223
|
+
return __generator(this, function (_a) {
|
|
224
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
225
|
+
var newTimeOracleTx, moveCallTxn, digest, txn, timeOracle, managerCap, e_2;
|
|
226
|
+
return __generator(this, function (_a) {
|
|
227
|
+
switch (_a.label) {
|
|
228
|
+
case 0:
|
|
229
|
+
_a.trys.push([0, 4, , 5]);
|
|
230
|
+
console.log("create new time oracle...");
|
|
231
|
+
return [4 /*yield*/, (0, getNewTimeOracleTx_1.getNewTimeOracleTx)(constants_1.ORACLE_PACKAGE)];
|
|
232
|
+
case 1:
|
|
233
|
+
newTimeOracleTx = _a.sent();
|
|
234
|
+
return [4 /*yield*/, signer.executeMoveCall(newTimeOracleTx)];
|
|
235
|
+
case 2:
|
|
236
|
+
moveCallTxn = _a.sent();
|
|
237
|
+
digest = moveCallTxn.EffectsCert.certificate.transactionDigest;
|
|
238
|
+
return [4 /*yield*/, provider.getTransactionWithEffects(digest)];
|
|
239
|
+
case 3:
|
|
240
|
+
txn = _a.sent();
|
|
241
|
+
timeOracle = void 0;
|
|
242
|
+
managerCap = void 0;
|
|
243
|
+
if (txn.effects.created[0].owner["AddressOwner"] == undefined) {
|
|
244
|
+
timeOracle = txn.effects.created[0].reference.objectId;
|
|
245
|
+
managerCap = txn.effects.created[1].reference.objectId;
|
|
246
|
+
}
|
|
247
|
+
else {
|
|
248
|
+
timeOracle = txn.effects.created[1].reference.objectId;
|
|
249
|
+
managerCap = txn.effects.created[0].reference.objectId;
|
|
250
|
+
}
|
|
251
|
+
resolve([timeOracle, managerCap]);
|
|
252
|
+
return [3 /*break*/, 5];
|
|
253
|
+
case 4:
|
|
254
|
+
e_2 = _a.sent();
|
|
255
|
+
console.log("err in createTimeOracle");
|
|
256
|
+
reject(e_2);
|
|
257
|
+
return [3 /*break*/, 5];
|
|
258
|
+
case 5: return [2 /*return*/];
|
|
259
|
+
}
|
|
260
|
+
});
|
|
261
|
+
}); })];
|
|
262
|
+
});
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
function updatePriceOracle(priceOracle, priceOracleManager, typeArgument, price, ts) {
|
|
266
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
267
|
+
var _this = this;
|
|
268
|
+
return __generator(this, function (_a) {
|
|
269
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
270
|
+
var updateOracleTx, e_3;
|
|
271
|
+
return __generator(this, function (_a) {
|
|
272
|
+
switch (_a.label) {
|
|
273
|
+
case 0:
|
|
274
|
+
_a.trys.push([0, 3, , 4]);
|
|
275
|
+
return [4 /*yield*/, (0, getUpdateOracleTx_1.getUpdateOracleTx)(constants_1.ORACLE_PACKAGE, typeArgument, priceOracle, priceOracleManager, price, ts)];
|
|
276
|
+
case 1:
|
|
277
|
+
updateOracleTx = _a.sent();
|
|
278
|
+
return [4 /*yield*/, signer.executeMoveCall(updateOracleTx)];
|
|
279
|
+
case 2:
|
|
280
|
+
_a.sent();
|
|
281
|
+
return [3 /*break*/, 4];
|
|
282
|
+
case 3:
|
|
283
|
+
e_3 = _a.sent();
|
|
284
|
+
console.error("err in updatePriceOracle");
|
|
285
|
+
reject();
|
|
286
|
+
return [3 /*break*/, 4];
|
|
287
|
+
case 4: return [2 /*return*/];
|
|
288
|
+
}
|
|
289
|
+
});
|
|
290
|
+
}); })];
|
|
291
|
+
});
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
function updateTimeOracle(timeOracle, managerCap, ts) {
|
|
295
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
296
|
+
var _this = this;
|
|
297
|
+
return __generator(this, function (_a) {
|
|
298
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
299
|
+
var updateTimeOracleTx, e_4;
|
|
300
|
+
return __generator(this, function (_a) {
|
|
301
|
+
switch (_a.label) {
|
|
302
|
+
case 0:
|
|
303
|
+
_a.trys.push([0, 3, , 4]);
|
|
304
|
+
return [4 /*yield*/, (0, getUpdateTimeOracleTx_1.getUpdateTimeOracleTx)(constants_1.ORACLE_PACKAGE, timeOracle, managerCap, ts)];
|
|
305
|
+
case 1:
|
|
306
|
+
updateTimeOracleTx = _a.sent();
|
|
307
|
+
return [4 /*yield*/, signer.executeMoveCall(updateTimeOracleTx)];
|
|
308
|
+
case 2:
|
|
309
|
+
_a.sent();
|
|
310
|
+
return [3 /*break*/, 4];
|
|
311
|
+
case 3:
|
|
312
|
+
e_4 = _a.sent();
|
|
313
|
+
console.error("err in updateTimeOracle");
|
|
314
|
+
reject();
|
|
315
|
+
return [3 /*break*/, 4];
|
|
316
|
+
case 4: return [2 /*return*/];
|
|
317
|
+
}
|
|
318
|
+
});
|
|
319
|
+
}); })];
|
|
320
|
+
});
|
|
321
|
+
});
|
|
322
|
+
}
|
|
323
|
+
function createNewVault(typeArgument, priceOracle) {
|
|
324
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
325
|
+
var _this = this;
|
|
326
|
+
return __generator(this, function (_a) {
|
|
327
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
328
|
+
var newCoveredCallVaultTx, moveCallTxn, e_5;
|
|
329
|
+
return __generator(this, function (_a) {
|
|
330
|
+
switch (_a.label) {
|
|
331
|
+
case 0:
|
|
332
|
+
_a.trys.push([0, 4, , 5]);
|
|
333
|
+
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)];
|
|
334
|
+
case 1:
|
|
335
|
+
newCoveredCallVaultTx = _a.sent();
|
|
336
|
+
return [4 /*yield*/, signer.executeMoveCall(newCoveredCallVaultTx)];
|
|
337
|
+
case 2:
|
|
338
|
+
moveCallTxn = _a.sent();
|
|
339
|
+
return [4 /*yield*/, checkData(moveCallTxn)];
|
|
340
|
+
case 3:
|
|
341
|
+
_a.sent();
|
|
342
|
+
return [3 /*break*/, 5];
|
|
343
|
+
case 4:
|
|
344
|
+
e_5 = _a.sent();
|
|
345
|
+
console.error("err in createNewVault");
|
|
346
|
+
reject();
|
|
347
|
+
return [3 /*break*/, 5];
|
|
348
|
+
case 5: return [2 /*return*/];
|
|
349
|
+
}
|
|
350
|
+
});
|
|
351
|
+
}); })];
|
|
352
|
+
});
|
|
353
|
+
});
|
|
354
|
+
}
|
|
355
|
+
function checkData(moveCallTxn) {
|
|
356
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
357
|
+
var txn, _a, _b, obj, e_6;
|
|
358
|
+
var e_7, _c;
|
|
359
|
+
return __generator(this, function (_d) {
|
|
360
|
+
switch (_d.label) {
|
|
361
|
+
case 0:
|
|
362
|
+
_d.trys.push([0, 2, , 3]);
|
|
363
|
+
return [4 /*yield*/, provider.getTransactionWithEffects(
|
|
364
|
+
//@ts-ignore
|
|
365
|
+
moveCallTxn.EffectsCert.certificate.transactionDigest)];
|
|
366
|
+
case 1:
|
|
367
|
+
txn = _d.sent();
|
|
368
|
+
try {
|
|
369
|
+
for (_a = __values(txn.effects.created), _b = _a.next(); !_b.done; _b = _a.next()) {
|
|
370
|
+
obj = _b.value;
|
|
371
|
+
//@ts-ignore
|
|
372
|
+
if (obj.owner.ObjectOwner == constants_1.COVERED_CALL_REGISTRY)
|
|
373
|
+
console.log("new covered call vault: " + obj.reference.objectId);
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
catch (e_7_1) { e_7 = { error: e_7_1 }; }
|
|
377
|
+
finally {
|
|
378
|
+
try {
|
|
379
|
+
if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
|
|
380
|
+
}
|
|
381
|
+
finally { if (e_7) throw e_7.error; }
|
|
382
|
+
}
|
|
383
|
+
return [3 /*break*/, 3];
|
|
384
|
+
case 2:
|
|
385
|
+
e_6 = _d.sent();
|
|
386
|
+
console.error(e_6);
|
|
387
|
+
return [3 /*break*/, 3];
|
|
388
|
+
case 3: return [2 /*return*/];
|
|
389
|
+
}
|
|
390
|
+
});
|
|
391
|
+
});
|
|
392
|
+
}
|
|
393
|
+
function getNewestVaultIndex(registry) {
|
|
394
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
395
|
+
var tmp, numOfVault;
|
|
396
|
+
return __generator(this, function (_a) {
|
|
397
|
+
switch (_a.label) {
|
|
398
|
+
case 0: return [4 /*yield*/, provider.getObject(registry)
|
|
399
|
+
//@ts-ignore
|
|
400
|
+
];
|
|
401
|
+
case 1:
|
|
402
|
+
tmp = _a.sent();
|
|
403
|
+
numOfVault = tmp.details.data.fields.num_of_vault;
|
|
404
|
+
return [2 /*return*/, numOfVault - 1];
|
|
405
|
+
}
|
|
406
|
+
});
|
|
407
|
+
});
|
|
408
|
+
}
|
|
409
|
+
function depositToVault(typeArgument, vaultIndex, depositAmount) {
|
|
410
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
411
|
+
var _this = this;
|
|
412
|
+
return __generator(this, function (_a) {
|
|
413
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
414
|
+
var depositTx, e_8;
|
|
415
|
+
return __generator(this, function (_a) {
|
|
416
|
+
switch (_a.label) {
|
|
417
|
+
case 0:
|
|
418
|
+
_a.trys.push([0, 3, , 4]);
|
|
419
|
+
return [4 /*yield*/, (0, getDepositTx_1.getDepositTx)(constants_1.COVERED_CALL_PACKAGE, constants_1.COVERED_CALL_REGISTRY, typeArgument, vaultIndex, isRolling, token, depositAmount)];
|
|
420
|
+
case 1:
|
|
421
|
+
depositTx = _a.sent();
|
|
422
|
+
return [4 /*yield*/, signer.executeMoveCall(depositTx)];
|
|
423
|
+
case 2:
|
|
424
|
+
_a.sent();
|
|
425
|
+
return [3 /*break*/, 4];
|
|
426
|
+
case 3:
|
|
427
|
+
e_8 = _a.sent();
|
|
428
|
+
console.error("err in depositToVault");
|
|
429
|
+
reject();
|
|
430
|
+
return [3 /*break*/, 4];
|
|
431
|
+
case 4: return [2 /*return*/];
|
|
432
|
+
}
|
|
433
|
+
});
|
|
434
|
+
}); })];
|
|
435
|
+
});
|
|
436
|
+
});
|
|
437
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getClaimAllTx(packageId: string, registry: string, typeArgument: string, index: number, isRolling: boolean): Promise<any>;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.getClaimAllTx = void 0;
|
|
40
|
+
function getClaimAllTx(packageId, registry, typeArgument, index, isRolling) {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
42
|
+
var tx;
|
|
43
|
+
return __generator(this, function (_a) {
|
|
44
|
+
tx = {
|
|
45
|
+
packageObjectId: packageId,
|
|
46
|
+
module: 'covered_call',
|
|
47
|
+
function: 'claim_all',
|
|
48
|
+
typeArguments: [typeArgument],
|
|
49
|
+
arguments: [
|
|
50
|
+
registry,
|
|
51
|
+
index,
|
|
52
|
+
isRolling,
|
|
53
|
+
],
|
|
54
|
+
gasBudget: 10000,
|
|
55
|
+
};
|
|
56
|
+
return [2 /*return*/, tx];
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
exports.getClaimAllTx = getClaimAllTx;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getClaimTx(packageId: string, registry: string, typeArgument: string, index: number, amount: number, isRolling: boolean): Promise<any>;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.getClaimTx = void 0;
|
|
40
|
+
function getClaimTx(packageId, registry, typeArgument, index, amount, isRolling) {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
42
|
+
var tx;
|
|
43
|
+
return __generator(this, function (_a) {
|
|
44
|
+
tx = {
|
|
45
|
+
packageObjectId: packageId,
|
|
46
|
+
module: 'covered_call',
|
|
47
|
+
function: 'claim',
|
|
48
|
+
typeArguments: [typeArgument],
|
|
49
|
+
arguments: [
|
|
50
|
+
registry,
|
|
51
|
+
index,
|
|
52
|
+
amount,
|
|
53
|
+
isRolling,
|
|
54
|
+
],
|
|
55
|
+
gasBudget: 10000,
|
|
56
|
+
};
|
|
57
|
+
return [2 /*return*/, tx];
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
exports.getClaimTx = getClaimTx;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function getNewAuctionWithNextCoveredCallVaultTx(packageId: string, managerCap: string, registry: string, typeArgument: string, index: number, start: number, end: number, decay: number, initialPrice: number, finalPrice: number, expiration: number, assetName: string, strikeOtmPct: number
|
|
1
|
+
export declare function getNewAuctionWithNextCoveredCallVaultTx(packageId: string, managerCap: string, registry: string, typeArgument: string, index: number, start: number, end: number, decay: number, initialPrice: number, finalPrice: number, expiration: number, assetName: string, strikeOtmPct: number): Promise<any>;
|
|
@@ -37,7 +37,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.getNewAuctionWithNextCoveredCallVaultTx = void 0;
|
|
40
|
-
function getNewAuctionWithNextCoveredCallVaultTx(packageId, managerCap, registry, typeArgument, index, start, end, decay, initialPrice, finalPrice, expiration, assetName, strikeOtmPct
|
|
40
|
+
function getNewAuctionWithNextCoveredCallVaultTx(packageId, managerCap, registry, typeArgument, index, start, end, decay, initialPrice, finalPrice, expiration, assetName, strikeOtmPct) {
|
|
41
41
|
return __awaiter(this, void 0, void 0, function () {
|
|
42
42
|
var tx;
|
|
43
43
|
return __generator(this, function (_a) {
|
|
@@ -58,7 +58,6 @@ function getNewAuctionWithNextCoveredCallVaultTx(packageId, managerCap, registry
|
|
|
58
58
|
expiration,
|
|
59
59
|
assetName,
|
|
60
60
|
strikeOtmPct,
|
|
61
|
-
price_oracle,
|
|
62
61
|
],
|
|
63
62
|
gasBudget: 10000,
|
|
64
63
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function getNewCoveredCallVaultTx(packageId: string, registry: string, typeArgument: string, managerCap: string, expiration: number,
|
|
1
|
+
export declare function getNewCoveredCallVaultTx(packageId: string, registry: string, typeArgument: string, managerCap: string, expiration: number, strike: number): Promise<any>;
|
|
@@ -37,7 +37,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.getNewCoveredCallVaultTx = void 0;
|
|
40
|
-
function getNewCoveredCallVaultTx(packageId, registry, typeArgument, managerCap, expiration,
|
|
40
|
+
function getNewCoveredCallVaultTx(packageId, registry, typeArgument, managerCap, expiration, strike) {
|
|
41
41
|
return __awaiter(this, void 0, void 0, function () {
|
|
42
42
|
var tx;
|
|
43
43
|
return __generator(this, function (_a) {
|
|
@@ -50,9 +50,7 @@ function getNewCoveredCallVaultTx(packageId, registry, typeArgument, managerCap,
|
|
|
50
50
|
managerCap,
|
|
51
51
|
registry,
|
|
52
52
|
expiration,
|
|
53
|
-
assetName,
|
|
54
53
|
strike,
|
|
55
|
-
priceOracle,
|
|
56
54
|
],
|
|
57
55
|
gasBudget: 10000,
|
|
58
56
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getNewManagerTx(packageId: string, managerCap: string, user: string): Promise<any>;
|