@smithii_io/mixoor 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 (58) hide show
  1. package/README.md +38 -0
  2. package/dist/src/index.js +1484 -0
  3. package/dist/src/index.js.map +1 -0
  4. package/dist/src/index.mjs +1363 -0
  5. package/dist/src/index.mjs.map +1 -0
  6. package/dist/types/src/generated/accounts/index.d.ts +11 -0
  7. package/dist/types/src/generated/accounts/index.d.ts.map +1 -0
  8. package/dist/types/src/generated/accounts/nullifierAccount.d.ts +33 -0
  9. package/dist/types/src/generated/accounts/nullifierAccount.d.ts.map +1 -0
  10. package/dist/types/src/generated/accounts/pool.d.ts +54 -0
  11. package/dist/types/src/generated/accounts/pool.d.ts.map +1 -0
  12. package/dist/types/src/generated/accounts/vault.d.ts +28 -0
  13. package/dist/types/src/generated/accounts/vault.d.ts.map +1 -0
  14. package/dist/types/src/generated/errors/index.d.ts +9 -0
  15. package/dist/types/src/generated/errors/index.d.ts.map +1 -0
  16. package/dist/types/src/generated/errors/mixoor.d.ts +46 -0
  17. package/dist/types/src/generated/errors/mixoor.d.ts.map +1 -0
  18. package/dist/types/src/generated/index.d.ts +13 -0
  19. package/dist/types/src/generated/index.d.ts.map +1 -0
  20. package/dist/types/src/generated/instructions/deposit.d.ts +88 -0
  21. package/dist/types/src/generated/instructions/deposit.d.ts.map +1 -0
  22. package/dist/types/src/generated/instructions/index.d.ts +11 -0
  23. package/dist/types/src/generated/instructions/index.d.ts.map +1 -0
  24. package/dist/types/src/generated/instructions/initializePool.d.ts +81 -0
  25. package/dist/types/src/generated/instructions/initializePool.d.ts.map +1 -0
  26. package/dist/types/src/generated/instructions/transfer.d.ts +120 -0
  27. package/dist/types/src/generated/instructions/transfer.d.ts.map +1 -0
  28. package/dist/types/src/generated/programs/index.d.ts +9 -0
  29. package/dist/types/src/generated/programs/index.d.ts.map +1 -0
  30. package/dist/types/src/generated/programs/mixoor.d.ts +34 -0
  31. package/dist/types/src/generated/programs/mixoor.d.ts.map +1 -0
  32. package/dist/types/src/generated/shared/index.d.ts +50 -0
  33. package/dist/types/src/generated/shared/index.d.ts.map +1 -0
  34. package/dist/types/src/generated/types/assetType.d.ts +17 -0
  35. package/dist/types/src/generated/types/assetType.d.ts.map +1 -0
  36. package/dist/types/src/generated/types/commitmentInserted.d.ts +18 -0
  37. package/dist/types/src/generated/types/commitmentInserted.d.ts.map +1 -0
  38. package/dist/types/src/generated/types/index.d.ts +11 -0
  39. package/dist/types/src/generated/types/index.d.ts.map +1 -0
  40. package/dist/types/src/generated/types/rootEntry.d.ts +20 -0
  41. package/dist/types/src/generated/types/rootEntry.d.ts.map +1 -0
  42. package/dist/types/src/index.d.ts +3 -0
  43. package/dist/types/src/index.d.ts.map +1 -0
  44. package/dist/types/src/utils/circuit.d.ts +32 -0
  45. package/dist/types/src/utils/circuit.d.ts.map +1 -0
  46. package/dist/types/src/utils/crypto.d.ts +4 -0
  47. package/dist/types/src/utils/crypto.d.ts.map +1 -0
  48. package/dist/types/src/utils/index.d.ts +5 -0
  49. package/dist/types/src/utils/index.d.ts.map +1 -0
  50. package/dist/types/src/utils/merkle.d.ts +33 -0
  51. package/dist/types/src/utils/merkle.d.ts.map +1 -0
  52. package/dist/types/src/utils/pda.d.ts +29 -0
  53. package/dist/types/src/utils/pda.d.ts.map +1 -0
  54. package/dist/types/test/_constants.d.ts +4 -0
  55. package/dist/types/test/_constants.d.ts.map +1 -0
  56. package/dist/types/test/_setup.d.ts +49 -0
  57. package/dist/types/test/_setup.d.ts.map +1 -0
  58. package/package.json +87 -0
