@interest-protocol/vortex-sdk 4.1.0 → 4.2.0
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/constants.d.ts +4 -4
- package/dist/constants.d.ts.map +1 -1
- package/dist/deposit-with-account.d.ts +1 -1
- package/dist/deposit-with-account.d.ts.map +1 -1
- package/dist/deposit.d.ts +1 -1
- package/dist/deposit.d.ts.map +1 -1
- package/dist/entities/keypair.d.ts +2 -0
- package/dist/entities/keypair.d.ts.map +1 -1
- package/dist/index.js +44 -24
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +44 -24
- package/dist/index.mjs.map +1 -1
- package/dist/utils/deposit.d.ts +4 -3
- package/dist/utils/deposit.d.ts.map +1 -1
- package/dist/utils/index.d.ts +8 -5
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/withdraw.d.ts +4 -3
- package/dist/utils/withdraw.d.ts.map +1 -1
- package/dist/vortex.types.d.ts +11 -6
- package/dist/vortex.types.d.ts.map +1 -1
- package/dist/withdraw-with-account.d.ts +1 -1
- package/dist/withdraw-with-account.d.ts.map +1 -1
- package/dist/withdraw.d.ts +1 -1
- package/dist/withdraw.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/constants.ts +5 -5
- package/src/deposit-with-account.ts +5 -3
- package/src/deposit.ts +4 -2
- package/src/entities/keypair.ts +17 -0
- package/src/utils/deposit.ts +10 -6
- package/src/utils/index.ts +13 -11
- package/src/utils/withdraw.ts +9 -6
- package/src/vortex.types.ts +13 -6
- package/src/withdraw-with-account.ts +4 -2
- package/src/withdraw.ts +4 -2
package/dist/utils/deposit.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Transaction } from '@mysten/sui/transactions';
|
|
2
2
|
import { Utxo } from '../entities/utxo';
|
|
3
|
+
import { GetMerklePathFn } from '../vortex.types';
|
|
3
4
|
import { Vortex } from '../vortex';
|
|
4
5
|
import { VortexKeypair as VortexKeypairType } from '../entities/keypair';
|
|
5
|
-
import { MerkleTree } from 'fixed-merkle-tree';
|
|
6
6
|
import { VortexPool } from '../vortex.types';
|
|
7
7
|
interface PrepareDepositProofArgs {
|
|
8
8
|
tx: Transaction;
|
|
@@ -12,11 +12,12 @@ interface PrepareDepositProofArgs {
|
|
|
12
12
|
vortexSdk: Vortex;
|
|
13
13
|
vortexKeypair: VortexKeypairType;
|
|
14
14
|
vortexPool: string | VortexPool;
|
|
15
|
-
|
|
15
|
+
root: bigint;
|
|
16
|
+
getMerklePathFn: GetMerklePathFn;
|
|
16
17
|
relayer: string;
|
|
17
18
|
relayerFee: bigint;
|
|
18
19
|
}
|
|
19
|
-
export declare const prepareDepositProof: ({ tx, amount, accountSecret, unspentUtxos, vortexSdk, vortexKeypair, vortexPool,
|
|
20
|
+
export declare const prepareDepositProof: ({ tx, amount, accountSecret, unspentUtxos, vortexSdk, vortexKeypair, vortexPool, root, getMerklePathFn, relayer, relayerFee, }: PrepareDepositProofArgs) => Promise<{
|
|
20
21
|
extData: import("@mysten/sui/dist/cjs/transactions").TransactionResult;
|
|
21
22
|
tx: Transaction;
|
|
22
23
|
moveProof: import("@mysten/sui/dist/cjs/transactions").TransactionResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../src/utils/deposit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIvD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../src/utils/deposit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIvD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAGxC,OAAO,EAAiB,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEjE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,UAAU,uBAAuB;IAC/B,EAAE,EAAE,WAAW,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,IAAI,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,iBAAiB,CAAC;IACjC,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,eAAe,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,mBAAmB,GAAU,gIAYvC,uBAAuB;;;;;;;;EA2HzB,CAAC"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -2,10 +2,13 @@ import { MerkleTree } from 'fixed-merkle-tree';
|
|
|
2
2
|
import { Utxo } from '../entities/utxo';
|
|
3
3
|
import { VortexKeypair } from '../entities/keypair';
|
|
4
4
|
import { SuiObjectData } from '@mysten/sui/client';
|
|
5
|
-
export
|
|
5
|
+
export type MerklePath = [string, string][];
|
|
6
|
+
export declare function getMerklePath(merkleTree: MerkleTree, utxo: Utxo | null): MerklePath;
|
|
6
7
|
interface ToProveInputArgs {
|
|
7
8
|
vortexObjectId: string;
|
|
8
|
-
|
|
9
|
+
root: bigint;
|
|
10
|
+
merklePath0: MerklePath;
|
|
11
|
+
merklePath1: MerklePath;
|
|
9
12
|
publicAmount: bigint;
|
|
10
13
|
nullifier0: bigint;
|
|
11
14
|
nullifier1: bigint;
|
|
@@ -18,7 +21,7 @@ interface ToProveInputArgs {
|
|
|
18
21
|
outputUtxo1: Utxo;
|
|
19
22
|
accountSecret: bigint;
|
|
20
23
|
}
|
|
21
|
-
export declare const toProveInput: ({
|
|
24
|
+
export declare const toProveInput: ({ root, merklePath0, merklePath1, publicAmount, nullifier0, nullifier1, commitment0, commitment1, vortexKeypair, inputUtxo0, inputUtxo1, outputUtxo0, outputUtxo1, vortexObjectId, accountSecret, }: ToProveInputArgs) => {
|
|
22
25
|
vortex: bigint;
|
|
23
26
|
root: bigint;
|
|
24
27
|
publicAmount: bigint;
|
|
@@ -36,8 +39,8 @@ export declare const toProveInput: ({ merkleTree, publicAmount, nullifier0, null
|
|
|
36
39
|
inBlinding1: bigint;
|
|
37
40
|
inPathIndex0: bigint;
|
|
38
41
|
inPathIndex1: bigint;
|
|
39
|
-
merklePath0:
|
|
40
|
-
merklePath1:
|
|
42
|
+
merklePath0: MerklePath;
|
|
43
|
+
merklePath1: MerklePath;
|
|
41
44
|
outPublicKey0: string;
|
|
42
45
|
outPublicKey1: string;
|
|
43
46
|
outAmount0: bigint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKnD,MAAM,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;AAE5C,wBAAgB,aAAa,CAC3B,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,GAAG,IAAI,GAChB,UAAU,CAkEZ;AAED,UAAU,gBAAgB;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,UAAU,CAAC;IACxB,WAAW,EAAE,UAAU,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,IAAI,CAAC;IACjB,UAAU,EAAE,IAAI,CAAC;IACjB,WAAW,EAAE,IAAI,CAAC;IAClB,WAAW,EAAE,IAAI,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,YAAY,GAAI,qMAgB1B,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;CAiClB,CAAC;AAQF,eAAO,MAAM,eAAe,GAAI,MAAM,aAAa;;;;;;;CAelD,CAAC;AAEF,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC"}
|
package/dist/utils/withdraw.d.ts
CHANGED
|
@@ -1,22 +1,23 @@
|
|
|
1
1
|
import { Transaction } from '@mysten/sui/transactions';
|
|
2
2
|
import { Utxo } from '../entities/utxo';
|
|
3
3
|
import { VortexKeypair } from '../entities/keypair';
|
|
4
|
+
import { GetMerklePathFn } from '../vortex.types';
|
|
4
5
|
import { Vortex } from '../vortex';
|
|
5
|
-
import { MerkleTree } from 'fixed-merkle-tree';
|
|
6
6
|
interface PrepareWithdrawArgs {
|
|
7
7
|
tx?: Transaction;
|
|
8
8
|
amount: bigint;
|
|
9
9
|
unspentUtxos: Utxo[];
|
|
10
10
|
vortexPool: string | any;
|
|
11
11
|
vortexKeypair: VortexKeypair;
|
|
12
|
-
|
|
12
|
+
root: bigint;
|
|
13
|
+
getMerklePathFn: GetMerklePathFn;
|
|
13
14
|
recipient: string;
|
|
14
15
|
relayer: string;
|
|
15
16
|
relayerFee: bigint;
|
|
16
17
|
vortexSdk: Vortex;
|
|
17
18
|
accountSecret: bigint;
|
|
18
19
|
}
|
|
19
|
-
export declare const prepareWithdraw: ({ tx, amount, unspentUtxos, vortexPool, vortexKeypair,
|
|
20
|
+
export declare const prepareWithdraw: ({ tx, amount, unspentUtxos, vortexPool, vortexKeypair, root, getMerklePathFn, recipient, relayer, relayerFee, vortexSdk, accountSecret, }: PrepareWithdrawArgs) => Promise<{
|
|
20
21
|
tx: Transaction;
|
|
21
22
|
moveProof: import("@mysten/sui/dist/cjs/transactions").TransactionResult;
|
|
22
23
|
extData: import("@mysten/sui/dist/cjs/transactions").TransactionResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withdraw.d.ts","sourceRoot":"","sources":["../../src/utils/withdraw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"withdraw.d.ts","sourceRoot":"","sources":["../../src/utils/withdraw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AASpD,OAAO,EAAiB,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,UAAU,mBAAmB;IAC3B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,IAAI,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,eAAe,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,eAAe,GAAU,2IAanC,mBAAmB;;;;;EA6HrB,CAAC"}
|
package/dist/vortex.types.d.ts
CHANGED
|
@@ -2,13 +2,14 @@ import { MaybeTx } from '@interest-protocol/sui-core-sdk';
|
|
|
2
2
|
import { TransactionResult } from '@mysten/sui/transactions';
|
|
3
3
|
import { Vortex } from './vortex';
|
|
4
4
|
import { VortexKeypair } from './entities/keypair';
|
|
5
|
-
import { MerkleTree } from 'fixed-merkle-tree';
|
|
6
5
|
import { Utxo } from './entities/utxo';
|
|
7
|
-
import { CoinStruct } from '@mysten/sui/
|
|
6
|
+
import { CoinStruct } from '@mysten/sui/client';
|
|
7
|
+
import { MerklePath } from './utils';
|
|
8
8
|
export declare enum Action {
|
|
9
9
|
Deposit = 0,
|
|
10
10
|
Withdraw = 1
|
|
11
11
|
}
|
|
12
|
+
export type GetMerklePathFn = (utxo: Utxo | null) => Promise<MerklePath>;
|
|
12
13
|
export interface RegisterArgs extends MaybeTx {
|
|
13
14
|
encryptionKey: string;
|
|
14
15
|
}
|
|
@@ -82,7 +83,8 @@ export interface DepositArgs extends MaybeTx {
|
|
|
82
83
|
vortexSdk: Vortex;
|
|
83
84
|
vortexPool: string | VortexPool;
|
|
84
85
|
vortexKeypair: VortexKeypair;
|
|
85
|
-
|
|
86
|
+
root: bigint;
|
|
87
|
+
getMerklePathFn: GetMerklePathFn;
|
|
86
88
|
unspentUtxos?: Utxo[];
|
|
87
89
|
relayer?: string;
|
|
88
90
|
relayerFee?: bigint;
|
|
@@ -91,7 +93,8 @@ export interface DepositWithAccountArgs extends MaybeTx {
|
|
|
91
93
|
vortexSdk: Vortex;
|
|
92
94
|
vortexPool: string | VortexPool;
|
|
93
95
|
vortexKeypair: VortexKeypair;
|
|
94
|
-
|
|
96
|
+
root: bigint;
|
|
97
|
+
getMerklePathFn: GetMerklePathFn;
|
|
95
98
|
unspentUtxos?: Utxo[];
|
|
96
99
|
account: string;
|
|
97
100
|
accountSecret: bigint;
|
|
@@ -105,7 +108,8 @@ export interface WithdrawArgs extends MaybeTx {
|
|
|
105
108
|
unspentUtxos: Utxo[];
|
|
106
109
|
vortexSdk: Vortex;
|
|
107
110
|
vortexKeypair: VortexKeypair;
|
|
108
|
-
|
|
111
|
+
root: bigint;
|
|
112
|
+
getMerklePathFn: GetMerklePathFn;
|
|
109
113
|
recipient: string;
|
|
110
114
|
relayer: string;
|
|
111
115
|
relayerFee: bigint;
|
|
@@ -114,7 +118,8 @@ export interface WithdrawWithAccountArgs extends MaybeTx {
|
|
|
114
118
|
vortexSdk: Vortex;
|
|
115
119
|
vortexPool: string | VortexPool;
|
|
116
120
|
vortexKeypair: VortexKeypair;
|
|
117
|
-
|
|
121
|
+
root: bigint;
|
|
122
|
+
getMerklePathFn: GetMerklePathFn;
|
|
118
123
|
unspentUtxos?: Utxo[];
|
|
119
124
|
account: string;
|
|
120
125
|
accountSecret: bigint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vortex.types.d.ts","sourceRoot":"","sources":["../src/vortex.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"vortex.types.d.ts","sourceRoot":"","sources":["../src/vortex.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Transaction } from '@mysten/sui/transactions';
|
|
2
2
|
import { WithdrawWithAccountArgs } from './vortex.types';
|
|
3
|
-
export declare const withdrawWithAccount: ({ tx, unspentUtxos, vortexPool, vortexKeypair,
|
|
3
|
+
export declare const withdrawWithAccount: ({ tx, unspentUtxos, vortexPool, vortexKeypair, root, getMerklePathFn, recipient, relayer, relayerFee, vortexSdk, account, accountSecret, amount, }: WithdrawWithAccountArgs) => Promise<{
|
|
4
4
|
tx: Transaction;
|
|
5
5
|
coin: import("@mysten/sui/dist/cjs/transactions").TransactionResult;
|
|
6
6
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withdraw-with-account.d.ts","sourceRoot":"","sources":["../src/withdraw-with-account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAGzD,eAAO,MAAM,mBAAmB,GAAU,
|
|
1
|
+
{"version":3,"file":"withdraw-with-account.d.ts","sourceRoot":"","sources":["../src/withdraw-with-account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAGzD,eAAO,MAAM,mBAAmB,GAAU,oJAcvC,uBAAuB;;;EA6BzB,CAAC"}
|
package/dist/withdraw.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Transaction } from '@mysten/sui/transactions';
|
|
2
2
|
import { WithdrawArgs } from './vortex.types';
|
|
3
|
-
export declare const withdraw: ({ tx, amount, unspentUtxos, vortexPool, vortexKeypair,
|
|
3
|
+
export declare const withdraw: ({ tx, amount, unspentUtxos, vortexPool, vortexKeypair, root, getMerklePathFn, recipient, relayer, relayerFee, vortexSdk, }: WithdrawArgs) => Promise<{
|
|
4
4
|
tx: Transaction;
|
|
5
5
|
coin: import("@mysten/sui/dist/cjs/transactions").TransactionResult;
|
|
6
6
|
}>;
|
package/dist/withdraw.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withdraw.d.ts","sourceRoot":"","sources":["../src/withdraw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,eAAO,MAAM,QAAQ,GAAU,
|
|
1
|
+
{"version":3,"file":"withdraw.d.ts","sourceRoot":"","sources":["../src/withdraw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,eAAO,MAAM,QAAQ,GAAU,4HAY5B,YAAY;;;EA8Bd,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@interest-protocol/vortex-sdk",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.2.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
"rimraf": "^6.0.1",
|
|
38
38
|
"ts-jest": "^29.1.1",
|
|
39
39
|
"tsup": "^8.3.5",
|
|
40
|
-
"@interest-protocol/
|
|
41
|
-
"@interest-protocol/
|
|
40
|
+
"@interest-protocol/typescript-config": "1.0.0",
|
|
41
|
+
"@interest-protocol/prettier-config": "1.0.0"
|
|
42
42
|
},
|
|
43
43
|
"publishConfig": {
|
|
44
44
|
"access": "public",
|
package/src/constants.ts
CHANGED
|
@@ -73,15 +73,15 @@ export const ERROR_CODES = {
|
|
|
73
73
|
};
|
|
74
74
|
|
|
75
75
|
export const VORTEX_PACKAGE_ID =
|
|
76
|
-
'
|
|
76
|
+
'0x4d505443700db57e664f024b4cdfe315a6b80ddc4d6b9f1013c7b68682edd4ab';
|
|
77
77
|
|
|
78
78
|
export const UPGRADE_CAP =
|
|
79
|
-
'
|
|
79
|
+
'0x6c4464ca68d4bcd0c0626dcbb7c2b7ec37cb65a6cc74ffb2c16cd8cff3184004';
|
|
80
80
|
|
|
81
81
|
export const REGISTRY_OBJECT_ID =
|
|
82
|
-
'
|
|
82
|
+
'0x58bde5ffed343073d012d28c6955a8ee50caaefd085196e837150bc810e996c0';
|
|
83
83
|
|
|
84
|
-
export const INITIAL_SHARED_VERSION = '
|
|
84
|
+
export const INITIAL_SHARED_VERSION = '4';
|
|
85
85
|
|
|
86
86
|
export const LSK_FETCH_OFFSET = 'fetch_offset';
|
|
87
87
|
|
|
@@ -99,5 +99,5 @@ export const BASIS_POINTS = 10_000n;
|
|
|
99
99
|
|
|
100
100
|
export const VORTEX_POOL_IDS = {
|
|
101
101
|
[SUI_TYPE_ARG]:
|
|
102
|
-
'
|
|
102
|
+
'0x1d8ddda4727146fd39f8181578ae71cd0f828039c68b4bfdba8a7499dda1d84d',
|
|
103
103
|
};
|
|
@@ -11,7 +11,8 @@ export const depositWithAccount = async ({
|
|
|
11
11
|
vortexSdk,
|
|
12
12
|
vortexKeypair,
|
|
13
13
|
vortexPool,
|
|
14
|
-
|
|
14
|
+
root,
|
|
15
|
+
getMerklePathFn,
|
|
15
16
|
accountSecret,
|
|
16
17
|
account,
|
|
17
18
|
coinStructs,
|
|
@@ -31,7 +32,7 @@ export const depositWithAccount = async ({
|
|
|
31
32
|
|
|
32
33
|
invariant(unspentUtxos.length <= 2, 'Unspent UTXOs must be at most 2');
|
|
33
34
|
invariant(
|
|
34
|
-
BN254_FIELD_MODULUS
|
|
35
|
+
BN254_FIELD_MODULUS >= amount,
|
|
35
36
|
'Amount must be less than field modulus'
|
|
36
37
|
);
|
|
37
38
|
|
|
@@ -47,7 +48,8 @@ export const depositWithAccount = async ({
|
|
|
47
48
|
vortexSdk,
|
|
48
49
|
vortexKeypair,
|
|
49
50
|
vortexPool,
|
|
50
|
-
|
|
51
|
+
root,
|
|
52
|
+
getMerklePathFn,
|
|
51
53
|
relayer,
|
|
52
54
|
relayerFee,
|
|
53
55
|
});
|
package/src/deposit.ts
CHANGED
|
@@ -12,7 +12,8 @@ export const deposit = async ({
|
|
|
12
12
|
vortexSdk,
|
|
13
13
|
vortexKeypair,
|
|
14
14
|
vortexPool,
|
|
15
|
-
|
|
15
|
+
root,
|
|
16
|
+
getMerklePathFn,
|
|
16
17
|
relayer = normalizeSuiAddress('0x0'),
|
|
17
18
|
relayerFee = 0n,
|
|
18
19
|
}: DepositArgs) => {
|
|
@@ -36,7 +37,8 @@ export const deposit = async ({
|
|
|
36
37
|
vortexSdk,
|
|
37
38
|
vortexKeypair,
|
|
38
39
|
vortexPool,
|
|
39
|
-
|
|
40
|
+
root,
|
|
41
|
+
getMerklePathFn,
|
|
40
42
|
relayer,
|
|
41
43
|
relayerFee,
|
|
42
44
|
});
|
package/src/entities/keypair.ts
CHANGED
|
@@ -197,6 +197,23 @@ export class VortexKeypair {
|
|
|
197
197
|
};
|
|
198
198
|
}
|
|
199
199
|
|
|
200
|
+
static encryptBigIntFor(
|
|
201
|
+
value: bigint,
|
|
202
|
+
recipientEncryptionKey: string
|
|
203
|
+
): string {
|
|
204
|
+
// Convert BigInt to hex string, then to bytes
|
|
205
|
+
const hex = value.toString(16);
|
|
206
|
+
const hexPadded = hex.length % 2 === 0 ? hex : '0' + hex;
|
|
207
|
+
const bytes = Buffer.from(hexPadded, 'hex');
|
|
208
|
+
return VortexKeypair.encryptFor(bytes, recipientEncryptionKey);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
decryptBigInt(encryptedData: string): bigint {
|
|
212
|
+
const decrypted = this.#decrypt(encryptedData);
|
|
213
|
+
const hex = decrypted.toString('hex');
|
|
214
|
+
return BigInt('0x' + hex);
|
|
215
|
+
}
|
|
216
|
+
|
|
200
217
|
sign(commitment: bigint, merklePath: bigint): bigint {
|
|
201
218
|
invariant(this.privateKey !== null, 'Cannot sign without private key');
|
|
202
219
|
return poseidon3(this.privateKey, commitment, merklePath);
|
package/src/utils/deposit.ts
CHANGED
|
@@ -5,11 +5,11 @@ import { VortexKeypair } from '../entities/keypair';
|
|
|
5
5
|
import { Utxo } from '../entities/utxo';
|
|
6
6
|
import { fromHex, normalizeSuiAddress } from '@mysten/sui/utils';
|
|
7
7
|
import { toProveInput } from '.';
|
|
8
|
-
import { Proof, Action } from '../vortex.types';
|
|
8
|
+
import { Proof, Action, GetMerklePathFn } from '../vortex.types';
|
|
9
9
|
import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
|
|
10
10
|
import { Vortex } from '../vortex';
|
|
11
11
|
import { VortexKeypair as VortexKeypairType } from '../entities/keypair';
|
|
12
|
-
|
|
12
|
+
|
|
13
13
|
import { VortexPool } from '../vortex.types';
|
|
14
14
|
|
|
15
15
|
interface PrepareDepositProofArgs {
|
|
@@ -20,7 +20,8 @@ interface PrepareDepositProofArgs {
|
|
|
20
20
|
vortexSdk: Vortex;
|
|
21
21
|
vortexKeypair: VortexKeypairType;
|
|
22
22
|
vortexPool: string | VortexPool;
|
|
23
|
-
|
|
23
|
+
root: bigint;
|
|
24
|
+
getMerklePathFn: GetMerklePathFn;
|
|
24
25
|
relayer: string;
|
|
25
26
|
relayerFee: bigint;
|
|
26
27
|
}
|
|
@@ -33,7 +34,8 @@ export const prepareDepositProof = async ({
|
|
|
33
34
|
vortexSdk,
|
|
34
35
|
vortexKeypair,
|
|
35
36
|
vortexPool,
|
|
36
|
-
|
|
37
|
+
root,
|
|
38
|
+
getMerklePathFn,
|
|
37
39
|
relayer,
|
|
38
40
|
relayerFee,
|
|
39
41
|
}: PrepareDepositProofArgs) => {
|
|
@@ -105,7 +107,9 @@ export const prepareDepositProof = async ({
|
|
|
105
107
|
const input = toProveInput({
|
|
106
108
|
vortexObjectId,
|
|
107
109
|
accountSecret,
|
|
108
|
-
|
|
110
|
+
root,
|
|
111
|
+
merklePath0: await getMerklePathFn(inputUtxo0),
|
|
112
|
+
merklePath1: await getMerklePathFn(inputUtxo1),
|
|
109
113
|
publicAmount: amount - relayerFee,
|
|
110
114
|
nullifier0,
|
|
111
115
|
nullifier1,
|
|
@@ -139,7 +143,7 @@ export const prepareDepositProof = async ({
|
|
|
139
143
|
tx: tx2,
|
|
140
144
|
vortexPool,
|
|
141
145
|
proofPoints: fromHex('0x' + proof.proofSerializedHex),
|
|
142
|
-
root
|
|
146
|
+
root,
|
|
143
147
|
publicValue: amount - relayerFee,
|
|
144
148
|
action: Action.Deposit,
|
|
145
149
|
inputNullifier0: nullifier0,
|
package/src/utils/index.ts
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
normalizeSuiAddress,
|
|
3
|
-
toHex,
|
|
4
|
-
normalizeStructTag,
|
|
5
|
-
} from '@mysten/sui/utils';
|
|
1
|
+
import { normalizeSuiAddress, normalizeStructTag } from '@mysten/sui/utils';
|
|
6
2
|
import invariant from 'tiny-invariant';
|
|
7
3
|
import { MerkleTree } from 'fixed-merkle-tree';
|
|
8
4
|
import { Utxo } from '../entities/utxo';
|
|
@@ -14,10 +10,12 @@ import { pathOr } from 'ramda';
|
|
|
14
10
|
import { poseidon1 } from '../crypto';
|
|
15
11
|
import { BN254_FIELD_MODULUS } from '../constants';
|
|
16
12
|
|
|
13
|
+
export type MerklePath = [string, string][];
|
|
14
|
+
|
|
17
15
|
export function getMerklePath(
|
|
18
16
|
merkleTree: MerkleTree,
|
|
19
17
|
utxo: Utxo | null
|
|
20
|
-
):
|
|
18
|
+
): MerklePath {
|
|
21
19
|
// Handle zero-amount UTXOs
|
|
22
20
|
if (!utxo || utxo.amount === 0n) {
|
|
23
21
|
return Array(MERKLE_TREE_HEIGHT)
|
|
@@ -87,7 +85,9 @@ export function getMerklePath(
|
|
|
87
85
|
|
|
88
86
|
interface ToProveInputArgs {
|
|
89
87
|
vortexObjectId: string;
|
|
90
|
-
|
|
88
|
+
root: bigint;
|
|
89
|
+
merklePath0: MerklePath;
|
|
90
|
+
merklePath1: MerklePath;
|
|
91
91
|
publicAmount: bigint;
|
|
92
92
|
nullifier0: bigint;
|
|
93
93
|
nullifier1: bigint;
|
|
@@ -102,7 +102,9 @@ interface ToProveInputArgs {
|
|
|
102
102
|
}
|
|
103
103
|
|
|
104
104
|
export const toProveInput = ({
|
|
105
|
-
|
|
105
|
+
root,
|
|
106
|
+
merklePath0,
|
|
107
|
+
merklePath1,
|
|
106
108
|
publicAmount,
|
|
107
109
|
nullifier0,
|
|
108
110
|
nullifier1,
|
|
@@ -121,7 +123,7 @@ export const toProveInput = ({
|
|
|
121
123
|
BigInt(
|
|
122
124
|
normalizeSuiAddress(vortexObjectId, !vortexObjectId.startsWith('0x'))
|
|
123
125
|
) % BN254_FIELD_MODULUS,
|
|
124
|
-
root
|
|
126
|
+
root,
|
|
125
127
|
publicAmount,
|
|
126
128
|
inputNullifier0: nullifier0,
|
|
127
129
|
inputNullifier1: nullifier1,
|
|
@@ -138,8 +140,8 @@ export const toProveInput = ({
|
|
|
138
140
|
inBlinding1: inputUtxo1.blinding,
|
|
139
141
|
inPathIndex0: inputUtxo0.index,
|
|
140
142
|
inPathIndex1: inputUtxo1.index,
|
|
141
|
-
merklePath0
|
|
142
|
-
merklePath1
|
|
143
|
+
merklePath0,
|
|
144
|
+
merklePath1,
|
|
143
145
|
|
|
144
146
|
outPublicKey0: vortexKeypair.publicKey,
|
|
145
147
|
outPublicKey1: vortexKeypair.publicKey,
|
package/src/utils/withdraw.ts
CHANGED
|
@@ -9,9 +9,8 @@ import { fromHex } from '@mysten/sui/utils';
|
|
|
9
9
|
import { toProveInput } from '../utils';
|
|
10
10
|
import { BN254_FIELD_MODULUS } from '../constants';
|
|
11
11
|
import { prove, verify } from '../utils';
|
|
12
|
-
import { Proof, Action } from '../vortex.types';
|
|
12
|
+
import { Proof, Action, GetMerklePathFn } from '../vortex.types';
|
|
13
13
|
import { Vortex } from '../vortex';
|
|
14
|
-
import { MerkleTree } from 'fixed-merkle-tree';
|
|
15
14
|
|
|
16
15
|
interface PrepareWithdrawArgs {
|
|
17
16
|
tx?: Transaction;
|
|
@@ -19,7 +18,8 @@ interface PrepareWithdrawArgs {
|
|
|
19
18
|
unspentUtxos: Utxo[];
|
|
20
19
|
vortexPool: string | any;
|
|
21
20
|
vortexKeypair: VortexKeypair;
|
|
22
|
-
|
|
21
|
+
root: bigint;
|
|
22
|
+
getMerklePathFn: GetMerklePathFn;
|
|
23
23
|
recipient: string;
|
|
24
24
|
relayer: string;
|
|
25
25
|
relayerFee: bigint;
|
|
@@ -33,7 +33,8 @@ export const prepareWithdraw = async ({
|
|
|
33
33
|
unspentUtxos = [],
|
|
34
34
|
vortexPool,
|
|
35
35
|
vortexKeypair,
|
|
36
|
-
|
|
36
|
+
root,
|
|
37
|
+
getMerklePathFn,
|
|
37
38
|
recipient,
|
|
38
39
|
relayer,
|
|
39
40
|
relayerFee,
|
|
@@ -113,7 +114,9 @@ export const prepareWithdraw = async ({
|
|
|
113
114
|
const input = toProveInput({
|
|
114
115
|
vortexObjectId,
|
|
115
116
|
accountSecret,
|
|
116
|
-
|
|
117
|
+
root,
|
|
118
|
+
merklePath0: await getMerklePathFn(inputUtxo0),
|
|
119
|
+
merklePath1: await getMerklePathFn(inputUtxo1),
|
|
117
120
|
publicAmount: BN254_FIELD_MODULUS - amount,
|
|
118
121
|
nullifier0,
|
|
119
122
|
nullifier1,
|
|
@@ -147,7 +150,7 @@ export const prepareWithdraw = async ({
|
|
|
147
150
|
vortexPool,
|
|
148
151
|
tx: tx2,
|
|
149
152
|
proofPoints: fromHex('0x' + proof.proofSerializedHex),
|
|
150
|
-
root
|
|
153
|
+
root,
|
|
151
154
|
publicValue: amount,
|
|
152
155
|
action: Action.Withdraw,
|
|
153
156
|
inputNullifier0: nullifier0,
|
package/src/vortex.types.ts
CHANGED
|
@@ -2,14 +2,17 @@ import { MaybeTx } from '@interest-protocol/sui-core-sdk';
|
|
|
2
2
|
import { TransactionResult } from '@mysten/sui/transactions';
|
|
3
3
|
import { Vortex } from './vortex';
|
|
4
4
|
import { VortexKeypair } from './entities/keypair';
|
|
5
|
-
import { MerkleTree } from 'fixed-merkle-tree';
|
|
6
5
|
import { Utxo } from './entities/utxo';
|
|
7
|
-
import { CoinStruct } from '@mysten/sui/
|
|
6
|
+
import { CoinStruct } from '@mysten/sui/client';
|
|
7
|
+
import { MerklePath } from './utils';
|
|
8
|
+
|
|
8
9
|
export enum Action {
|
|
9
10
|
Deposit,
|
|
10
11
|
Withdraw,
|
|
11
12
|
}
|
|
12
13
|
|
|
14
|
+
export type GetMerklePathFn = (utxo: Utxo | null) => Promise<MerklePath>;
|
|
15
|
+
|
|
13
16
|
export interface RegisterArgs extends MaybeTx {
|
|
14
17
|
encryptionKey: string;
|
|
15
18
|
}
|
|
@@ -94,7 +97,8 @@ export interface DepositArgs extends MaybeTx {
|
|
|
94
97
|
vortexSdk: Vortex;
|
|
95
98
|
vortexPool: string | VortexPool;
|
|
96
99
|
vortexKeypair: VortexKeypair;
|
|
97
|
-
|
|
100
|
+
root: bigint;
|
|
101
|
+
getMerklePathFn: GetMerklePathFn;
|
|
98
102
|
unspentUtxos?: Utxo[];
|
|
99
103
|
relayer?: string;
|
|
100
104
|
relayerFee?: bigint;
|
|
@@ -104,7 +108,8 @@ export interface DepositWithAccountArgs extends MaybeTx {
|
|
|
104
108
|
vortexSdk: Vortex;
|
|
105
109
|
vortexPool: string | VortexPool;
|
|
106
110
|
vortexKeypair: VortexKeypair;
|
|
107
|
-
|
|
111
|
+
root: bigint;
|
|
112
|
+
getMerklePathFn: GetMerklePathFn;
|
|
108
113
|
unspentUtxos?: Utxo[];
|
|
109
114
|
account: string;
|
|
110
115
|
accountSecret: bigint;
|
|
@@ -119,7 +124,8 @@ export interface WithdrawArgs extends MaybeTx {
|
|
|
119
124
|
unspentUtxos: Utxo[];
|
|
120
125
|
vortexSdk: Vortex;
|
|
121
126
|
vortexKeypair: VortexKeypair;
|
|
122
|
-
|
|
127
|
+
root: bigint;
|
|
128
|
+
getMerklePathFn: GetMerklePathFn;
|
|
123
129
|
recipient: string;
|
|
124
130
|
relayer: string;
|
|
125
131
|
relayerFee: bigint;
|
|
@@ -129,7 +135,8 @@ export interface WithdrawWithAccountArgs extends MaybeTx {
|
|
|
129
135
|
vortexSdk: Vortex;
|
|
130
136
|
vortexPool: string | VortexPool;
|
|
131
137
|
vortexKeypair: VortexKeypair;
|
|
132
|
-
|
|
138
|
+
root: bigint;
|
|
139
|
+
getMerklePathFn: GetMerklePathFn;
|
|
133
140
|
unspentUtxos?: Utxo[];
|
|
134
141
|
account: string;
|
|
135
142
|
accountSecret: bigint;
|
|
@@ -7,7 +7,8 @@ export const withdrawWithAccount = async ({
|
|
|
7
7
|
unspentUtxos = [],
|
|
8
8
|
vortexPool,
|
|
9
9
|
vortexKeypair,
|
|
10
|
-
|
|
10
|
+
root,
|
|
11
|
+
getMerklePathFn,
|
|
11
12
|
recipient,
|
|
12
13
|
relayer,
|
|
13
14
|
relayerFee,
|
|
@@ -27,7 +28,8 @@ export const withdrawWithAccount = async ({
|
|
|
27
28
|
unspentUtxos,
|
|
28
29
|
vortexPool,
|
|
29
30
|
vortexKeypair,
|
|
30
|
-
|
|
31
|
+
root,
|
|
32
|
+
getMerklePathFn,
|
|
31
33
|
recipient,
|
|
32
34
|
relayer,
|
|
33
35
|
relayerFee,
|
package/src/withdraw.ts
CHANGED
|
@@ -8,7 +8,8 @@ export const withdraw = async ({
|
|
|
8
8
|
unspentUtxos = [],
|
|
9
9
|
vortexPool,
|
|
10
10
|
vortexKeypair,
|
|
11
|
-
|
|
11
|
+
root,
|
|
12
|
+
getMerklePathFn,
|
|
12
13
|
recipient,
|
|
13
14
|
relayer,
|
|
14
15
|
relayerFee,
|
|
@@ -25,7 +26,8 @@ export const withdraw = async ({
|
|
|
25
26
|
unspentUtxos,
|
|
26
27
|
vortexPool,
|
|
27
28
|
vortexKeypair,
|
|
28
|
-
|
|
29
|
+
root,
|
|
30
|
+
getMerklePathFn,
|
|
29
31
|
recipient,
|
|
30
32
|
relayer,
|
|
31
33
|
relayerFee,
|