@haven-fi/solauto-sdk 1.0.573 → 1.0.575
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/txHandler.d.ts +2 -1
- package/dist/clients/txHandler.d.ts.map +1 -1
- package/dist/clients/txHandler.js +3 -2
- package/dist/utils/solanaUtils.d.ts +1 -1
- package/dist/utils/solanaUtils.d.ts.map +1 -1
- package/dist/utils/solanaUtils.js +5 -2
- package/local/.env +1 -1
- package/package.json +1 -1
- package/src/clients/txHandler.ts +8 -6
- package/src/utils/solanaUtils.ts +6 -2
- package/tests/transactions/solautoMarginfi.ts +4 -1
@@ -3,11 +3,12 @@ import { Connection, PublicKey } from "@solana/web3.js";
|
|
3
3
|
export declare abstract class TxHandler {
|
4
4
|
rpcUrl: string;
|
5
5
|
programId: PublicKey;
|
6
|
+
wsEndpoint?: string | undefined;
|
6
7
|
connection: Connection;
|
7
8
|
umi: Umi;
|
8
9
|
signer: Signer;
|
9
10
|
otherSigners: Signer[];
|
10
|
-
constructor(rpcUrl: string, localTest?: boolean, programId?: PublicKey);
|
11
|
+
constructor(rpcUrl: string, localTest?: boolean, programId?: PublicKey, wsEndpoint?: string | undefined);
|
11
12
|
log(...args: any[]): void;
|
12
13
|
abstract defaultLookupTables(): string[];
|
13
14
|
abstract resetLiveTxUpdates(success?: boolean): Promise<void>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"txHandler.d.ts","sourceRoot":"","sources":["../../src/clients/txHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
1
|
+
{"version":3,"file":"txHandler.d.ts","sourceRoot":"","sources":["../../src/clients/txHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAIxD,8BAAsB,SAAS;IAOpB,MAAM,EAAE,MAAM;IAEd,SAAS,EAAE,SAAS;IACpB,UAAU,CAAC,EAAE,MAAM;IATrB,UAAU,EAAG,UAAU,CAAC;IACxB,GAAG,EAAG,GAAG,CAAC;IACV,MAAM,EAAG,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAM;gBAG1B,MAAM,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,OAAO,EACZ,SAAS,GAAE,SAAgC,EAC3C,UAAU,CAAC,EAAE,MAAM,YAAA;IAe5B,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAIzB,QAAQ,CAAC,mBAAmB,IAAI,MAAM,EAAE;IAExC,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAC9D"}
|
@@ -4,11 +4,12 @@ exports.TxHandler = void 0;
|
|
4
4
|
const utils_1 = require("../utils");
|
5
5
|
const constants_1 = require("../constants");
|
6
6
|
class TxHandler {
|
7
|
-
constructor(rpcUrl, localTest, programId = constants_1.SOLAUTO_PROD_PROGRAM) {
|
7
|
+
constructor(rpcUrl, localTest, programId = constants_1.SOLAUTO_PROD_PROGRAM, wsEndpoint) {
|
8
8
|
this.rpcUrl = rpcUrl;
|
9
9
|
this.programId = programId;
|
10
|
+
this.wsEndpoint = wsEndpoint;
|
10
11
|
this.otherSigners = [];
|
11
|
-
const [connection, umi] = (0, utils_1.getSolanaRpcConnection)(this.rpcUrl, this.programId);
|
12
|
+
const [connection, umi] = (0, utils_1.getSolanaRpcConnection)(this.rpcUrl, this.programId, wsEndpoint);
|
12
13
|
this.connection = connection;
|
13
14
|
this.umi = umi;
|
14
15
|
if (!globalThis.LOCAL_TEST && localTest) {
|
@@ -3,7 +3,7 @@ import { Connection, PublicKey, TransactionInstruction } from "@solana/web3.js";
|
|
3
3
|
import { PriorityFeeSetting, TransactionRunType } from "../types";
|
4
4
|
export declare function buildHeliusApiUrl(heliusApiKey: string): string;
|
5
5
|
export declare function buildIronforgeApiUrl(ironforgeApiKey: string): string;
|
6
|
-
export declare function getSolanaRpcConnection(rpcUrl: string, programId?: PublicKey): [Connection, Umi];
|
6
|
+
export declare function getSolanaRpcConnection(rpcUrl: string, programId?: PublicKey, wsEndpoint?: string): [Connection, Umi];
|
7
7
|
export declare function getWrappedInstruction(signer: Signer, ix: TransactionInstruction): WrappedInstruction;
|
8
8
|
export declare function setComputeUnitLimitUmiIx(signer: Signer, maxComputeUnits: number): WrappedInstruction;
|
9
9
|
export declare function setComputeUnitPriceUmiIx(signer: Signer, lamports: number): WrappedInstruction;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"solanaUtils.d.ts","sourceRoot":"","sources":["../../src/utils/solanaUtils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,uBAAuB,EACvB,MAAM,EACN,kBAAkB,EAClB,GAAG,EACH,kBAAkB,EAGnB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAIL,UAAU,EACV,SAAS,EAKT,sBAAsB,EAEvB,MAAM,iBAAiB,CAAC;AAiBzB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAIlE,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,UAErD;AAED,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,MAAM,UAE3D;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,SAAgC,
|
1
|
+
{"version":3,"file":"solanaUtils.d.ts","sourceRoot":"","sources":["../../src/utils/solanaUtils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,uBAAuB,EACvB,MAAM,EACN,kBAAkB,EAClB,GAAG,EACH,kBAAkB,EAGnB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAIL,UAAU,EACV,SAAS,EAKT,sBAAsB,EAEvB,MAAM,iBAAiB,CAAC;AAiBzB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAIlE,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,UAErD;AAED,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,MAAM,UAE3D;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,SAAgC,EAC3C,UAAU,CAAC,EAAE,MAAM,GAClB,CAAC,UAAU,EAAE,GAAG,CAAC,CAWnB;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,sBAAsB,GACzB,kBAAkB,CAMpB;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,GACtB,kBAAkB,CAOpB;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,kBAAkB,CAOpB;AAED,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,SAAS,GACd,kBAAkB,CAUpB;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,SAAS,EACtB,QAAQ,EAAE,MAAM,GACf,kBAAkB,CASpB;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,SAAS,EACvB,SAAS,EAAE,SAAS,GACnB,kBAAkB,CAKpB;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,GACb,kBAAkB,CAKpB;AAED,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,GAAG,EACR,oBAAoB,EAAE,MAAM,EAAE,GAC7B,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAmBpC;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,kBAAkB,EAC/B,gBAAgB,CAAC,EAAE,MAAM,EACzB,gBAAgB,CAAC,EAAE,MAAM,sBAa1B;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,kBAAkB,EAC/B,gBAAgB,CAAC,EAAE,MAAM,EACzB,gBAAgB,CAAC,EAAE,MAAM,sBA2D1B;AAuBD,wBAAsB,6BAA6B,CACjD,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,SAAS,EACpB,WAAW,GAAE,MAAW,GACvB,OAAO,CAAC,GAAG,CAAC,CAKd;AAED,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,GAAG,EACR,EAAE,EAAE,kBAAkB,EACtB,eAAe,EAAE,kBAAkB,EACnC,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAwC7B;AA+CD,wBAAsB,8BAA8B,CAClD,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,UAAU,EACtB,EAAE,EAAE,kBAAkB,EACtB,MAAM,CAAC,EAAE,kBAAkB,EAC3B,eAAe,GAAE,kBAA2C,EAC5D,cAAc,CAAC,EAAE,MAAM,IAAI,GAC1B,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAuEjC"}
|
@@ -37,8 +37,11 @@ function buildHeliusApiUrl(heliusApiKey) {
|
|
37
37
|
function buildIronforgeApiUrl(ironforgeApiKey) {
|
38
38
|
return `https://rpc.ironforge.network/mainnet?apiKey=${ironforgeApiKey}`;
|
39
39
|
}
|
40
|
-
function getSolanaRpcConnection(rpcUrl, programId = constants_1.SOLAUTO_PROD_PROGRAM) {
|
41
|
-
const connection = new web3_js_1.Connection(rpcUrl,
|
40
|
+
function getSolanaRpcConnection(rpcUrl, programId = constants_1.SOLAUTO_PROD_PROGRAM, wsEndpoint) {
|
41
|
+
const connection = new web3_js_1.Connection(rpcUrl, {
|
42
|
+
commitment: "confirmed",
|
43
|
+
wsEndpoint: wsEndpoint,
|
44
|
+
});
|
42
45
|
const umi = (0, umi_bundle_defaults_1.createUmi)(connection).use({
|
43
46
|
install(umi) {
|
44
47
|
umi.programs.add((0, solauto_1.createDynamicSolautoProgram)(programId), false);
|
package/local/.env
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ADDRESS_WHITELIST=5UqsR2PGzbP8pGPbXEeXx86Gjz2N2UFBAuFZUSVydAEe,He4ka5Q3N1UvZikZvykdi47xyk5PoVP2tcQL5sVp31Sz,5LTSvc5LhGcHCitw815j9DcpYrTzKpmyjf31n1Kb6zeR,E5BBsR1sUToPc3jXVwhrK5ttSiy6xhWJDMdQLvkgNppe,DRP5cgM1JpnMySvwg3jqRP2VA2DXSWUjo6VGLkNZ2etb
|
1
|
+
ADDRESS_WHITELIST=5UqsR2PGzbP8pGPbXEeXx86Gjz2N2UFBAuFZUSVydAEe,He4ka5Q3N1UvZikZvykdi47xyk5PoVP2tcQL5sVp31Sz,5LTSvc5LhGcHCitw815j9DcpYrTzKpmyjf31n1Kb6zeR,E5BBsR1sUToPc3jXVwhrK5ttSiy6xhWJDMdQLvkgNppe,DRP5cgM1JpnMySvwg3jqRP2VA2DXSWUjo6VGLkNZ2etb
|
package/package.json
CHANGED
package/src/clients/txHandler.ts
CHANGED
@@ -1,9 +1,6 @@
|
|
1
1
|
import { Signer, Umi } from "@metaplex-foundation/umi";
|
2
2
|
import { Connection, PublicKey } from "@solana/web3.js";
|
3
|
-
import {
|
4
|
-
consoleLog,
|
5
|
-
getSolanaRpcConnection,
|
6
|
-
} from "../utils";
|
3
|
+
import { consoleLog, getSolanaRpcConnection } from "../utils";
|
7
4
|
import { SOLAUTO_PROD_PROGRAM } from "../constants";
|
8
5
|
|
9
6
|
export abstract class TxHandler {
|
@@ -15,9 +12,14 @@ export abstract class TxHandler {
|
|
15
12
|
constructor(
|
16
13
|
public rpcUrl: string,
|
17
14
|
localTest?: boolean,
|
18
|
-
public programId: PublicKey = SOLAUTO_PROD_PROGRAM
|
15
|
+
public programId: PublicKey = SOLAUTO_PROD_PROGRAM,
|
16
|
+
public wsEndpoint?: string
|
19
17
|
) {
|
20
|
-
const [connection, umi] = getSolanaRpcConnection(
|
18
|
+
const [connection, umi] = getSolanaRpcConnection(
|
19
|
+
this.rpcUrl,
|
20
|
+
this.programId,
|
21
|
+
wsEndpoint
|
22
|
+
);
|
21
23
|
this.connection = connection;
|
22
24
|
this.umi = umi;
|
23
25
|
|
package/src/utils/solanaUtils.ts
CHANGED
@@ -57,9 +57,13 @@ export function buildIronforgeApiUrl(ironforgeApiKey: string) {
|
|
57
57
|
|
58
58
|
export function getSolanaRpcConnection(
|
59
59
|
rpcUrl: string,
|
60
|
-
programId: PublicKey = SOLAUTO_PROD_PROGRAM
|
60
|
+
programId: PublicKey = SOLAUTO_PROD_PROGRAM,
|
61
|
+
wsEndpoint?: string
|
61
62
|
): [Connection, Umi] {
|
62
|
-
const connection = new Connection(rpcUrl,
|
63
|
+
const connection = new Connection(rpcUrl, {
|
64
|
+
commitment: "confirmed",
|
65
|
+
wsEndpoint: wsEndpoint,
|
66
|
+
});
|
63
67
|
const umi = createUmi(connection).use({
|
64
68
|
install(umi) {
|
65
69
|
umi.programs.add(createDynamicSolautoProgram(programId), false);
|
@@ -25,8 +25,10 @@ import {
|
|
25
25
|
} from "../../src/transactions/transactionsManager";
|
26
26
|
import { PublicKey } from "@solana/web3.js";
|
27
27
|
import {
|
28
|
+
ALL_SUPPORTED_TOKENS,
|
28
29
|
DEFAULT_MARGINFI_GROUP,
|
29
30
|
MARGINFI_ACCOUNTS,
|
31
|
+
PRICES,
|
30
32
|
SOLAUTO_PROD_PROGRAM,
|
31
33
|
SOLAUTO_TEST_PROGRAM,
|
32
34
|
USDC,
|
@@ -34,6 +36,8 @@ import {
|
|
34
36
|
} from "../../src/constants";
|
35
37
|
import {
|
36
38
|
buildHeliusApiUrl,
|
39
|
+
buildIronforgeApiUrl,
|
40
|
+
fetchTokenPrices,
|
37
41
|
getAllPositionsByAuthority,
|
38
42
|
getQnComputeUnitPriceEstimate,
|
39
43
|
getSolautoManagedPositions,
|
@@ -41,7 +45,6 @@ import {
|
|
41
45
|
retryWithExponentialBackoff,
|
42
46
|
} from "../../src/utils";
|
43
47
|
import { PriorityFeeSetting } from "../../src/types";
|
44
|
-
import { buildIronforgeApiUrl, fromBaseUnit, tokenInfo, USD_DECIMALS } from "../../dist";
|
45
48
|
|
46
49
|
describe("Solauto Marginfi tests", async () => {
|
47
50
|
// const signer = setupTest();
|