@typus/typus-perp-sdk 1.1.32-codegen-exp35 → 1.1.32-codegen-exp36
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.
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
import { Transaction } from "@mysten/sui/transactions";
|
|
1
|
+
import { Transaction, TransactionObjectArgument } from "@mysten/sui/transactions";
|
|
2
2
|
import { TOKEN } from "@typus/typus-sdk/dist/src/constants";
|
|
3
3
|
import { TypusClient } from "../../src/client";
|
|
4
|
+
export declare function splitBidReceiptTx(client: TypusClient, tx: Transaction, input: {
|
|
5
|
+
index: string;
|
|
6
|
+
receipts: TransactionObjectArgument[];
|
|
7
|
+
share?: string;
|
|
8
|
+
recipient: string;
|
|
9
|
+
}): import("@mysten/sui/transactions").TransactionResult;
|
|
4
10
|
export declare function createTradingOrderWithBidReceiptByAutoBid(client: TypusClient, tx: Transaction, input: {
|
|
5
11
|
perpIndex: string;
|
|
6
12
|
poolIndex: string;
|
|
@@ -12,6 +18,7 @@ export declare function createTradingOrderWithBidReceiptByAutoBid(client: TypusC
|
|
|
12
18
|
bToken: TOKEN;
|
|
13
19
|
signalIndex: string;
|
|
14
20
|
strategyIndex: string;
|
|
21
|
+
share?: string;
|
|
15
22
|
suiCoins?: string[];
|
|
16
23
|
}): Promise<Transaction>;
|
|
17
24
|
export declare function createTradingOrderWithBidReceipt(client: TypusClient, tx: Transaction, input: {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.splitBidReceiptTx = splitBidReceiptTx;
|
|
3
4
|
exports.createTradingOrderWithBidReceiptByAutoBid = createTradingOrderWithBidReceiptByAutoBid;
|
|
4
5
|
exports.createTradingOrderWithBidReceipt = createTradingOrderWithBidReceipt;
|
|
5
6
|
exports.reduceOptionCollateralPositionSize = reduceOptionCollateralPositionSize;
|
|
@@ -9,6 +10,32 @@ const constants_1 = require("@typus/typus-sdk/dist/src/constants");
|
|
|
9
10
|
const typus_dov_single_v2_1 = require("@typus/typus-sdk/dist/src/typus-dov-single-v2");
|
|
10
11
|
const user_entry_1 = require("@typus/typus-sdk/dist/src/auto-bid/user-entry");
|
|
11
12
|
const __1 = require("..");
|
|
13
|
+
function splitBidReceiptTx(client, tx, input) {
|
|
14
|
+
let result = tx.moveCall({
|
|
15
|
+
target: `${client.config.package.dovSingle}::tds_user_entry::simple_split_bid_receipt`,
|
|
16
|
+
typeArguments: [],
|
|
17
|
+
arguments: [
|
|
18
|
+
tx.object(client.config.registry.dov.dovSingle),
|
|
19
|
+
tx.pure.u64(input.index),
|
|
20
|
+
tx.makeMoveVec({
|
|
21
|
+
type: `${client.config.packageOrigin.framework}::vault::TypusBidReceipt`,
|
|
22
|
+
elements: input.receipts.map((receipt) => tx.object(receipt)),
|
|
23
|
+
}),
|
|
24
|
+
tx.pure.option("u64", input.share),
|
|
25
|
+
],
|
|
26
|
+
});
|
|
27
|
+
let unwrap0 = tx.moveCall({
|
|
28
|
+
target: `0x1::option::destroy_some`,
|
|
29
|
+
typeArguments: [`${client.config.packageOrigin.framework}::vault::TypusBidReceipt`],
|
|
30
|
+
arguments: [tx.object(result[0])],
|
|
31
|
+
});
|
|
32
|
+
tx.moveCall({
|
|
33
|
+
target: `${client.config.package.framework}::vault::transfer_bid_receipt`,
|
|
34
|
+
typeArguments: [],
|
|
35
|
+
arguments: [tx.object(result[1]), tx.pure.address(input.recipient)],
|
|
36
|
+
});
|
|
37
|
+
return unwrap0;
|
|
38
|
+
}
|
|
12
39
|
async function createTradingOrderWithBidReceiptByAutoBid(client, tx, input) {
|
|
13
40
|
// INPUTS
|
|
14
41
|
let TOKEN = input.cToken;
|
|
@@ -22,12 +49,23 @@ async function createTradingOrderWithBidReceiptByAutoBid(client, tx, input) {
|
|
|
22
49
|
for (let token of tokens) {
|
|
23
50
|
(0, utils_1.updateOracleWithPythUsd)(client.pythClient, tx, client.config.package.oracle, token);
|
|
24
51
|
}
|
|
25
|
-
let
|
|
52
|
+
let withdrawBidReceipt = (0, user_entry_1.getWithdrawBidReceiptTx)(client.config, tx, {
|
|
26
53
|
vaultIndex: input.dovIndex,
|
|
27
54
|
signalIndex: input.signalIndex,
|
|
28
55
|
strategyIndex: input.strategyIndex,
|
|
29
56
|
user: input.user,
|
|
30
57
|
});
|
|
58
|
+
let collateralBidReceipt = withdrawBidReceipt;
|
|
59
|
+
// split bid receipt
|
|
60
|
+
if (input.share) {
|
|
61
|
+
let splitBidReceipt = splitBidReceiptTx(client, tx, {
|
|
62
|
+
index: input.dovIndex,
|
|
63
|
+
receipts: [withdrawBidReceipt],
|
|
64
|
+
share: input.share, // if undefined, merge all receipts
|
|
65
|
+
recipient: input.user,
|
|
66
|
+
});
|
|
67
|
+
collateralBidReceipt = splitBidReceipt;
|
|
68
|
+
}
|
|
31
69
|
let cToken = constants_1.tokenType[__1.NETWORK][TOKEN];
|
|
32
70
|
let bToken = constants_1.tokenType[__1.NETWORK][input.bToken];
|
|
33
71
|
let baseToken = constants_1.tokenType[__1.NETWORK][BASE_TOKEN];
|