@haven-fi/solauto-sdk 1.0.241 → 1.0.243
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.d.ts.map +1 -1
- package/dist/clients/referralStateManager.js +6 -2
- package/dist/clients/solautoClient.d.ts.map +1 -1
- package/dist/clients/solautoClient.js +5 -4
- package/dist/transactions/transactionsManager.d.ts.map +1 -1
- package/dist/transactions/transactionsManager.js +3 -1
- package/package.json +1 -1
- package/src/clients/referralStateManager.ts +6 -2
- package/src/clients/solautoClient.ts +10 -8
- package/src/transactions/transactionsManager.ts +3 -1
- package/tests/transactions/solautoMarginfi.ts +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"referralStateManager.d.ts","sourceRoot":"","sources":["../../src/clients/referralStateManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAEL,MAAM,EAEN,kBAAkB,EAClB,GAAG,EACJ,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,aAAa,EAEd,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAEL,aAAa,EAGd,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,mBAAmB,CAAC,EAAE,SAAS,CAAC;CACjC;AAED,qBAAa,oBAAqB,SAAQ,SAAS;IAC1C,GAAG,EAAG,GAAG,CAAC;IACV,MAAM,EAAG,MAAM,CAAC;IAEhB,aAAa,EAAG,SAAS,CAAC;IAC1B,iBAAiB,EAAG,aAAa,GAAG,IAAI,CAAC;IACzC,SAAS,EAAG,SAAS,CAAC;IAEtB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,eAAe,CAAC,EAAE,SAAS,CAAC;IAE7B,UAAU,CAAC,IAAI,EAAE,wBAAwB;IA6B/C,mBAAmB,IAAI,MAAM,EAAE;IAS/B,aAAa,CAAC,UAAU,CAAC,EAAE,SAAS;IAmBpC,sBAAsB,CACpB,YAAY,CAAC,EAAE,SAAS,EACxB,WAAW,CAAC,EAAE,SAAS,GACtB,kBAAkB;
|
|
1
|
+
{"version":3,"file":"referralStateManager.d.ts","sourceRoot":"","sources":["../../src/clients/referralStateManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAEL,MAAM,EAEN,kBAAkB,EAClB,GAAG,EACJ,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,aAAa,EAEd,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAEL,aAAa,EAGd,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,mBAAmB,CAAC,EAAE,SAAS,CAAC;CACjC;AAED,qBAAa,oBAAqB,SAAQ,SAAS;IAC1C,GAAG,EAAG,GAAG,CAAC;IACV,MAAM,EAAG,MAAM,CAAC;IAEhB,aAAa,EAAG,SAAS,CAAC;IAC1B,iBAAiB,EAAG,aAAa,GAAG,IAAI,CAAC;IACzC,SAAS,EAAG,SAAS,CAAC;IAEtB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,eAAe,CAAC,EAAE,SAAS,CAAC;IAE7B,UAAU,CAAC,IAAI,EAAE,wBAAwB;IA6B/C,mBAAmB,IAAI,MAAM,EAAE;IAS/B,aAAa,CAAC,UAAU,CAAC,EAAE,SAAS;IAmBpC,sBAAsB,CACpB,YAAY,CAAC,EAAE,SAAS,EACxB,WAAW,CAAC,EAAE,SAAS,GACtB,kBAAkB;IAerB,mBAAmB,IAAI,kBAAkB;IA+BnC,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAC3D"}
|
|
@@ -54,8 +54,12 @@ class ReferralStateManager extends txHandler_1.TxHandler {
|
|
|
54
54
|
signer: this.signer,
|
|
55
55
|
signerReferralState: (0, umi_1.publicKey)(this.referralState),
|
|
56
56
|
referralFeesDestMint: destFeesMint ? (0, umi_1.publicKey)(destFeesMint) : null,
|
|
57
|
-
referredByState:
|
|
58
|
-
|
|
57
|
+
referredByState: this.referredByState
|
|
58
|
+
? (0, umi_1.publicKey)(this.referredByState)
|
|
59
|
+
: undefined,
|
|
60
|
+
referredByAuthority: this.referredBy
|
|
61
|
+
? (0, umi_1.publicKey)(this.referredBy)
|
|
62
|
+
: undefined,
|
|
59
63
|
addressLookupTable: lookupTable ? (0, umi_1.publicKey)(lookupTable) : null,
|
|
60
64
|
});
|
|
61
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solautoClient.d.ts","sourceRoot":"","sources":["../../src/clients/solautoClient.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAC;AACxC,OAAO,EAA6B,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EACL,MAAM,EACN,kBAAkB,EAMnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,wBAAwB,EACxB,yBAAyB,EACzB,gCAAgC,EAEhC,sBAAsB,EAKvB,MAAM,cAAc,CAAC;AAUtB,OAAO,
|
|
1
|
+
{"version":3,"file":"solautoClient.d.ts","sourceRoot":"","sources":["../../src/clients/solautoClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -110,6 +110,10 @@ class SolautoClient extends referralStateManager_1.ReferralStateManager {
|
|
|
110
110
|
this.positionDebtTa,
|
|
111
111
|
this.referralState,
|
|
112
112
|
...(this.referredBySupplyTa() ? [this.referredBySupplyTa()] : []),
|
|
113
|
+
...(this.referredByDebtTa() ? [this.referredByDebtTa()] : []),
|
|
114
|
+
...(this.referredBy && !this.referralStateData?.referredByState
|
|
115
|
+
? [this.referredBy]
|
|
116
|
+
: []),
|
|
113
117
|
];
|
|
114
118
|
}
|
|
115
119
|
async fetchExistingAuthorityLutAccounts() {
|
|
@@ -149,13 +153,10 @@ class SolautoClient extends referralStateManager_1.ReferralStateManager {
|
|
|
149
153
|
addresses: accountsToAdd,
|
|
150
154
|
})));
|
|
151
155
|
}
|
|
152
|
-
const addingReferredBy = accountsToAdd.length === 1 &&
|
|
153
|
-
accountsToAdd[0].toString().toLowerCase() ===
|
|
154
|
-
this.referredBySupplyTa()?.toString().toLowerCase();
|
|
155
156
|
if (tx.getInstructions().length > 0) {
|
|
156
157
|
this.log("Updating authority lookup table...");
|
|
157
158
|
}
|
|
158
|
-
return { updateLutTx: tx, needsToBeIsolated:
|
|
159
|
+
return { updateLutTx: tx, needsToBeIsolated: true };
|
|
159
160
|
}
|
|
160
161
|
solautoPositionSettings() {
|
|
161
162
|
return (this.livePositionUpdates.settings ??
|
|
@@ -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;AAKzD,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;AAI7D,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,OAAO,EAAE,MAAM;CAK5B;AAqCD,qBAAa,eAAe;IAKjB,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM;IAPtB,oBAAoB,EAAG,MAAM,EAAE,CAAC;IAChC,EAAE,CAAC,EAAE,kBAAkB,CAAC;gBAGf,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,EACxC,IAAI,CAAC,EAAE,MAAM,YAAA;IAGhB,UAAU;IAIV,OAAO,CAAC,UAAU,EAAE,MAAM;IAMhC,cAAc,IAAI,MAAM,EAAE;CAY3B;AAgFD,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,aAAa,CAAC;IACtB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IAVpB,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,aAAa,CAAC,EAAE,aAAa,YAAA,EAC7B,OAAO,GAAE,MAAU,EACnB,UAAU,GAAE,MAAY;YAQpB,uBAAuB;IAwCrC,OAAO,CAAC,YAAY;YA8CN,aAAa;IAoB3B,OAAO,CAAC,4BAA4B;IAUpC,OAAO,CAAC,mBAAmB;IAMd,UAAU,CACrB,YAAY,EAAE,eAAe,EAAE,GAC9B,OAAO,CAAC,0BAA0B,CAAC;
|
|
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;AAKzD,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;AAI7D,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,OAAO,EAAE,MAAM;CAK5B;AAqCD,qBAAa,eAAe;IAKjB,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM;IAPtB,oBAAoB,EAAG,MAAM,EAAE,CAAC;IAChC,EAAE,CAAC,EAAE,kBAAkB,CAAC;gBAGf,OAAO,EAAE,CACd,UAAU,EAAE,MAAM,KACf,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,EACxC,IAAI,CAAC,EAAE,MAAM,YAAA;IAGhB,UAAU;IAIV,OAAO,CAAC,UAAU,EAAE,MAAM;IAMhC,cAAc,IAAI,MAAM,EAAE;CAY3B;AAgFD,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,aAAa,CAAC;IACtB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IAVpB,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,aAAa,CAAC,EAAE,aAAa,YAAA,EAC7B,OAAO,GAAE,MAAU,EACnB,UAAU,GAAE,MAAY;YAQpB,uBAAuB;IAwCrC,OAAO,CAAC,YAAY;YA8CN,aAAa;IAoB3B,OAAO,CAAC,4BAA4B;IAUpC,OAAO,CAAC,mBAAmB;IAMd,UAAU,CACrB,YAAY,EAAE,eAAe,EAAE,GAC9B,OAAO,CAAC,0BAA0B,CAAC;IA2EzB,IAAI,CACf,KAAK,EAAE,eAAe,EAAE,EACxB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,0BAA0B,CAAC;YA6BxB,qBAAqB;YAiDrB,cAAc;YAqBd,eAAe;CAkD9B"}
|
|
@@ -250,14 +250,16 @@ class TransactionsManager {
|
|
|
250
250
|
for (const item of items) {
|
|
251
251
|
await item.initialize();
|
|
252
252
|
}
|
|
253
|
+
let choresBeforeName;
|
|
253
254
|
const [choresBefore, choresAfter] = await (0, transactionUtils_1.getTransactionChores)(client, (0, umi_1.transactionBuilder)().add(items
|
|
254
255
|
.filter((x) => x.tx && x.tx.getInstructions().length > 0)
|
|
255
256
|
.map((x) => x.tx)));
|
|
256
257
|
if (updateLookupTable && !updateLookupTable.needsToBeIsolated) {
|
|
257
258
|
choresBefore.prepend(updateLookupTable.updateLutTx);
|
|
259
|
+
choresBeforeName = "update lookup table";
|
|
258
260
|
}
|
|
259
261
|
if (choresBefore.getInstructions().length > 0) {
|
|
260
|
-
const chore = new TransactionItem(async () => ({ tx: choresBefore }));
|
|
262
|
+
const chore = new TransactionItem(async () => ({ tx: choresBefore, }), choresBeforeName);
|
|
261
263
|
await chore.initialize();
|
|
262
264
|
items.unshift(chore);
|
|
263
265
|
this.txHandler.log("Chores before: ", choresBefore.getInstructions().length);
|
package/package.json
CHANGED
|
@@ -106,8 +106,12 @@ export class ReferralStateManager extends TxHandler {
|
|
|
106
106
|
signer: this.signer,
|
|
107
107
|
signerReferralState: publicKey(this.referralState),
|
|
108
108
|
referralFeesDestMint: destFeesMint ? publicKey(destFeesMint) : null,
|
|
109
|
-
referredByState:
|
|
110
|
-
|
|
109
|
+
referredByState: this.referredByState
|
|
110
|
+
? publicKey(this.referredByState)
|
|
111
|
+
: undefined,
|
|
112
|
+
referredByAuthority: this.referredBy
|
|
113
|
+
? publicKey(this.referredBy)
|
|
114
|
+
: undefined,
|
|
111
115
|
addressLookupTable: lookupTable ? publicKey(lookupTable) : null,
|
|
112
116
|
});
|
|
113
117
|
}
|
|
@@ -36,7 +36,10 @@ import {
|
|
|
36
36
|
getWrappedInstruction,
|
|
37
37
|
splTokenTransferUmiIx,
|
|
38
38
|
} from "../utils/solanaUtils";
|
|
39
|
-
import {
|
|
39
|
+
import {
|
|
40
|
+
FlashLoanDetails,
|
|
41
|
+
RebalanceValues,
|
|
42
|
+
} from "../utils/solauto/rebalanceUtils";
|
|
40
43
|
import {
|
|
41
44
|
MIN_POSITION_STATE_FRESHNESS_SECS,
|
|
42
45
|
SOLAUTO_LUT,
|
|
@@ -170,7 +173,7 @@ export abstract class SolautoClient extends ReferralStateManager {
|
|
|
170
173
|
}
|
|
171
174
|
return undefined;
|
|
172
175
|
}
|
|
173
|
-
|
|
176
|
+
|
|
174
177
|
referredByDebtTa(): PublicKey | undefined {
|
|
175
178
|
if (this.referredByState !== undefined) {
|
|
176
179
|
return getTokenAccount(this.referredByState, this.debtMint);
|
|
@@ -226,6 +229,10 @@ export abstract class SolautoClient extends ReferralStateManager {
|
|
|
226
229
|
this.positionDebtTa,
|
|
227
230
|
this.referralState,
|
|
228
231
|
...(this.referredBySupplyTa() ? [this.referredBySupplyTa()!] : []),
|
|
232
|
+
...(this.referredByDebtTa() ? [this.referredByDebtTa()!] : []),
|
|
233
|
+
...(this.referredBy && !this.referralStateData?.referredByState
|
|
234
|
+
? [this.referredBy]
|
|
235
|
+
: []),
|
|
229
236
|
];
|
|
230
237
|
}
|
|
231
238
|
|
|
@@ -286,16 +293,11 @@ export abstract class SolautoClient extends ReferralStateManager {
|
|
|
286
293
|
);
|
|
287
294
|
}
|
|
288
295
|
|
|
289
|
-
const addingReferredBy =
|
|
290
|
-
accountsToAdd.length === 1 &&
|
|
291
|
-
accountsToAdd[0].toString().toLowerCase() ===
|
|
292
|
-
this.referredBySupplyTa()?.toString().toLowerCase();
|
|
293
|
-
|
|
294
296
|
if (tx.getInstructions().length > 0) {
|
|
295
297
|
this.log("Updating authority lookup table...");
|
|
296
298
|
}
|
|
297
299
|
|
|
298
|
-
return { updateLutTx: tx, needsToBeIsolated:
|
|
300
|
+
return { updateLutTx: tx, needsToBeIsolated: true };
|
|
299
301
|
}
|
|
300
302
|
|
|
301
303
|
solautoPositionSettings(): SolautoSettingsParameters | undefined {
|
|
@@ -372,6 +372,7 @@ export class TransactionsManager {
|
|
|
372
372
|
await item.initialize();
|
|
373
373
|
}
|
|
374
374
|
|
|
375
|
+
let choresBeforeName: string | undefined;
|
|
375
376
|
const [choresBefore, choresAfter] = await getTransactionChores(
|
|
376
377
|
client,
|
|
377
378
|
transactionBuilder().add(
|
|
@@ -382,9 +383,10 @@ export class TransactionsManager {
|
|
|
382
383
|
);
|
|
383
384
|
if (updateLookupTable && !updateLookupTable.needsToBeIsolated) {
|
|
384
385
|
choresBefore.prepend(updateLookupTable.updateLutTx);
|
|
386
|
+
choresBeforeName = "update lookup table";
|
|
385
387
|
}
|
|
386
388
|
if (choresBefore.getInstructions().length > 0) {
|
|
387
|
-
const chore = new TransactionItem(async () => ({ tx: choresBefore }));
|
|
389
|
+
const chore = new TransactionItem(async () => ({ tx: choresBefore, }), choresBeforeName);
|
|
388
390
|
await chore.initialize();
|
|
389
391
|
items.unshift(chore);
|
|
390
392
|
this.txHandler.log(
|
|
@@ -30,7 +30,7 @@ describe("Solauto Marginfi tests", async () => {
|
|
|
30
30
|
// const signer = setupTest("solauto-manager");
|
|
31
31
|
|
|
32
32
|
const payForTransactions = false;
|
|
33
|
-
const positionId =
|
|
33
|
+
const positionId = 1;
|
|
34
34
|
|
|
35
35
|
it("open - deposit - borrow - rebalance to 0 - withdraw - close", async () => {
|
|
36
36
|
const client = new SolautoMarginfiClient(
|
|
@@ -73,16 +73,16 @@ describe("Solauto Marginfi tests", async () => {
|
|
|
73
73
|
// );
|
|
74
74
|
|
|
75
75
|
// // const initialSupplyUsd = 150;
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
76
|
+
// transactionItems.push(
|
|
77
|
+
// new TransactionItem(async () => {
|
|
78
|
+
// // const [supplyPrice] = await fetchTokenPrices([supply]);
|
|
79
|
+
// return {
|
|
80
|
+
// tx: client.protocolInteraction(
|
|
81
|
+
// solautoAction("Deposit", [toBaseUnit(0.5, supplyDecimals)])
|
|
82
|
+
// ),
|
|
83
|
+
// };
|
|
84
|
+
// }, "deposit")
|
|
85
|
+
// );
|
|
86
86
|
// }
|
|
87
87
|
|
|
88
88
|
// const maxLtvBps = client.solautoPositionState!.maxLtvBps;
|