@debridge-finance/solana-utils 4.5.2 → 4.5.5

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,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import { AccountInfo, Connection, PublicKey, Transaction, TransactionInstruction } from "@solana/web3.js";
2
+ import { AccountInfo, Connection, PublicKey, SimulatedTransactionAccountInfo, Transaction, TransactionInstruction, VersionedTransaction } from "@solana/web3.js";
3
3
  import BN from "bn.js";
4
4
  import { Buffer } from "buffer";
5
5
  import { SolanaPubkey } from "./interfaces";
@@ -9,6 +9,28 @@ declare enum AccountState {
9
9
  Initialized = 1,
10
10
  Frozen = 2
11
11
  }
12
+ type AccountBalance = {
13
+ balance: number;
14
+ spl?: {
15
+ mint: PublicKey;
16
+ owner: PublicKey;
17
+ balance: number;
18
+ };
19
+ };
20
+ type SplDiff = {
21
+ mint: PublicKey;
22
+ owner: PublicKey;
23
+ preBalance: number;
24
+ postBalance: number;
25
+ diff: number;
26
+ };
27
+ type AccountBalanceDiff = {
28
+ pubKey: PublicKey;
29
+ preBalance: number;
30
+ postBalance: number;
31
+ diff: number;
32
+ spl?: SplDiff;
33
+ };
12
34
  type RawAccount = {
13
35
  mint: PublicKey;
14
36
  owner: PublicKey;
@@ -124,5 +146,9 @@ export declare function updateWsolBalance(connection: Connection, amount: Amount
124
146
  * @returns true if account exists
125
147
  */
126
148
  export declare function checkIfAssociatedWalletExists(connection: Connection, mintAccount: PublicKey, originalWallet: PublicKey): Promise<boolean>;
149
+ export declare function getTransactionAccountsForSimulationDiff(connection: Connection, tx: VersionedTransaction | Transaction): Promise<string[]>;
150
+ export declare function parseMultipleAccounts(accounts: (AccountInfo<Buffer> | null)[] | (SimulatedTransactionAccountInfo | null)[]): AccountBalance[];
151
+ export declare function getSplDiff(pre: AccountBalance["spl"], post: AccountBalance["spl"]): SplDiff;
152
+ export declare function getTransactionDiff(connection: Connection, tx: VersionedTransaction, txAccounts?: PublicKey[]): Promise<Map<string, AccountBalanceDiff>>;
127
153
  export {};
128
154
  //# sourceMappingURL=spl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spl.d.ts","sourceRoot":"","sources":["../../src/spl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spl.d.ts","sourceRoot":"","sources":["../../src/spl.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@debridge-finance/solana-utils",
3
3
  "description": "Common utils package to power communication with Solana contracts at deBridge",
4
- "version": "4.5.2",
4
+ "version": "4.5.5",
5
5
  "author": "deBridge",
6
6
  "license": "BUSL-1.1",
7
7
  "homepage": "https://debridge.finance",
@@ -30,9 +30,10 @@
30
30
  "README.md"
31
31
  ],
32
32
  "scripts": {
33
+ "test:calculate-submission-id": "mocha -r ts-node/register -b -t 200000 ./tests/calculate-submission-id.test.ts",
33
34
  "test:crypto": "mocha -r ts-node/register -b -t 200000 ./tests/crypto.test.ts",
34
35
  "test:accounts": "mocha -r ts-node/register -b -t 200000 ./tests/accounts.test.ts",
35
- "test:spl": "mocha -r ts-node/register -b -t 200000 ./tests/spl.test.ts",
36
+ "test:spl": "mocha -r dotenv/config -r ts-node/register -b -t 200000 ./tests/spl.test.ts",
36
37
  "lint:fix": "prettier src/** tests/** -w",
37
38
  "lint": "prettier src/** tests/** --check",
38
39
  "build:esm": "tsc -p tsconfig.esm.json",
@@ -42,6 +43,7 @@
42
43
  },
43
44
  "dependencies": {
44
45
  "bn.js": "5.2.1",
46
+ "bs58": "5.0.0",
45
47
  "buffer": "6.0.3",
46
48
  "js-sha3": "0.8.0",
47
49
  "micro-memoize": "^4.1.2"
@@ -51,13 +53,14 @@
51
53
  "@rollup/plugin-node-resolve": "^14.1.0",
52
54
  "@rollup/plugin-replace": "^4.0.0",
53
55
  "@rollup/plugin-typescript": "^8.5.0",
54
- "@types/bn.js": "^5.1.1",
56
+ "@types/bn.js": "^5.1.5",
55
57
  "@types/chai": "^4.3.3",
56
58
  "@types/mocha": "^9.1.1",
57
59
  "@types/node": "^18.7.18",
58
60
  "@typescript-eslint/eslint-plugin": "^5.37.0",
59
61
  "@typescript-eslint/parser": "^5.37.0",
60
62
  "assert": "^2.0.0",
63
+ "dotenv": "^16.4.4",
61
64
  "eslint": "^8.23.1",
62
65
  "eslint-config-prettier": "^8.5.0",
63
66
  "mocha": "^10.0.0",
@@ -71,6 +74,7 @@
71
74
  "peerDependencies": {
72
75
  "@solana/buffer-layout": "^4.0.0",
73
76
  "@solana/buffer-layout-utils": "^0.2.0",
77
+ "@solana/spl-token": "^0.4.0",
74
78
  "@solana/web3.js": "^1.73"
75
79
  }
76
80
  }