@@ -0,0 +1,32 @@
1
+ import { Address } from '@solana/kit';
2
+ export declare function poseidonHash(inputs: Uint8Array[]): Promise<Uint8Array>;
3
+ export declare function generateCommitment(secret: Uint8Array, nullifier: Uint8Array, amount: bigint, poolId: Address): Promise<Uint8Array>;
4
+ export declare function generateNullifier(nullifier: Uint8Array, poolId: Address): Promise<Uint8Array>;
5
+ export interface ProofInput {
6
+ secret: Uint8Array;
7
+ nullifier: Uint8Array;
8
+ amount: number;
9
+ pathElements: Uint8Array[];
10
+ pathIndices: number[];
11
+ recipient: Uint8Array;
12
+ relayer: Uint8Array;
13
+ fee: number;
14
+ refund: number;
15
+ root: Uint8Array;
16
+ poolAddress: Address;
17
+ }
18
+ export interface ProofOutput {
19
+ proof_a: Uint8Array;
20
+ proof_b: Uint8Array;
21
+ proof_c: Uint8Array;
22
+ }
23
+ export type ProofData = {
24
+ proofA: Uint8Array;
25
+ proofB: Uint8Array;
26
+ proofC: Uint8Array;
27
+ };
28
+ export declare function generateProof(input: ProofInput): Promise<{
29
+ proofData: ProofData;
30
+ publicInputs: Uint8Array[];
31
+ }>;
32
+ //# sourceMappingURL=circuit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circuit.d.ts","sourceRoot":"","sources":["../../../../src/utils/circuit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAqB,MAAM,aAAa,CAAC;AA+BzD,wBAAsB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAgB5E;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,UAAU,EACrB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,UAAU,CAAC,CAiCrB;AAED,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,UAAU,EACrB,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,UAAU,CAAC,CAGrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,UAAU,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC;IACtB,OAAO,EAAE,UAAU,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,UAAU,CAAC;CACrB;AAuDD,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF,wBAAsB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC;IAC9D,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,UAAU,EAAE,CAAC;CAC5B,CAAC,CAqFD"}
@@ -0,0 +1,4 @@
1
+ export declare function randomBytes(size: number): Uint8Array;
2
+ export declare function toHex(bytes: Uint8Array): string;
3
+ export declare function fromHex(hex: string): Uint8Array;
4
+ //# sourceMappingURL=crypto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../src/utils/crypto.ts"],"names":[],"mappings":"AAEA,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAEpD;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAE/C;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAE/C"}
@@ -0,0 +1,5 @@
1
+ export * from './circuit';
2
+ export * from './crypto';
3
+ export * from './merkle';
4
+ export * from './pda';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { Address } from '@solana/kit';
2
+ import { Client } from '../../test/_setup';
3
+ export declare class MerkleTree {
4
+ private levels;
5
+ private _leaves;
6
+ private _zeros;
7
+ private poseidon;
8
+ private initialized;
9
+ constructor(levels: number);
10
+ initialize(): Promise<void>;
11
+ private hash;
12
+ private uint8ArrayToBigInt;
13
+ private bigIntToUint8Array;
14
+ insert(leaf: Uint8Array): void;
15
+ root(): Uint8Array;
16
+ getProof(index: number): {
17
+ pathElements: Uint8Array[];
18
+ pathIndices: number[];
19
+ };
20
+ }
21
+ /**
22
+ * The Merkle tree is now OFF-CHAIN (event-based, like Tornado Cash)
23
+ *
24
+ * In production:
25
+ * 1. Listen to CommitmentInserted events from deposits
26
+ * 2. Build local Merkle tree from events
27
+ * 3. Use local tree's root in ZK proofs
28
+ * 4. The root should match one in Pool's root_history
29
+ *
30
+ * For testing: Just use your local MerkleTree.root()
31
+ */
32
+ export declare function extractMerkleRootFromAccount(_client: Client, _poolAddress: Address): Uint8Array;
33
+ //# sourceMappingURL=merkle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merkle.d.ts","sourceRoot":"","sources":["../../../../src/utils/merkle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAe;IAE7B,OAAO,CAAC,QAAQ,CAAM;IACtB,OAAO,CAAC,WAAW,CAAkB;gBAEzB,MAAM,EAAE,MAAM;IAMpB,UAAU;IAiBhB,OAAO,CAAC,IAAI;IAoBZ,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,kBAAkB;IAU1B,MAAM,CAAC,IAAI,EAAE,UAAU;IAOvB,IAAI,IAAI,UAAU;IAgClB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG;QACvB,YAAY,EAAE,UAAU,EAAE,CAAC;QAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;KACvB;CA4CF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,OAAO,GACpB,UAAU,CAKZ"}
@@ -0,0 +1,29 @@
1
+ import { Address, ProgramDerivedAddress } from '@solana/kit';
2
+ export type PoolSeeds = {
3
+ /** The prefix string SEED. */
4
+ seed?: string;
5
+ /** The mint address */
6
+ mint: Address;
7
+ };
8
+ export declare function findPoolAddress(seeds: PoolSeeds, config?: {
9
+ programAddress?: Address | undefined;
10
+ }): Promise<ProgramDerivedAddress>;
11
+ export type MerkleTreeSeeds = {
12
+ /** The prefix string SEED. */
13
+ seed?: string;
14
+ /** The mint address */
15
+ pool: Address;
16
+ };
17
+ export declare function findMerkleTreeAddress(seeds: MerkleTreeSeeds, config?: {
18
+ programAddress?: Address | undefined;
19
+ }): Promise<ProgramDerivedAddress>;
20
+ export type VaultSeeds = {
21
+ /** The prefix string SEED. */
22
+ seed?: string;
23
+ /** The mint address */
24
+ pool: Address;
25
+ };
26
+ export declare function findVaultAddress(seeds: MerkleTreeSeeds, config?: {
27
+ programAddress?: Address | undefined;
28
+ }): Promise<ProgramDerivedAddress>;
29
+ //# sourceMappingURL=pda.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pda.d.ts","sourceRoot":"","sources":["../../../../src/utils/pda.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAGP,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAGrB,MAAM,MAAM,SAAS,GAAG;IACtB,8BAA8B;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uBAAuB;IACvB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,wBAAsB,eAAe,CACnC,KAAK,EAAE,SAAS,EAChB,MAAM,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAAO,GACpD,OAAO,CAAC,qBAAqB,CAAC,CAOhC;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,8BAA8B;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uBAAuB;IACvB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,eAAe,EACtB,MAAM,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAAO,GACpD,OAAO,CAAC,qBAAqB,CAAC,CAOhC;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,8BAA8B;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uBAAuB;IACvB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,eAAe,EACtB,MAAM,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAAO,GACpD,OAAO,CAAC,qBAAqB,CAAC,CAOhC"}
@@ -0,0 +1,4 @@
1
+ export declare const WRAPPED_SOL_MINT_TOKEN_PROGRAM: import("@solana/kit").Address<"So11111111111111111111111111111111111111112">;
2
+ export declare const FEE_COLLECTOR_ADDRESS: import("@solana/kit").Address<"4kg8oh3jdNtn7j2wcS7TrUua31AgbLzDVkBZgTAe44aF">;
3
+ export declare const LAMPORTS_PER_SOL: bigint;
4
+ //# sourceMappingURL=_constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_constants.d.ts","sourceRoot":"","sources":["../../../test/_constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,8BAA8B,8EAE1C,CAAC;AAEF,eAAO,MAAM,qBAAqB,+EAEjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAwB,CAAC"}
@@ -0,0 +1,49 @@
1
+ import { Address, Commitment, KeyPairSigner, Rpc, RpcSubscriptions, SolanaRpcApi, SolanaRpcSubscriptionsApi, TransactionMessage, TransactionMessageWithFeePayer, TransactionSigner } from '@solana/kit';
2
+ import { ProofData } from '../src';
3
+ export type Client = {
4
+ rpc: Rpc<SolanaRpcApi>;
5
+ rpcSubscriptions: RpcSubscriptions<SolanaRpcSubscriptionsApi>;
6
+ };
7
+ export declare const createDefaultSolanaClient: () => Client;
8
+ export declare const createDevnetClient: () => Client;
9
+ export declare const generateKeyPairSignerWithSol: (client: Client, putativeLamports?: bigint) => Promise<KeyPairSigner<string>>;
10
+ export declare const airdropSolToAddress: (client: Client, receiver: Address, // 5 sol
11
+ putativeLamports?: bigint) => Promise<void>;
12
+ export declare function loadKeypairFromFile(filePath: string): Promise<KeyPairSigner<string>>;
13
+ export declare const createDefaultTransaction: (client: Client, feePayer: TransactionSigner) => Promise<import("@solana/kit").ExcludeTransactionMessageLifetime<Omit<Omit<Readonly<{
14
+ instructions: readonly import("@solana/kit").Instruction<string, readonly (import("@solana/kit").AccountMeta<string> | import("@solana/kit").AccountLookupMeta<string, string>)[]>[];
15
+ version: 0;
16
+ }>, "instructions"> & import("@solana/kit").TransactionMessageWithinSizeLimit & {
17
+ instructions: readonly [];
18
+ }, "feePayer"> & import("@solana/kit").TransactionMessageWithFeePayerSigner<string, TransactionSigner<string>>> & import("@solana/kit").TransactionMessageWithBlockhashLifetime>;
19
+ export declare const signAndSendTransaction: (client: Client, transactionMessage: TransactionMessage & TransactionMessageWithFeePayer, commitment?: Commitment) => Promise<import("@solana/kit").Signature>;
20
+ export declare const getBalance: (client: Client, address: Address) => Promise<import("@solana/kit").Lamports>;
21
+ export declare function loadDefaultKeypair(): Promise<KeyPairSigner<string>>;
22
+ export declare function loadReceiverKeypair(): Promise<KeyPairSigner<string>>;
23
+ export declare function loadRelayerKeypair(): Promise<KeyPairSigner<string>>;
24
+ export declare const getTokenBalance: (client: Client, tokenAccount: Address) => Promise<Readonly<{
25
+ amount: import("@solana/kit").StringifiedBigInt;
26
+ decimals: number;
27
+ uiAmount: number | null;
28
+ uiAmountString: import("@solana/kit").StringifiedNumber;
29
+ }>>;
30
+ export declare const createSolPoolForAuthority: (client: Client) => Promise<{
31
+ authority: Address;
32
+ }>;
33
+ export declare const depositSolPoolForAuthority: (client: Client, amount: bigint, merkleTree: import("../src").MerkleTree) => Promise<{
34
+ depositor: Address;
35
+ commitment: Uint8Array;
36
+ secret: Uint8Array;
37
+ nullifier: Uint8Array;
38
+ }>;
39
+ export declare const transferForAuthority: (client: Client, ixArgs: {
40
+ relayerFee: number;
41
+ recipientAmount: number;
42
+ nullifierHash: Uint8Array;
43
+ proofData: ProofData;
44
+ publicInputs: Uint8Array[];
45
+ mint: Address;
46
+ }) => Promise<{
47
+ relayer: Address;
48
+ }>;
49
+ //# sourceMappingURL=_setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_setup.d.ts","sourceRoot":"","sources":["../../../test/_setup.ts"],"names":[],"mappings":"AACA,OAAO,EACL,OAAO,EAMP,UAAU,EAOV,aAAa,EAGb,GAAG,EACH,gBAAgB,EAKhB,YAAY,EACZ,yBAAyB,EACzB,kBAAkB,EAClB,8BAA8B,EAC9B,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAOrB,OAAO,EAOL,SAAS,EACV,MAAM,QAAQ,CAAC;AAGhB,MAAM,MAAM,MAAM,GAAG;IACnB,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;IACvB,gBAAgB,EAAE,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;CAC/D,CAAC;AAEF,eAAO,MAAM,yBAAyB,QAAO,MAI5C,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAO,MAOrC,CAAC;AAEF,eAAO,MAAM,4BAA4B,GACvC,QAAQ,MAAM,EACd,mBAAkB,MAAuB,mCAS1C,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,MAAM,EACd,UAAU,OAAO,EAAE,QAAQ;AAC3B,mBAAkB,MAAuB,kBAO1C,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAWhC;AAED,eAAO,MAAM,wBAAwB,GACnC,QAAQ,MAAM,EACd,UAAU,iBAAiB;;;;;gLAU5B,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,QAAQ,MAAM,EACd,oBAAoB,kBAAkB,GAAG,8BAA8B,EAEvE,aAAY,UAAwB,6CAgBrC,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,QAAQ,MAAM,EAAE,SAAS,OAAO,4CAEvD,CAAC;AAEX,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAEzE;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAE1E;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAEzE;AAED,eAAO,MAAM,eAAe,GAAU,QAAQ,MAAM,EAAE,cAAc,OAAO;;;;;GAKlE,CAAC;AAIV,eAAO,MAAM,yBAAyB,GACpC,QAAQ,MAAM,KAEb,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,CAiBhC,CAAC;AAEF,eAAO,MAAM,0BAA0B,GACrC,QAAQ,MAAM,EACd,QAAQ,MAAM,EACd,YAAY,OAAO,QAAQ,EAAE,UAAU,KACtC,OAAO,CAAC;IACT,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,UAAU,CAAC;CACvB,CA0CA,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,MAAM,EACd,QAAQ;IACN,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,UAAU,CAAC;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC;CACf,KACA,OAAO,CAAC;IACT,OAAO,EAAE,OAAO,CAAC;CAClB,CA0DA,CAAC"}
package/package.json ADDED
@@ -0,0 +1,87 @@
1
+ {
2
+ "name": "@smithii_io/mixoor",
3
+ "version": "0.0.1",
4
+ "description": "JavaScript client for the Mixoor program",
5
+ "sideEffects": false,
6
+ "module": "./dist/src/index.mjs",
7
+ "main": "./dist/src/index.js",
8
+ "types": "./dist/types/index.d.ts",
9
+ "type": "commonjs",
10
+ "exports": {
11
+ ".": {
12
+ "types": "./dist/types/index.d.ts",
13
+ "import": "./dist/src/index.mjs",
14
+ "require": "./dist/src/index.js"
15
+ }
16
+ },
17
+ "files": [
18
+ "./dist/src",
19
+ "./dist/types"
20
+ ],
21
+ "scripts": {
22
+ "build": "rimraf dist && tsup && tsc -p ./tsconfig.declarations.json",
23
+ "build:docs": "typedoc",
24
+ "test": "ava",
25
+ "build:test": "pnpm build && pnpm test",
26
+ "lint": "eslint --ext js,ts,tsx src",
27
+ "lint:fix": "eslint --fix --ext js,ts,tsx src",
28
+ "format": "prettier --check src test",
29
+ "format:fix": "prettier --write src test",
30
+ "prepublishOnly": "pnpm build"
31
+ },
32
+ "publishConfig": {
33
+ "access": "public",
34
+ "registry": "https://registry.npmjs.org"
35
+ },
36
+ "repository": {
37
+ "type": "git",
38
+ "url": "git+https://github.com/smithii/mixoor.git"
39
+ },
40
+ "bugs": {
41
+ "url": "https://github.com/smithii/mixoor/issues"
42
+ },
43
+ "homepage": "https://github.com/smithii/mixoor#readme",
44
+ "license": "MIT",
45
+ "devDependencies": {
46
+ "@ava/typescript": "^4.1.0",
47
+ "@solana/eslint-config-solana": "^3.0.3",
48
+ "@types/node": "^20",
49
+ "@typescript-eslint/eslint-plugin": "^7.16.1",
50
+ "@typescript-eslint/parser": "^7.16.1",
51
+ "ava": "^6.1.3",
52
+ "eslint": "^8.57.0",
53
+ "prettier": "^3.3.3",
54
+ "rimraf": "^5.0.5",
55
+ "tsup": "^8.1.2",
56
+ "typedoc": "^0.25.12",
57
+ "typescript": "^5.5.3"
58
+ },
59
+ "ava": {
60
+ "nodeArguments": [
61
+ "--no-warnings"
62
+ ],
63
+ "typescript": {
64
+ "compile": false,
65
+ "rewritePaths": {
66
+ "test/": "dist/test/"
67
+ }
68
+ },
69
+ "timeout": "2m",
70
+ "workerThreads": false
71
+ },
72
+ "packageManager": "pnpm@9.1.0",
73
+ "dependencies": {
74
+ "@solana-program/compute-budget": "^0.11.0",
75
+ "@solana-program/token": "^0.9.0",
76
+ "@solana-program/token-2022": "^0.6.1",
77
+ "@solana/compat": "^5.0.0",
78
+ "@solana/kit": "^5.0.0",
79
+ "@solana/spl-account-compression": "^0.2.1",
80
+ "@solana/web3.js": "^1.98.4",
81
+ "@types/circomlibjs": "^0.1.6",
82
+ "@types/snarkjs": "^0.7.9",
83
+ "circomlibjs": "^0.1.7",
84
+ "ffjavascript": "^0.3.1",
85
+ "snarkjs": "^0.7.5"
86
+ }
87
+ }