@haven-fi/solauto-sdk 1.0.346 → 1.0.348
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/referralStateManager.js +1 -1
- package/dist/constants/marginfiAccounts.js +1 -1
- package/dist/transactions/transactionsManager.d.ts.map +1 -1
- package/dist/transactions/transactionsManager.js +3 -3
- package/dist/utils/priceUtils.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/clients/referralStateManager.ts +1 -1
- package/src/constants/marginfiAccounts.ts +1 -1
- package/src/transactions/transactionsManager.ts +5 -3
- package/src/utils/priceUtils.ts +0 -1
- package/tests/transactions/solautoMarginfi.ts +17 -21
@@ -16,7 +16,7 @@ class ReferralStateManager extends txHandler_1.TxHandler {
|
|
16
16
|
throw new Error("Signer or wallet must be provided");
|
17
17
|
}
|
18
18
|
this.umi = this.umi.use(args.signer
|
19
|
-
? (0, umi_1.signerIdentity)(args.signer)
|
19
|
+
? (0, umi_1.signerIdentity)(args.signer, true)
|
20
20
|
: (0, umi_signer_wallet_adapters_1.walletAdapterIdentity)(args.wallet, true));
|
21
21
|
this.signer = this.umi.identity;
|
22
22
|
this.referralState = args.referralState
|
@@ -67,7 +67,7 @@ exports.MARGINFI_ACCOUNTS = {
|
|
67
67
|
bank: "AwLRW3aPMMftXEjgWhTkYwM9CGBHdtKecvahCJZBwAqY",
|
68
68
|
liquidityVault: "HQ1CGcqRshMhuonTGTnnmgw9ffcXxizGdZ6F6PKffWWi",
|
69
69
|
vaultAuthority: "AEZb1XH5bfLwqk3hBKDuLfWyJKdLTgDPCkgn64BJKcvV",
|
70
|
-
priceOracle: "
|
70
|
+
priceOracle: "Ceg5oePJv1a6RR541qKeQaTepvERA3i8SvyueX9tT8Sq",
|
71
71
|
},
|
72
72
|
[tokens.H_SOL]: {
|
73
73
|
bank: "GJCi1uj3kYPZ64puA5sLUiCQfFapxT2xnREzrbDzFkYY",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"transactionsManager.d.ts","sourceRoot":"","sources":["../../src/transactions/transactionsManager.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,kBAAkB,EAEnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAMzD,OAAO,EACL,aAAa,EAEd,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,kBAAkB,EAElB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAa,MAAM,YAAY,CAAC;AAW7D,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,OAAO,EAAE,MAAM;CAK5B;AAqCD,qBAAa,eAAe;IAMjB,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM;IARtB,oBAAoB,EAAG,MAAM,EAAE,CAAC;IAChC,EAAE,CAAC,EAAE,kBAAkB,CAAC;IACjB,WAAW,EAAE,OAAO,CAAS;gBAG3B,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,EACxC,IAAI,CAAC,EAAE,MAAM,YAAA;IAGhB,UAAU;IAKV,OAAO,CAAC,UAAU,EAAE,MAAM;IAMhC,cAAc,IAAI,MAAM,EAAE;CAY3B;AA0FD,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EAAE,CAAC;AAEJ,qBAAa,mBAAmB;IAK5B,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,cAAc,CAAC;IACvB,OAAO,CAAC,MAAM,CAAC;IACf,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,aAAa,CAAC;IACtB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IAXpB,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,YAAY,CAAe;gBAGzB,SAAS,EAAE,aAAa,GAAG,oBAAoB,EAC/C,cAAc,CAAC,GAAE,CAAC,QAAQ,EAAE,0BAA0B,KAAK,IAAI,aAAA,EAC/D,MAAM,CAAC,EAAE,kBAAkB,YAAA,EAC3B,kBAAkB,GAAE,kBAA2C,EAC/D,UAAU,GAAE,OAAe,EAC3B,aAAa,CAAC,EAAE,aAAa,YAAA,EAC7B,OAAO,GAAE,MAAU,EACnB,UAAU,GAAE,MAAY;YAQpB,uBAAuB;IAwCrC,OAAO,CAAC,YAAY;YA6CN,aAAa;IAoB3B,OAAO,CAAC,4BAA4B;IAgBpC,OAAO,CAAC,mBAAmB;YAoBb,SAAS;
|
1
|
+
{"version":3,"file":"transactionsManager.d.ts","sourceRoot":"","sources":["../../src/transactions/transactionsManager.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,kBAAkB,EAEnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAMzD,OAAO,EACL,aAAa,EAEd,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,kBAAkB,EAElB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAa,MAAM,YAAY,CAAC;AAW7D,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,OAAO,EAAE,MAAM;CAK5B;AAqCD,qBAAa,eAAe;IAMjB,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM;IARtB,oBAAoB,EAAG,MAAM,EAAE,CAAC;IAChC,EAAE,CAAC,EAAE,kBAAkB,CAAC;IACjB,WAAW,EAAE,OAAO,CAAS;gBAG3B,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,EACxC,IAAI,CAAC,EAAE,MAAM,YAAA;IAGhB,UAAU;IAKV,OAAO,CAAC,UAAU,EAAE,MAAM;IAMhC,cAAc,IAAI,MAAM,EAAE;CAY3B;AA0FD,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EAAE,CAAC;AAEJ,qBAAa,mBAAmB;IAK5B,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,cAAc,CAAC;IACvB,OAAO,CAAC,MAAM,CAAC;IACf,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,aAAa,CAAC;IACtB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IAXpB,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,YAAY,CAAe;gBAGzB,SAAS,EAAE,aAAa,GAAG,oBAAoB,EAC/C,cAAc,CAAC,GAAE,CAAC,QAAQ,EAAE,0BAA0B,KAAK,IAAI,aAAA,EAC/D,MAAM,CAAC,EAAE,kBAAkB,YAAA,EAC3B,kBAAkB,GAAE,kBAA2C,EAC/D,UAAU,GAAE,OAAe,EAC3B,aAAa,CAAC,EAAE,aAAa,YAAA,EAC7B,OAAO,GAAE,MAAU,EACnB,UAAU,GAAE,MAAY;YAQpB,uBAAuB;IAwCrC,OAAO,CAAC,YAAY;YA6CN,aAAa;IAoB3B,OAAO,CAAC,4BAA4B;IAgBpC,OAAO,CAAC,mBAAmB;YAoBb,SAAS;IAiBV,UAAU,CACrB,YAAY,EAAE,eAAe,EAAE,GAC9B,OAAO,CAAC,0BAA0B,CAAC;IA4FzB,IAAI,CACf,KAAK,EAAE,eAAe,EAAE,GACvB,OAAO,CAAC,0BAA0B,CAAC;YAmCxB,6BAA6B;YAgG7B,qBAAqB;YAuDrB,cAAc;YAqCd,eAAe;CAoD9B"}
|
@@ -251,7 +251,7 @@ class TransactionsManager {
|
|
251
251
|
}
|
252
252
|
async updateLut(tx, newLut) {
|
253
253
|
const updateLutTxName = `${newLut ? "create" : "update"} lookup table`;
|
254
|
-
await (0, generalUtils_1.retryWithExponentialBackoff)(async (attemptNum, prevError) => await this.sendTransaction(tx, updateLutTxName, attemptNum, this.getUpdatedPriorityFeeSetting(prevError, attemptNum)), 3, 150, this.errorsToThrow);
|
254
|
+
await (0, generalUtils_1.retryWithExponentialBackoff)(async (attemptNum, prevError) => await this.sendTransaction(tx, updateLutTxName, attemptNum, this.getUpdatedPriorityFeeSetting(prevError, attemptNum), "skip-simulation"), 3, 150, this.errorsToThrow);
|
255
255
|
}
|
256
256
|
async clientSend(transactions) {
|
257
257
|
const items = [...transactions];
|
@@ -415,10 +415,10 @@ class TransactionsManager {
|
|
415
415
|
}
|
416
416
|
return newItemSets[0];
|
417
417
|
}
|
418
|
-
async sendTransaction(tx, txName, attemptNum, priorityFeeSetting) {
|
418
|
+
async sendTransaction(tx, txName, attemptNum, priorityFeeSetting, txType) {
|
419
419
|
this.updateStatus(txName, TransactionStatus.Processing, attemptNum);
|
420
420
|
try {
|
421
|
-
const txSig = await (0, solanaUtils_1.sendSingleOptimizedTransaction)(this.txHandler.umi, this.txHandler.connection, tx, this.txType, priorityFeeSetting, () => this.updateStatus(txName, TransactionStatus.Processing, attemptNum, undefined, true));
|
421
|
+
const txSig = await (0, solanaUtils_1.sendSingleOptimizedTransaction)(this.txHandler.umi, this.txHandler.connection, tx, txType ?? this.txType, priorityFeeSetting, () => this.updateStatus(txName, TransactionStatus.Processing, attemptNum, undefined, true));
|
422
422
|
this.updateStatus(txName, TransactionStatus.Successful, attemptNum, txSig ? bs58_1.default.encode(txSig) : undefined);
|
423
423
|
}
|
424
424
|
catch (e) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"priceUtils.d.ts","sourceRoot":"","sources":["../../src/utils/priceUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAC;
|
1
|
+
{"version":3,"file":"priceUtils.d.ts","sourceRoot":"","sources":["../../src/utils/priceUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAYrE,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAqC5E;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,qBAwCrD;AAED,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,SAAS,EAAE,GACjB,OAAO,CAAC,MAAM,EAAE,CAAC,CAmCnB;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,qBAoBzD;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,SAAS,GAAG,YAAY,GAAG,SAAS,GACzC,MAAM,GAAG,SAAS,CAKpB"}
|
package/package.json
CHANGED
@@ -47,7 +47,7 @@ export class ReferralStateManager extends TxHandler {
|
|
47
47
|
}
|
48
48
|
this.umi = this.umi.use(
|
49
49
|
args.signer
|
50
|
-
? signerIdentity(args.signer)
|
50
|
+
? signerIdentity(args.signer, true)
|
51
51
|
: walletAdapterIdentity(args.wallet!, true)
|
52
52
|
);
|
53
53
|
this.signer = this.umi.identity;
|
@@ -49,7 +49,7 @@ export const MARGINFI_ACCOUNTS: {
|
|
49
49
|
bank: "AwLRW3aPMMftXEjgWhTkYwM9CGBHdtKecvahCJZBwAqY",
|
50
50
|
liquidityVault: "HQ1CGcqRshMhuonTGTnnmgw9ffcXxizGdZ6F6PKffWWi",
|
51
51
|
vaultAuthority: "AEZb1XH5bfLwqk3hBKDuLfWyJKdLTgDPCkgn64BJKcvV",
|
52
|
-
priceOracle: "
|
52
|
+
priceOracle: "Ceg5oePJv1a6RR541qKeQaTepvERA3i8SvyueX9tT8Sq",
|
53
53
|
},
|
54
54
|
[tokens.H_SOL]: {
|
55
55
|
bank: "GJCi1uj3kYPZ64puA5sLUiCQfFapxT2xnREzrbDzFkYY",
|
@@ -387,7 +387,8 @@ export class TransactionsManager {
|
|
387
387
|
tx,
|
388
388
|
updateLutTxName,
|
389
389
|
attemptNum,
|
390
|
-
this.getUpdatedPriorityFeeSetting(prevError, attemptNum)
|
390
|
+
this.getUpdatedPriorityFeeSetting(prevError, attemptNum),
|
391
|
+
"skip-simulation"
|
391
392
|
),
|
392
393
|
3,
|
393
394
|
150,
|
@@ -718,7 +719,8 @@ export class TransactionsManager {
|
|
718
719
|
tx: TransactionBuilder,
|
719
720
|
txName: string,
|
720
721
|
attemptNum: number,
|
721
|
-
priorityFeeSetting?: PriorityFeeSetting
|
722
|
+
priorityFeeSetting?: PriorityFeeSetting,
|
723
|
+
txType?: TransactionRunType
|
722
724
|
) {
|
723
725
|
this.updateStatus(txName, TransactionStatus.Processing, attemptNum);
|
724
726
|
try {
|
@@ -726,7 +728,7 @@ export class TransactionsManager {
|
|
726
728
|
this.txHandler.umi,
|
727
729
|
this.txHandler.connection,
|
728
730
|
tx,
|
729
|
-
this.txType,
|
731
|
+
txType ?? this.txType,
|
730
732
|
priorityFeeSetting,
|
731
733
|
() =>
|
732
734
|
this.updateStatus(
|
package/src/utils/priceUtils.ts
CHANGED
@@ -5,7 +5,6 @@ import { fromBaseUnit, toBaseUnit } from "./numberUtils";
|
|
5
5
|
import { PRICES } from "../constants/solautoConstants";
|
6
6
|
import { SWITCHBOARD_PRICE_FEED_IDS } from "../constants/switchboardConstants";
|
7
7
|
import {
|
8
|
-
consoleLog,
|
9
8
|
currentUnixSeconds,
|
10
9
|
retryWithExponentialBackoff,
|
11
10
|
zip,
|
@@ -22,15 +22,13 @@ import {
|
|
22
22
|
} from "../../src/transactions/transactionsManager";
|
23
23
|
import { PublicKey } from "@solana/web3.js";
|
24
24
|
import {
|
25
|
-
POPCAT,
|
26
25
|
SOLAUTO_PROD_PROGRAM,
|
27
26
|
SOLAUTO_TEST_PROGRAM,
|
28
27
|
USDC,
|
29
28
|
} from "../../src/constants";
|
30
29
|
import {
|
31
30
|
buildHeliusApiUrl,
|
32
|
-
|
33
|
-
positionStateWithLatestPrices,
|
31
|
+
getSolautoManagedPositions,
|
34
32
|
} from "../../src/utils";
|
35
33
|
import { PriorityFeeSetting } from "../../src/types";
|
36
34
|
|
@@ -56,7 +54,7 @@ describe("Solauto Marginfi tests", async () => {
|
|
56
54
|
await client.initialize({
|
57
55
|
signer,
|
58
56
|
positionId,
|
59
|
-
authority: new PublicKey("
|
57
|
+
authority: new PublicKey("5FALSVLRjuRZHSmQVdT2RUZC6KadCuDmxY7gaQFWFBxf"),
|
60
58
|
// new: true,
|
61
59
|
// marginfiAccount: new PublicKey(
|
62
60
|
// "4nNvUXF5YqHFcH2nGweSiuvy1ct7V5FXfoCLKFYUN36z"
|
@@ -66,8 +64,6 @@ describe("Solauto Marginfi tests", async () => {
|
|
66
64
|
// debtMint: new PublicKey(USDC),
|
67
65
|
});
|
68
66
|
|
69
|
-
console.log(await fetchTokenPrices([new PublicKey(POPCAT)]));
|
70
|
-
|
71
67
|
const transactionItems: TransactionItem[] = [];
|
72
68
|
// const settingParams: SolautoSettingsParametersInpArgs = {
|
73
69
|
// boostToBps: maxBoostToBps(
|
@@ -126,13 +122,13 @@ describe("Solauto Marginfi tests", async () => {
|
|
126
122
|
// )
|
127
123
|
// );
|
128
124
|
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
125
|
+
transactionItems.push(
|
126
|
+
new TransactionItem(
|
127
|
+
async (attemptNum) =>
|
128
|
+
await buildSolautoRebalanceTransaction(client, undefined, attemptNum),
|
129
|
+
"rebalance"
|
130
|
+
)
|
131
|
+
);
|
136
132
|
|
137
133
|
// transactionItems.push(
|
138
134
|
// new TransactionItem(
|
@@ -162,14 +158,14 @@ describe("Solauto Marginfi tests", async () => {
|
|
162
158
|
// )
|
163
159
|
// );
|
164
160
|
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
161
|
+
const statuses = await new TransactionsManager(
|
162
|
+
client,
|
163
|
+
undefined,
|
164
|
+
!payForTransactions ? "only-simulate" : "normal",
|
165
|
+
PriorityFeeSetting.Low,
|
166
|
+
true
|
167
|
+
).clientSend(transactionItems);
|
172
168
|
|
173
|
-
|
169
|
+
console.log(statuses);
|
174
170
|
});
|
175
171
|
});
|