@helium/spl-utils 0.0.1

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.
Files changed (99) hide show
  1. package/LICENSE +203 -0
  2. package/lib/cjs/accountFetchCache/accountFetchCache.js +365 -0
  3. package/lib/cjs/accountFetchCache/accountFetchCache.js.map +1 -0
  4. package/lib/cjs/accountFetchCache/eventEmitter.js +37 -0
  5. package/lib/cjs/accountFetchCache/eventEmitter.js.map +1 -0
  6. package/lib/cjs/accountFetchCache/getMultipleAccounts.js +53 -0
  7. package/lib/cjs/accountFetchCache/getMultipleAccounts.js.map +1 -0
  8. package/lib/cjs/accountFetchCache/index.js +20 -0
  9. package/lib/cjs/accountFetchCache/index.js.map +1 -0
  10. package/lib/cjs/accountsResolver/ataResolver.js +35 -0
  11. package/lib/cjs/accountsResolver/ataResolver.js.map +1 -0
  12. package/lib/cjs/accountsResolver/combineResolvers.js +27 -0
  13. package/lib/cjs/accountsResolver/combineResolvers.js.map +1 -0
  14. package/lib/cjs/accountsResolver/individual.js +90 -0
  15. package/lib/cjs/accountsResolver/individual.js.map +1 -0
  16. package/lib/cjs/accountsResolver/utils.js +32 -0
  17. package/lib/cjs/accountsResolver/utils.js.map +1 -0
  18. package/lib/cjs/anchorError.js +265 -0
  19. package/lib/cjs/anchorError.js.map +1 -0
  20. package/lib/cjs/constants.js +8 -0
  21. package/lib/cjs/constants.js.map +1 -0
  22. package/lib/cjs/executeRemoteTxn.js +109 -0
  23. package/lib/cjs/executeRemoteTxn.js.map +1 -0
  24. package/lib/cjs/extendBorsh.js +33 -0
  25. package/lib/cjs/extendBorsh.js.map +1 -0
  26. package/lib/cjs/index.js +35 -0
  27. package/lib/cjs/index.js.map +1 -0
  28. package/lib/cjs/token.js +196 -0
  29. package/lib/cjs/token.js.map +1 -0
  30. package/lib/cjs/transaction.js +308 -0
  31. package/lib/cjs/transaction.js.map +1 -0
  32. package/lib/cjs/utils.js +58 -0
  33. package/lib/cjs/utils.js.map +1 -0
  34. package/lib/esm/src/accountFetchCache/accountFetchCache.js +338 -0
  35. package/lib/esm/src/accountFetchCache/accountFetchCache.js.map +1 -0
  36. package/lib/esm/src/accountFetchCache/eventEmitter.js +33 -0
  37. package/lib/esm/src/accountFetchCache/eventEmitter.js.map +1 -0
  38. package/lib/esm/src/accountFetchCache/getMultipleAccounts.js +32 -0
  39. package/lib/esm/src/accountFetchCache/getMultipleAccounts.js.map +1 -0
  40. package/lib/esm/src/accountFetchCache/index.js +4 -0
  41. package/lib/esm/src/accountFetchCache/index.js.map +1 -0
  42. package/lib/esm/src/accountsResolver/ataResolver.js +22 -0
  43. package/lib/esm/src/accountsResolver/ataResolver.js.map +1 -0
  44. package/lib/esm/src/accountsResolver/combineResolvers.js +14 -0
  45. package/lib/esm/src/accountsResolver/combineResolvers.js.map +1 -0
  46. package/lib/esm/src/accountsResolver/individual.js +72 -0
  47. package/lib/esm/src/accountsResolver/individual.js.map +1 -0
  48. package/lib/esm/src/accountsResolver/utils.js +27 -0
  49. package/lib/esm/src/accountsResolver/utils.js.map +1 -0
  50. package/lib/esm/src/anchorError.js +262 -0
  51. package/lib/esm/src/anchorError.js.map +1 -0
  52. package/lib/esm/src/constants.js +5 -0
  53. package/lib/esm/src/constants.js.map +1 -0
  54. package/lib/esm/src/executeRemoteTxn.js +79 -0
  55. package/lib/esm/src/executeRemoteTxn.js.map +1 -0
  56. package/lib/esm/src/extendBorsh.js +26 -0
  57. package/lib/esm/src/extendBorsh.js.map +1 -0
  58. package/lib/esm/src/index.js +13 -0
  59. package/lib/esm/src/index.js.map +1 -0
  60. package/lib/esm/src/token.js +175 -0
  61. package/lib/esm/src/token.js.map +1 -0
  62. package/lib/esm/src/transaction.js +274 -0
  63. package/lib/esm/src/transaction.js.map +1 -0
  64. package/lib/esm/src/utils.js +44 -0
  65. package/lib/esm/src/utils.js.map +1 -0
  66. package/lib/esm/tsconfig.esm.tsbuildinfo +1 -0
  67. package/lib/types/src/accountFetchCache/accountFetchCache.d.ts +67 -0
  68. package/lib/types/src/accountFetchCache/accountFetchCache.d.ts.map +1 -0
  69. package/lib/types/src/accountFetchCache/eventEmitter.d.ts +19 -0
  70. package/lib/types/src/accountFetchCache/eventEmitter.d.ts.map +1 -0
  71. package/lib/types/src/accountFetchCache/getMultipleAccounts.d.ts +7 -0
  72. package/lib/types/src/accountFetchCache/getMultipleAccounts.d.ts.map +1 -0
  73. package/lib/types/src/accountFetchCache/index.d.ts +4 -0
  74. package/lib/types/src/accountFetchCache/index.d.ts.map +1 -0
  75. package/lib/types/src/accountsResolver/ataResolver.d.ts +9 -0
  76. package/lib/types/src/accountsResolver/ataResolver.d.ts.map +1 -0
  77. package/lib/types/src/accountsResolver/combineResolvers.d.ts +3 -0
  78. package/lib/types/src/accountsResolver/combineResolvers.d.ts.map +1 -0
  79. package/lib/types/src/accountsResolver/individual.d.ts +25 -0
  80. package/lib/types/src/accountsResolver/individual.d.ts.map +1 -0
  81. package/lib/types/src/accountsResolver/utils.d.ts +7 -0
  82. package/lib/types/src/accountsResolver/utils.d.ts.map +1 -0
  83. package/lib/types/src/anchorError.d.ts +9 -0
  84. package/lib/types/src/anchorError.d.ts.map +1 -0
  85. package/lib/types/src/constants.d.ts +5 -0
  86. package/lib/types/src/constants.d.ts.map +1 -0
  87. package/lib/types/src/executeRemoteTxn.d.ts +23 -0
  88. package/lib/types/src/executeRemoteTxn.d.ts.map +1 -0
  89. package/lib/types/src/extendBorsh.d.ts +3 -0
  90. package/lib/types/src/extendBorsh.d.ts.map +1 -0
  91. package/lib/types/src/index.d.ts +13 -0
  92. package/lib/types/src/index.d.ts.map +1 -0
  93. package/lib/types/src/token.d.ts +16 -0
  94. package/lib/types/src/token.d.ts.map +1 -0
  95. package/lib/types/src/transaction.d.ts +26 -0
  96. package/lib/types/src/transaction.d.ts.map +1 -0
  97. package/lib/types/src/utils.d.ts +12 -0
  98. package/lib/types/src/utils.d.ts.map +1 -0
  99. package/package.json +44 -0
