@haven-fi/solauto-sdk 1.0.206 → 1.0.208
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/dist/clients/solautoMarginfiClient.js +1 -1
- package/dist/transactions/transactionUtils.d.ts +3 -3
- package/dist/transactions/transactionUtils.d.ts.map +1 -1
- package/dist/transactions/transactionUtils.js +9 -9
- package/dist/utils/marginfiUtils.d.ts +5 -2
- package/dist/utils/marginfiUtils.d.ts.map +1 -1
- package/dist/utils/marginfiUtils.js +6 -3
- package/package.json +1 -2
- package/src/clients/solautoMarginfiClient.ts +1 -1
- package/src/transactions/transactionUtils.ts +13 -12
- package/src/utils/marginfiUtils.ts +8 -7
- package/tests/transactions/solautoMarginfi.ts +2 -10
|
@@ -429,7 +429,7 @@ class SolautoMarginfiClient extends solautoClient_1.SolautoClient {
|
|
|
429
429
|
if (state) {
|
|
430
430
|
return state;
|
|
431
431
|
}
|
|
432
|
-
const freshState = await (0, marginfiUtils_1.getMarginfiAccountPositionState)(this.umi, this.marginfiAccountPk, this.marginfiGroup, !this.selfManaged && this.solautoPositionData === null
|
|
432
|
+
const freshState = await (0, marginfiUtils_1.getMarginfiAccountPositionState)(this.umi, { pk: this.marginfiAccountPk }, this.marginfiGroup, !this.selfManaged && this.solautoPositionData === null
|
|
433
433
|
? { mint: this.supplyMint }
|
|
434
434
|
: undefined, !this.selfManaged && this.solautoPositionData === null
|
|
435
435
|
? { mint: this.debtMint }
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { TransactionBuilder
|
|
1
|
+
import { TransactionBuilder } from "@metaplex-foundation/umi";
|
|
2
2
|
import { PublicKey } from "@solana/web3.js";
|
|
3
|
-
import { ReferralState } from "../generated";
|
|
4
3
|
import { SolautoClient } from "../clients/solautoClient";
|
|
4
|
+
import { ReferralStateManager } from "../clients";
|
|
5
5
|
export declare function rebalanceChoresBefore(client: SolautoClient, tx: TransactionBuilder, accountsGettingCreated: string[]): Promise<TransactionBuilder>;
|
|
6
6
|
export declare function getTransactionChores(client: SolautoClient, tx: TransactionBuilder): Promise<[TransactionBuilder, TransactionBuilder]>;
|
|
7
7
|
export declare function requiresRefreshBeforeRebalance(client: SolautoClient): Promise<boolean>;
|
|
@@ -9,7 +9,7 @@ export declare function buildSolautoRebalanceTransaction(client: SolautoClient,
|
|
|
9
9
|
tx: TransactionBuilder;
|
|
10
10
|
lookupTableAddresses: string[];
|
|
11
11
|
} | undefined>;
|
|
12
|
-
export declare function convertReferralFeesToDestination(
|
|
12
|
+
export declare function convertReferralFeesToDestination(referralManager: ReferralStateManager, tokenAccount: PublicKey, destinationMint: PublicKey): Promise<[TransactionBuilder, string[]] | undefined>;
|
|
13
13
|
export declare function getErrorInfo(tx: TransactionBuilder, error: any): {
|
|
14
14
|
errorName: string | undefined;
|
|
15
15
|
errorInfo: undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionUtils.d.ts","sourceRoot":"","sources":["../../src/transactions/transactionUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,kBAAkB,
|
|
1
|
+
{"version":3,"file":"transactionUtils.d.ts","sourceRoot":"","sources":["../../src/transactions/transactionUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,kBAAkB,EAInB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,SAAS,EAA8B,MAAM,iBAAiB,CAAC;AAsBxE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAqCzD,OAAO,EAAE,oBAAoB,EAAa,MAAM,YAAY,CAAC;AAgM7D,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,aAAa,EACrB,EAAE,EAAE,kBAAkB,EACtB,sBAAsB,EAAE,MAAM,EAAE,GAC/B,OAAO,CAAC,kBAAkB,CAAC,CA+G7B;AAkLD,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,aAAa,EACrB,EAAE,EAAE,kBAAkB,GACrB,OAAO,CAAC,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC,CA0BnD;AAED,wBAAsB,8BAA8B,CAAC,MAAM,EAAE,aAAa,oBAwCzE;AAED,wBAAsB,gCAAgC,CACpD,MAAM,EAAE,aAAa,EACrB,2BAA2B,CAAC,EAAE,MAAM,EACpC,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CACN;IACE,EAAE,EAAE,kBAAkB,CAAC;IACvB,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC,GACD,SAAS,CACZ,CAkHA;AAED,wBAAsB,gCAAgC,CACpD,eAAe,EAAE,oBAAoB,EACrC,YAAY,EAAE,SAAS,EACvB,eAAe,EAAE,SAAS,GACzB,OAAO,CAAC,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CAmCrD;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG;;;;EAwC9D"}
|
|
@@ -400,26 +400,26 @@ async function buildSolautoRebalanceTransaction(client, targetLiqUtilizationRate
|
|
|
400
400
|
lookupTableAddresses,
|
|
401
401
|
};
|
|
402
402
|
}
|
|
403
|
-
async function convertReferralFeesToDestination(
|
|
404
|
-
const tokenAccountData = await (0, accountUtils_1.getTokenAccountData)(umi, tokenAccount);
|
|
403
|
+
async function convertReferralFeesToDestination(referralManager, tokenAccount, destinationMint) {
|
|
404
|
+
const tokenAccountData = await (0, accountUtils_1.getTokenAccountData)(referralManager.umi, tokenAccount);
|
|
405
405
|
if (!tokenAccountData || tokenAccountData.amount === BigInt(0)) {
|
|
406
406
|
return undefined;
|
|
407
407
|
}
|
|
408
|
-
const { lookupTableAddresses, setupInstructions, swapIx } = await (0, jupiterUtils_1.getJupSwapTransaction)(umi.identity, {
|
|
408
|
+
const { lookupTableAddresses, setupInstructions, swapIx } = await (0, jupiterUtils_1.getJupSwapTransaction)(referralManager.umi.identity, {
|
|
409
409
|
amount: tokenAccountData.amount,
|
|
410
|
-
destinationWallet:
|
|
410
|
+
destinationWallet: referralManager.referralState,
|
|
411
411
|
inputMint: tokenAccountData.mint,
|
|
412
|
-
outputMint:
|
|
412
|
+
outputMint: destinationMint,
|
|
413
413
|
exactIn: true,
|
|
414
414
|
slippageIncFactor: 0.25,
|
|
415
415
|
});
|
|
416
416
|
let tx = (0, umi_1.transactionBuilder)()
|
|
417
417
|
.add(setupInstructions)
|
|
418
|
-
.add((0, generated_1.convertReferralFees)(umi, {
|
|
419
|
-
signer: umi.identity,
|
|
420
|
-
intermediaryTa: (0, umi_1.publicKey)((0, accountUtils_1.getTokenAccount)((0, umi_web3js_adapters_1.toWeb3JsPublicKey)(umi.identity.publicKey), tokenAccountData.mint)),
|
|
418
|
+
.add((0, generated_1.convertReferralFees)(referralManager.umi, {
|
|
419
|
+
signer: referralManager.umi.identity,
|
|
420
|
+
intermediaryTa: (0, umi_1.publicKey)((0, accountUtils_1.getTokenAccount)((0, umi_web3js_adapters_1.toWeb3JsPublicKey)(referralManager.umi.identity.publicKey), tokenAccountData.mint)),
|
|
421
421
|
ixsSysvar: (0, umi_1.publicKey)(web3_js_1.SYSVAR_INSTRUCTIONS_PUBKEY),
|
|
422
|
-
referralState:
|
|
422
|
+
referralState: (0, umi_1.publicKey)(referralManager.referralState),
|
|
423
423
|
referralFeesTa: (0, umi_1.publicKey)(tokenAccount),
|
|
424
424
|
}))
|
|
425
425
|
.add(swapIx);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PublicKey } from "@solana/web3.js";
|
|
2
2
|
import { Umi } from "@metaplex-foundation/umi";
|
|
3
|
-
import { Bank } from "../marginfi-sdk";
|
|
3
|
+
import { Bank, MarginfiAccount } from "../marginfi-sdk";
|
|
4
4
|
import { MarginfiAssetAccounts } from "../types/accounts";
|
|
5
5
|
import { PositionState } from "../generated";
|
|
6
6
|
import { LivePositionUpdates } from "./solauto/generalUtils";
|
|
@@ -27,7 +27,10 @@ type BanksCache = {
|
|
|
27
27
|
[mint: string]: Bank;
|
|
28
28
|
};
|
|
29
29
|
};
|
|
30
|
-
export declare function getMarginfiAccountPositionState(umi: Umi,
|
|
30
|
+
export declare function getMarginfiAccountPositionState(umi: Umi, protocolAccount: {
|
|
31
|
+
pk: PublicKey;
|
|
32
|
+
data?: MarginfiAccount;
|
|
33
|
+
}, marginfiGroup?: PublicKey, supply?: BankSelection, debt?: BankSelection, livePositionUpdates?: LivePositionUpdates): Promise<PositionState | undefined>;
|
|
31
34
|
export declare function calculateAnnualAPYs(bank: Bank): [number, number];
|
|
32
35
|
export declare function getUpToDateShareValues(bank: Bank): Promise<[number, number]>;
|
|
33
36
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marginfiUtils.d.ts","sourceRoot":"","sources":["../../src/utils/marginfiUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAa,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EACL,IAAI,
|
|
1
|
+
{"version":3,"file":"marginfiUtils.d.ts","sourceRoot":"","sources":["../../src/utils/marginfiUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAa,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EACL,IAAI,EAGJ,eAAe,EAGhB,MAAM,iBAAiB,CAAC;AAiBzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAsB,MAAM,cAAc,CAAC;AAEjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG7D,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,SAAS,GAAG,qBAAqB,CAY3E;AAED,wBAAgB,gCAAgC,CAC9C,UAAU,EAAE,IAAI,EAChB,QAAQ,EAAE,IAAI,EACd,WAAW,EAAE,MAAM,GAClB,CAAC,MAAM,EAAE,MAAM,CAAC,CA6BlB;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,SAAS,EACxB,MAAM,EAAE;IACN,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACpB,EACD,IAAI,EAAE;IACJ,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACpB,EACD,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAwC3B;AAED,wBAAsB,iCAAiC,CACrD,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,SAAS,EACpB,qBAAqB,CAAC,EAAE,OAAO,GAC9B,OAAO,CACR;IAAE,eAAe,EAAE,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,EAAE,CAC/E,CAwDA;AA6DD,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,KAAK,UAAU,GAAG;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;CAAE,CAAC;AAEhE,wBAAsB,+BAA+B,CACnD,GAAG,EAAE,GAAG,EACR,eAAe,EAAE;IAAE,EAAE,EAAE,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,eAAe,CAAA;CAAE,EAC1D,aAAa,CAAC,EAAE,SAAS,EACzB,MAAM,CAAC,EAAE,aAAa,EACtB,IAAI,CAAC,EAAE,aAAa,EACpB,mBAAmB,CAAC,EAAE,mBAAmB,GACxC,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CA0LpC;AA+DD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,oBAU7C;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAgB3B"}
|
|
@@ -86,7 +86,7 @@ async function getAllMarginfiAccountsByAuthority(umi, authority, compatibleWithS
|
|
|
86
86
|
if (compatibleWithSolauto) {
|
|
87
87
|
const positionStates = await Promise.all(marginfiAccounts.map(async (x) => ({
|
|
88
88
|
publicKey: x.publicKey,
|
|
89
|
-
state: await getMarginfiAccountPositionState(umi, (0, umi_web3js_adapters_1.toWeb3JsPublicKey)(x.publicKey)),
|
|
89
|
+
state: await getMarginfiAccountPositionState(umi, { pk: (0, umi_web3js_adapters_1.toWeb3JsPublicKey)(x.publicKey) }),
|
|
90
90
|
})));
|
|
91
91
|
return positionStates
|
|
92
92
|
.sort((a, b) => (0, numberUtils_1.fromBaseUnit)(b.state?.netWorth.baseAmountUsdValue ?? BigInt(0), generalAccounts_1.USD_DECIMALS) -
|
|
@@ -143,8 +143,11 @@ async function getTokenUsage(bank, isAsset, shares, amountUsedAdjustment) {
|
|
|
143
143
|
padding: new Uint8Array([]),
|
|
144
144
|
};
|
|
145
145
|
}
|
|
146
|
-
async function getMarginfiAccountPositionState(umi,
|
|
147
|
-
let marginfiAccount =
|
|
146
|
+
async function getMarginfiAccountPositionState(umi, protocolAccount, marginfiGroup, supply, debt, livePositionUpdates) {
|
|
147
|
+
let marginfiAccount = protocolAccount.data ??
|
|
148
|
+
(await (0, marginfi_sdk_1.safeFetchMarginfiAccount)(umi, (0, umi_1.publicKey)(protocolAccount.pk), {
|
|
149
|
+
commitment: "confirmed",
|
|
150
|
+
}));
|
|
148
151
|
if (!supply) {
|
|
149
152
|
supply = {};
|
|
150
153
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@haven-fi/solauto-sdk",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.208",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"description": "Typescript SDK for the Solauto program on the Solana blockchain",
|
|
@@ -22,7 +22,6 @@
|
|
|
22
22
|
"@metaplex-foundation/umi-web3js-adapters": "^0.9.1",
|
|
23
23
|
"@solana/spl-token": "^0.4.0",
|
|
24
24
|
"@solana/web3.js": "^1.92.1",
|
|
25
|
-
"@sqds/multisig": "^2.1.3",
|
|
26
25
|
"bs58": "^5.0.0",
|
|
27
26
|
"cross-fetch": "^4.0.0",
|
|
28
27
|
"rpc-websockets": "7.11.0"
|
|
@@ -649,7 +649,7 @@ export class SolautoMarginfiClient extends SolautoClient {
|
|
|
649
649
|
|
|
650
650
|
const freshState = await getMarginfiAccountPositionState(
|
|
651
651
|
this.umi,
|
|
652
|
-
this.marginfiAccountPk,
|
|
652
|
+
{ pk: this.marginfiAccountPk },
|
|
653
653
|
this.marginfiGroup,
|
|
654
654
|
!this.selfManaged && this.solautoPositionData === null
|
|
655
655
|
? { mint: this.supplyMint }
|
|
@@ -26,6 +26,7 @@ import {
|
|
|
26
26
|
getMarginfiRebalanceInstructionDataSerializer,
|
|
27
27
|
getSolautoErrorFromCode,
|
|
28
28
|
isSolautoAction,
|
|
29
|
+
safeFetchReferralState,
|
|
29
30
|
solautoAction,
|
|
30
31
|
} from "../generated";
|
|
31
32
|
import { SolautoClient } from "../clients/solautoClient";
|
|
@@ -65,7 +66,7 @@ import {
|
|
|
65
66
|
getMarginfiErrorFromName,
|
|
66
67
|
MARGINFI_PROGRAM_ID,
|
|
67
68
|
} from "../marginfi-sdk";
|
|
68
|
-
import { TxHandler } from "../clients";
|
|
69
|
+
import { ReferralStateManager, TxHandler } from "../clients";
|
|
69
70
|
import {
|
|
70
71
|
createJupiterProgram,
|
|
71
72
|
getJupiterErrorFromName,
|
|
@@ -750,21 +751,21 @@ export async function buildSolautoRebalanceTransaction(
|
|
|
750
751
|
}
|
|
751
752
|
|
|
752
753
|
export async function convertReferralFeesToDestination(
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
754
|
+
referralManager: ReferralStateManager,
|
|
755
|
+
tokenAccount: PublicKey,
|
|
756
|
+
destinationMint: PublicKey
|
|
756
757
|
): Promise<[TransactionBuilder, string[]] | undefined> {
|
|
757
|
-
const tokenAccountData = await getTokenAccountData(umi, tokenAccount);
|
|
758
|
+
const tokenAccountData = await getTokenAccountData(referralManager.umi, tokenAccount);
|
|
758
759
|
if (!tokenAccountData || tokenAccountData.amount === BigInt(0)) {
|
|
759
760
|
return undefined;
|
|
760
761
|
}
|
|
761
762
|
|
|
762
763
|
const { lookupTableAddresses, setupInstructions, swapIx } =
|
|
763
|
-
await getJupSwapTransaction(umi.identity, {
|
|
764
|
+
await getJupSwapTransaction(referralManager.umi.identity, {
|
|
764
765
|
amount: tokenAccountData.amount,
|
|
765
|
-
destinationWallet:
|
|
766
|
+
destinationWallet: referralManager.referralState,
|
|
766
767
|
inputMint: tokenAccountData.mint,
|
|
767
|
-
outputMint:
|
|
768
|
+
outputMint: destinationMint,
|
|
768
769
|
exactIn: true,
|
|
769
770
|
slippageIncFactor: 0.25,
|
|
770
771
|
});
|
|
@@ -772,16 +773,16 @@ export async function convertReferralFeesToDestination(
|
|
|
772
773
|
let tx = transactionBuilder()
|
|
773
774
|
.add(setupInstructions)
|
|
774
775
|
.add(
|
|
775
|
-
convertReferralFees(umi, {
|
|
776
|
-
signer: umi.identity,
|
|
776
|
+
convertReferralFees(referralManager.umi, {
|
|
777
|
+
signer: referralManager.umi.identity,
|
|
777
778
|
intermediaryTa: publicKey(
|
|
778
779
|
getTokenAccount(
|
|
779
|
-
toWeb3JsPublicKey(umi.identity.publicKey),
|
|
780
|
+
toWeb3JsPublicKey(referralManager.umi.identity.publicKey),
|
|
780
781
|
tokenAccountData.mint
|
|
781
782
|
)
|
|
782
783
|
),
|
|
783
784
|
ixsSysvar: publicKey(SYSVAR_INSTRUCTIONS_PUBKEY),
|
|
784
|
-
referralState: referralState
|
|
785
|
+
referralState: publicKey(referralManager.referralState),
|
|
785
786
|
referralFeesTa: publicKey(tokenAccount),
|
|
786
787
|
})
|
|
787
788
|
)
|
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
Bank,
|
|
6
6
|
getMarginfiAccountSize,
|
|
7
7
|
MARGINFI_PROGRAM_ID,
|
|
8
|
+
MarginfiAccount,
|
|
8
9
|
safeFetchBank,
|
|
9
10
|
safeFetchMarginfiAccount,
|
|
10
11
|
} from "../marginfi-sdk";
|
|
@@ -168,7 +169,7 @@ export async function getAllMarginfiAccountsByAuthority(
|
|
|
168
169
|
publicKey: x.publicKey,
|
|
169
170
|
state: await getMarginfiAccountPositionState(
|
|
170
171
|
umi,
|
|
171
|
-
toWeb3JsPublicKey(x.publicKey)
|
|
172
|
+
{ pk: toWeb3JsPublicKey(x.publicKey) }
|
|
172
173
|
),
|
|
173
174
|
}))
|
|
174
175
|
);
|
|
@@ -265,17 +266,17 @@ type BanksCache = { [group: string]: { [mint: string]: Bank } };
|
|
|
265
266
|
|
|
266
267
|
export async function getMarginfiAccountPositionState(
|
|
267
268
|
umi: Umi,
|
|
268
|
-
|
|
269
|
+
protocolAccount: { pk: PublicKey; data?: MarginfiAccount },
|
|
269
270
|
marginfiGroup?: PublicKey,
|
|
270
271
|
supply?: BankSelection,
|
|
271
272
|
debt?: BankSelection,
|
|
272
273
|
livePositionUpdates?: LivePositionUpdates
|
|
273
274
|
): Promise<PositionState | undefined> {
|
|
274
|
-
let marginfiAccount =
|
|
275
|
-
|
|
276
|
-
publicKey(
|
|
277
|
-
|
|
278
|
-
|
|
275
|
+
let marginfiAccount =
|
|
276
|
+
protocolAccount.data ??
|
|
277
|
+
(await safeFetchMarginfiAccount(umi, publicKey(protocolAccount.pk), {
|
|
278
|
+
commitment: "confirmed",
|
|
279
|
+
}));
|
|
279
280
|
|
|
280
281
|
if (!supply) {
|
|
281
282
|
supply = {};
|
|
@@ -3,8 +3,6 @@ import { none, publicKey, some } from "@metaplex-foundation/umi";
|
|
|
3
3
|
import { setupTest } from "../shared";
|
|
4
4
|
import { SolautoMarginfiClient } from "../../src/clients/solautoMarginfiClient";
|
|
5
5
|
import {
|
|
6
|
-
PositionType,
|
|
7
|
-
safeFetchAllSolautoPosition,
|
|
8
6
|
solautoAction,
|
|
9
7
|
SolautoSettingsParametersInpArgs,
|
|
10
8
|
} from "../../src/generated";
|
|
@@ -15,7 +13,7 @@ import {
|
|
|
15
13
|
maxRepayToBps,
|
|
16
14
|
toBaseUnit,
|
|
17
15
|
} from "../../src/utils/numberUtils";
|
|
18
|
-
import {
|
|
16
|
+
import { NATIVE_MINT } from "@solana/spl-token";
|
|
19
17
|
import { fetchTokenPrices } from "../../src/utils/generalUtils";
|
|
20
18
|
import {
|
|
21
19
|
TransactionItem,
|
|
@@ -23,13 +21,7 @@ import {
|
|
|
23
21
|
} from "../../src/transactions/transactionsManager";
|
|
24
22
|
import { PublicKey } from "@solana/web3.js";
|
|
25
23
|
import { USDC } from "../../src/constants";
|
|
26
|
-
import {
|
|
27
|
-
buildHeliusApiUrl,
|
|
28
|
-
getAllPositionsByAuthority,
|
|
29
|
-
getMarginfiAccountPositionState,
|
|
30
|
-
getSolautoManagedPositions,
|
|
31
|
-
} from "../../src/utils";
|
|
32
|
-
import { toWeb3JsPublicKey } from "@metaplex-foundation/umi-web3js-adapters";
|
|
24
|
+
import { buildHeliusApiUrl } from "../../src/utils";
|
|
33
25
|
|
|
34
26
|
describe("Solauto Marginfi tests", async () => {
|
|
35
27
|
// const signer = setupTest();
|