@@ -0,0 +1,26 @@
1
+ /// <reference types="node" />
2
+ import { AnchorProvider, Program } from "@project-serum/anchor";
3
+ import { Commitment, Connection, Finality, PublicKey, SendOptions, SignatureStatus, Signer, TransactionInstruction, TransactionSignature } from "@solana/web3.js";
4
+ export interface InstructionResult<A> {
5
+ instructions: TransactionInstruction[];
6
+ signers: Signer[];
7
+ output: A;
8
+ }
9
+ export interface BigInstructionResult<A> {
10
+ instructions: TransactionInstruction[][];
11
+ signers: Signer[][];
12
+ output: A;
13
+ }
14
+ export declare function sendInstructions(provider: AnchorProvider, instructions: TransactionInstruction[], signers?: Signer[], payer?: PublicKey, commitment?: Commitment, idlErrors?: Map<number, string>): Promise<string>;
15
+ export declare function sendMultipleInstructions(provider: AnchorProvider, instructionGroups: TransactionInstruction[][], signerGroups: Signer[][], payer?: PublicKey, finality?: Finality, idlErrors?: Map<number, string>): Promise<Iterable<string>>;
16
+ export declare function execute<Output>(program: Program<any>, provider: AnchorProvider, command: InstructionResult<Output>, payer?: PublicKey, commitment?: Commitment): Promise<Output & {
17
+ txid?: string;
18
+ }>;
19
+ export declare function executeBig<Output>(program: Program, provider: AnchorProvider, command: BigInstructionResult<Output>, payer?: PublicKey, finality?: Finality): Promise<Output & {
20
+ txids?: string[];
21
+ }>;
22
+ export declare const awaitTransactionSignatureConfirmation: (txid: TransactionSignature, timeout: number, connection: Connection, commitment?: Commitment, queryStatus?: boolean) => Promise<SignatureStatus | null | void>;
23
+ export declare function sendAndConfirmWithRetry(connection: Connection, txn: Buffer, sendOptions: SendOptions, commitment: Commitment, timeout?: number): Promise<{
24
+ txid: string;
25
+ }>;
26
+ //# sourceMappingURL=transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/transaction.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAO,MAAM,uBAAuB,CAAC;AACrE,OAAO,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,SAAS,EAET,WAAW,EAEX,eAAe,EACf,MAAM,EAGN,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAkBzB,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,YAAY,EAAE,sBAAsB,EAAE,CAAC;IACvC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,CAAC,CAAC;CACX;AAED,MAAM,WAAW,oBAAoB,CAAC,CAAC;IACrC,YAAY,EAAE,sBAAsB,EAAE,EAAE,CAAC;IACzC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC;CACX;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,cAAc,EACxB,YAAY,EAAE,sBAAsB,EAAE,EACtC,OAAO,GAAE,MAAM,EAAO,EACtB,KAAK,GAAE,SAAqC,EAC5C,UAAU,GAAE,UAAwB,EACpC,SAAS,GAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAa,GACzC,OAAO,CAAC,MAAM,CAAC,CA2BjB;AAQD,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,cAAc,EACxB,iBAAiB,EAAE,sBAAsB,EAAE,EAAE,EAC7C,YAAY,EAAE,MAAM,EAAE,EAAE,EACxB,KAAK,CAAC,EAAE,SAAS,EACjB,QAAQ,GAAE,QAAsB,EAChC,SAAS,GAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAa,GACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CA2D3B;AAED,wBAAsB,OAAO,CAAC,MAAM,EAClC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EACrB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAClC,KAAK,GAAE,SAAqC,EAC5C,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,MAAM,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAoBrC;AAED,wBAAsB,UAAU,CAAC,MAAM,EACrC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,oBAAoB,CAAC,MAAM,CAAC,EACrC,KAAK,GAAE,SAAqC,EAC5C,QAAQ,CAAC,EAAE,QAAQ,GAClB,OAAO,CAAC,MAAM,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAuBxC;AAMD,eAAO,MAAM,qCAAqC,SAC1C,oBAAoB,WACjB,MAAM,cACH,UAAU,eACV,UAAU,4BAErB,QAAQ,eAAe,GAAG,IAAI,GAAG,IAAI,CAuFvC,CAAC;AAsCF,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,OAAO,SAAkB,GACxB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA0D3B"}
@@ -0,0 +1,12 @@
1
+ import BN from "bn.js";
2
+ import { Mint } from "@solana/spl-token";
3
+ export declare type Truthy<T> = T extends false | "" | 0 | null | undefined ? never : T;
4
+ export declare const truthy: <T>(value: T) => value is Truthy<T>;
5
+ export declare function toNumber(numberOrBn: BN | number, mintOrDecimals: Mint | number): number;
6
+ export declare function amountAsNum(amount: BN, mintOrDecimals: Mint | number): number;
7
+ export declare function toBN(numberOrBn: BN | number, mintOrDecimals: Mint | number): BN;
8
+ export declare function supplyAsNum(mint: Mint): number;
9
+ export declare function numberWithCommas(x: number, decimals?: number): string;
10
+ export declare function roundToDecimals(num: number, decimals: number): number;
11
+ export declare function humanReadable(bn: BN, mint: Mint): string;
12
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,OAAO,CAAC;AACvB,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC,oBAAY,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AAEhF,eAAO,MAAM,MAAM,qCAA+C,CAAC;AAEnE,wBAAgB,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,MAAM,EAAE,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAMvF;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAQ7E;AAED,wBAAgB,IAAI,CAClB,UAAU,EAAE,EAAE,GAAG,MAAM,EACvB,cAAc,EAAE,IAAI,GAAG,MAAM,GAC5B,EAAE,CAgBJ;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAE9C;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM,CAIxE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAErE;AAGD,wBAAgB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CAIxD"}
package/package.json ADDED
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "@helium/spl-utils",
3
+ "version": "0.0.1",
4
+ "description": "Utils shared across spl suite",
5
+ "publishConfig": {
6
+ "access": "public",
7
+ "registry": "https://registry.npmjs.org/"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/StrataFoundation/strata"
12
+ },
13
+ "main": "./lib/cjs/index.js",
14
+ "module": "./lib/esm/src/index.js",
15
+ "types": "./lib/types/src/index.d.ts",
16
+ "sideEffects": false,
17
+ "files": [
18
+ "lib"
19
+ ],
20
+ "exports": {
21
+ "import": "./lib/esm/src/index.js",
22
+ "require": "./lib/cjs/index.js",
23
+ "types": "./lib/types/src/index.d.ts"
24
+ },
25
+ "scripts": {
26
+ "format": "prettier --write \"src/**/*.{ts,tsx}\"",
27
+ "precommit": "npx git-format-staged -f 'prettier --ignore-unknown --stdin --stdin-filepath \"{}\"' .",
28
+ "clean": "npx shx mkdir -p lib && npx shx rm -rf lib",
29
+ "package": "npx shx mkdir -p lib/cjs lib/esm",
30
+ "prebuild": "npm run clean && npm run package"
31
+ },
32
+ "dependencies": {
33
+ "@project-serum/anchor": "0.24.2",
34
+ "@solana/web3.js": "^1.43.4",
35
+ "bn.js": "^5.2.0",
36
+ "borsh": "^0.7.0",
37
+ "bs58": "^4.0.1"
38
+ },
39
+ "devDependencies": {
40
+ "ts-loader": "^9.2.3",
41
+ "typescript": "^4.3.4"
42
+ },
43
+ "gitHead": "fb70ce1ecb6891598ad01da0052034806b1a5c64"
44
+ }