@fatsolutions/privacy-pools-core-starknet-sdk 0.0.44 → 0.0.45
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/abis/ERC20.abi.js +145 -145
- package/dist/abis/EntryPoint.abi.d.ts +35 -12
- package/dist/abis/EntryPoint.abi.js +262 -230
- package/dist/abis/EntryPoint.abi.js.map +1 -1
- package/dist/abis/PrivacyPool.abi.d.ts +69 -8
- package/dist/abis/PrivacyPool.abi.js +228 -146
- package/dist/abis/PrivacyPool.abi.js.map +1 -1
- package/dist/account.service.d.ts +16 -0
- package/dist/account.service.js +31 -0
- package/dist/account.service.js.map +1 -0
- package/dist/auditor.d.ts +31 -0
- package/dist/auditor.js +146 -0
- package/dist/auditor.js.map +1 -0
- package/dist/contracts/contracts.service.d.ts +3 -3
- package/dist/contracts/contracts.service.js +71 -19
- package/dist/contracts/contracts.service.js.map +1 -1
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/transactionHandler.d.ts +1 -1
- package/dist/contracts/transactionHandler.js +2 -4
- package/dist/contracts/transactionHandler.js.map +1 -1
- package/dist/data.service.d.ts +20 -6
- package/dist/data.service.js +50 -7
- package/dist/data.service.js.map +1 -1
- package/dist/errors/contracts.errors.js +1 -1
- package/dist/errors/index.js.map +1 -1
- package/dist/garaga.js +9 -3
- package/dist/garaga.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/sdk.js +4 -4
- package/dist/sdk.js.map +1 -1
- package/dist/types/conversions.js.map +1 -1
- package/dist/types/entrypoint.d.ts +2 -0
- package/dist/types/entrypoint.js +50 -30
- package/dist/types/entrypoint.js.map +1 -1
- package/dist/types/snarkjs.d.ts +7 -46
- package/dist/utils.d.ts +4 -1
- package/dist/utils.js +11 -2
- package/dist/utils.js.map +1 -1
- package/package.json +14 -3
- package/src/abis/ERC20.abi.ts +145 -145
- package/src/abis/EntryPoint.abi.ts +262 -230
- package/src/abis/PrivacyPool.abi.ts +228 -146
- package/src/abis/index.ts +1 -1
- package/src/account.service.ts +47 -0
- package/src/auditor.ts +219 -0
- package/src/contracts/contracts.service.ts +325 -73
- package/src/contracts/index.ts +2 -2
- package/src/contracts/transactionHandler.ts +16 -7
- package/src/data.service.ts +123 -146
- package/src/errors/contracts.errors.ts +6 -6
- package/src/errors/index.ts +18 -24
- package/src/garaga.ts +10 -4
- package/src/index.ts +17 -27
- package/src/sdk.ts +39 -26
- package/src/types/conversions.ts +11 -12
- package/src/types/entrypoint.ts +74 -41
- package/src/types/garaga.ts +32 -32
- package/src/types/index.ts +1 -1
- package/src/types/snarkjs.ts +8 -20
- package/src/utils.ts +33 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrivacyPool.abi.js","sourceRoot":"","sources":["../../src/abis/PrivacyPool.abi.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PrivacyPool.abi.js","sourceRoot":"","sources":["../../src/abis/PrivacyPool.abi.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { AccountService, PoolAccount } from "@0xbow/privacy-pools-core-sdk";
|
|
2
|
+
import { StarknetDataService } from "./data.service.js";
|
|
3
|
+
import { AuditorData } from "./auditor.js";
|
|
4
|
+
type AccountServiceConfig = Exclude<ConstructorParameters<typeof AccountService>[1], {
|
|
5
|
+
account: any;
|
|
6
|
+
}>;
|
|
7
|
+
export declare class StarknetAccountService extends AccountService {
|
|
8
|
+
private mnemonic;
|
|
9
|
+
constructor(dataService: StarknetDataService, config: AccountServiceConfig);
|
|
10
|
+
deriveViewKey({ label }: Pick<PoolAccount, "label">, base?: "16" | "32" | "64"): string;
|
|
11
|
+
createAuditorData({ label, deposit, children }: PoolAccount, withdrawalValue?: bigint): {
|
|
12
|
+
auditorData: AuditorData;
|
|
13
|
+
withdrawalSecrets: ReturnType<StarknetAccountService["createWithdrawalSecrets"]>;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { AccountService } from "@0xbow/privacy-pools-core-sdk";
|
|
2
|
+
import { deriveKeyFromMnemonic, packAuditorData, computeTag, encrypt } from "./auditor.js";
|
|
3
|
+
import { base64, base16, base32 } from "@scure/base";
|
|
4
|
+
export class StarknetAccountService extends AccountService {
|
|
5
|
+
mnemonic;
|
|
6
|
+
constructor(dataService, config) {
|
|
7
|
+
super(dataService, config);
|
|
8
|
+
this.mnemonic = config.mnemonic;
|
|
9
|
+
}
|
|
10
|
+
deriveViewKey({ label }, base = "16") {
|
|
11
|
+
const encoder = { "16": base16, "32": base32, "64": base64 };
|
|
12
|
+
return encoder[base].encode(deriveKeyFromMnemonic(this.mnemonic, label));
|
|
13
|
+
}
|
|
14
|
+
createAuditorData({ label, deposit, children }, withdrawalValue) {
|
|
15
|
+
const viewKey = deriveKeyFromMnemonic(this.mnemonic, label);
|
|
16
|
+
const accountCommitment = children.at(-1) || deposit;
|
|
17
|
+
const withdrawalIndex = children.length;
|
|
18
|
+
const withdrawalSecrets = this.createWithdrawalSecrets(accountCommitment);
|
|
19
|
+
const packedData = packAuditorData({
|
|
20
|
+
value: withdrawalValue || accountCommitment.value,
|
|
21
|
+
label,
|
|
22
|
+
...withdrawalSecrets,
|
|
23
|
+
});
|
|
24
|
+
const cipherArray = encrypt(packedData, viewKey);
|
|
25
|
+
const ciphertext = base64.encode(cipherArray);
|
|
26
|
+
const tag = computeTag(viewKey, withdrawalIndex);
|
|
27
|
+
const auditorData = { tag, ciphertext };
|
|
28
|
+
return { auditorData, withdrawalSecrets };
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=account.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account.service.js","sourceRoot":"","sources":["../src/account.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAe,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAAe,qBAAqB,EAAE,eAAe,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACxG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrD,MAAM,OAAO,sBAAuB,SAAQ,cAAc;IAChD,QAAQ,CAAS;IAEzB,YAAY,WAAgC,EAAE,MAA4B;QACxE,KAAK,CAAC,WAAoB,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED,aAAa,CAAC,EAAE,KAAK,EAA8B,EAAE,OAA2B,IAAI;QAClF,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAW,CAAC;QACtE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,iBAAiB,CACf,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAe,EACzC,eAAwB;QAKxB,MAAM,OAAO,GAAG,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,iBAAiB,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC;QACrD,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC;QAExC,MAAM,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,CAAC;QAE1E,MAAM,UAAU,GAAG,eAAe,CAAC;YACjC,KAAK,EAAE,eAAe,IAAI,iBAAiB,CAAC,KAAK;YACjD,KAAK;YACL,GAAG,iBAAiB;SACrB,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAE9C,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QACjD,MAAM,WAAW,GAAgB,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;QACrD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;IAC5C,CAAC;CACF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { AccountCommitment, Hash, PoolInfo } from "@0xbow/privacy-pools-core-sdk";
|
|
2
|
+
import { StarknetDataService } from "./data.service.js";
|
|
3
|
+
export interface AuditEvent {
|
|
4
|
+
tag: Hash;
|
|
5
|
+
ciphertext: string;
|
|
6
|
+
prevNullifierHash: Hash;
|
|
7
|
+
newCommitment: Hash;
|
|
8
|
+
blockNumber: bigint;
|
|
9
|
+
transactionHash: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function deriveKey(secret: Uint8Array, label: bigint): Uint8Array;
|
|
12
|
+
export declare function deriveKeyFromMnemonic(mnemonic: string, label: bigint): Uint8Array;
|
|
13
|
+
export declare function encrypt(plaintext: Uint8Array, viewKey: Uint8Array): Uint8Array<ArrayBuffer>;
|
|
14
|
+
export declare function decrypt(input: Uint8Array, viewKey: Uint8Array): Uint8Array;
|
|
15
|
+
export declare function packAuditorData({ label: declaredLabel, value: declaredValue, nullifier: declaredNullifier, secret: declaredSecret, }: Pick<AccountCommitment, "label" | "value" | "nullifier" | "secret">): Uint8Array;
|
|
16
|
+
export declare function unpackAuditorData(packedData: Uint8Array): {
|
|
17
|
+
declaredLabel: bigint;
|
|
18
|
+
declaredValue: bigint;
|
|
19
|
+
declaredNullifier: bigint;
|
|
20
|
+
declaredSecret: bigint;
|
|
21
|
+
};
|
|
22
|
+
export declare function reconstructAccountCommitment(event: AuditEvent, viewKey: Uint8Array): AccountCommitment;
|
|
23
|
+
export declare function computeTag(viewKey: Uint8Array, withdraw_number: number): bigint;
|
|
24
|
+
export declare function constructSequence(viewKey: Uint8Array, serviceData: StarknetDataService, pool: PoolInfo): Promise<AccountCommitment[]>;
|
|
25
|
+
/**
|
|
26
|
+
* Represents a AuditEvent event from a privacy pool
|
|
27
|
+
*/
|
|
28
|
+
export interface AuditorData {
|
|
29
|
+
tag: bigint;
|
|
30
|
+
ciphertext: string;
|
|
31
|
+
}
|
package/dist/auditor.js
ADDED
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { getCommitment } from "@0xbow/privacy-pools-core-sdk";
|
|
2
|
+
import { xchacha20poly1305 } from "@noble/ciphers/chacha.js";
|
|
3
|
+
import { bytesToNumberBE, numberToBytesBE } from "@noble/ciphers/utils.js";
|
|
4
|
+
import { hkdf } from "@noble/hashes/hkdf.js";
|
|
5
|
+
import { sha3_256 as sha256 } from "@noble/hashes/sha3.js";
|
|
6
|
+
import { base64 } from "@scure/base";
|
|
7
|
+
import { mnemonicToEntropy } from "@scure/bip39";
|
|
8
|
+
import { wordlist } from "@scure/bip39/wordlists/english";
|
|
9
|
+
import { poseidonHashMany } from "@scure/starknet";
|
|
10
|
+
//TODO: The first time you will need to generate a viewing key is in the first withdraw
|
|
11
|
+
// of a deposited note. At that point you allready have a label. I suggest for the viewKey to be derivable
|
|
12
|
+
// from the account secret + deposit label. There is no need to store another secret for each deposit.
|
|
13
|
+
// viewKey =~ Hash(AccountSecret, Label);
|
|
14
|
+
export function deriveKey(secret, label) {
|
|
15
|
+
const info = new TextEncoder().encode("xchacha-key");
|
|
16
|
+
const salt = new TextEncoder().encode(String(label));
|
|
17
|
+
const viewKey = hkdf(sha256, secret, salt, info, 32);
|
|
18
|
+
return viewKey;
|
|
19
|
+
}
|
|
20
|
+
export function deriveKeyFromMnemonic(mnemonic, label) {
|
|
21
|
+
const secret = mnemonicToEntropy(mnemonic, wordlist);
|
|
22
|
+
return deriveKey(secret, label);
|
|
23
|
+
}
|
|
24
|
+
export function encrypt(plaintext, viewKey) {
|
|
25
|
+
const nonce = crypto.getRandomValues(new Uint8Array(24));
|
|
26
|
+
const chacha = xchacha20poly1305(viewKey, nonce);
|
|
27
|
+
const ciphertext = chacha.encrypt(plaintext);
|
|
28
|
+
// Prepend the nonce
|
|
29
|
+
const output = new Uint8Array(24 + ciphertext.length);
|
|
30
|
+
output.set(nonce, 0);
|
|
31
|
+
output.set(ciphertext, 24);
|
|
32
|
+
return output;
|
|
33
|
+
}
|
|
34
|
+
export function decrypt(input, viewKey) {
|
|
35
|
+
const nonce = input.slice(0, 24);
|
|
36
|
+
const chacha = xchacha20poly1305(viewKey, nonce);
|
|
37
|
+
const ciphertext = input.slice(24);
|
|
38
|
+
//TODO: What happens if AE fails?
|
|
39
|
+
const decrypted = chacha.decrypt(ciphertext);
|
|
40
|
+
return decrypted;
|
|
41
|
+
}
|
|
42
|
+
export function packAuditorData({ label: declaredLabel, value: declaredValue, nullifier: declaredNullifier, secret: declaredSecret, }) {
|
|
43
|
+
//TODO: Add assertions about lenght of bigint
|
|
44
|
+
const output = new Uint8Array(128);
|
|
45
|
+
output.set(numberToBytesBE(declaredLabel, 32), 0);
|
|
46
|
+
output.set(numberToBytesBE(declaredValue, 32), 32);
|
|
47
|
+
output.set(numberToBytesBE(declaredNullifier, 32), 64);
|
|
48
|
+
output.set(numberToBytesBE(declaredSecret, 32), 96);
|
|
49
|
+
return output;
|
|
50
|
+
}
|
|
51
|
+
export function unpackAuditorData(packedData) {
|
|
52
|
+
const declaredLabel = bytesToNumberBE(packedData.slice(0, 32));
|
|
53
|
+
const declaredValue = bytesToNumberBE(packedData.slice(32, 64));
|
|
54
|
+
const declaredNullifier = bytesToNumberBE(packedData.slice(64, 96));
|
|
55
|
+
const declaredSecret = bytesToNumberBE(packedData.slice(96, 128));
|
|
56
|
+
return { declaredLabel, declaredValue, declaredNullifier, declaredSecret };
|
|
57
|
+
}
|
|
58
|
+
export function reconstructAccountCommitment(event, viewKey) {
|
|
59
|
+
const { ciphertext, blockNumber, transactionHash, prevNullifierHash } = event;
|
|
60
|
+
const auditorData = decrypt(base64.decode(ciphertext), viewKey);
|
|
61
|
+
const { declaredLabel, declaredValue, declaredNullifier, declaredSecret } = unpackAuditorData(auditorData);
|
|
62
|
+
const { hash, nullifierHash, preimage: { value: _value, label, precommitment: _precommitment }, } = getCommitment(declaredValue, declaredLabel, declaredNullifier, declaredSecret);
|
|
63
|
+
if (nullifierHash != prevNullifierHash) {
|
|
64
|
+
throw new Error("Inconsistency in emitted nullifier hash");
|
|
65
|
+
}
|
|
66
|
+
return {
|
|
67
|
+
hash,
|
|
68
|
+
value: declaredValue,
|
|
69
|
+
label: label,
|
|
70
|
+
nullifier: declaredNullifier,
|
|
71
|
+
secret: declaredSecret,
|
|
72
|
+
blockNumber,
|
|
73
|
+
txHash: transactionHash,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
export function computeTag(viewKey, withdraw_number) {
|
|
77
|
+
const viewKeyBigInt = bytesToNumberBE(viewKey);
|
|
78
|
+
const tag = poseidonHashMany([viewKeyBigInt, BigInt(withdraw_number)]);
|
|
79
|
+
return tag;
|
|
80
|
+
}
|
|
81
|
+
async function fetchAuditEventsForViewKey(viewKey, serviceData, pool) {
|
|
82
|
+
const out = [];
|
|
83
|
+
let withdraw_number = 0;
|
|
84
|
+
while (true) {
|
|
85
|
+
const tag = computeTag(viewKey, withdraw_number);
|
|
86
|
+
const events = await serviceData.getAuditEventForTag(tag, pool);
|
|
87
|
+
if (!events) {
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
//It should be only ONE event with this tag. But it is not eforced. A troll could make a withdraw with
|
|
91
|
+
//the tag of a previous withraw from another label.
|
|
92
|
+
events.forEach((event) => out.push([event, withdraw_number]));
|
|
93
|
+
withdraw_number++;
|
|
94
|
+
}
|
|
95
|
+
return out;
|
|
96
|
+
}
|
|
97
|
+
export async function constructSequence(viewKey, serviceData, pool) {
|
|
98
|
+
const commitments = [];
|
|
99
|
+
const events = await fetchAuditEventsForViewKey(viewKey, serviceData, pool);
|
|
100
|
+
const events_for_index = events.filter(([_, b]) => b === 0);
|
|
101
|
+
if (events_for_index.length === 0) {
|
|
102
|
+
throw new Error("No withdraws for this key");
|
|
103
|
+
}
|
|
104
|
+
let declaredCommitment;
|
|
105
|
+
for (const [event, _withdraw_number] of events_for_index) {
|
|
106
|
+
try {
|
|
107
|
+
declaredCommitment = reconstructAccountCommitment(event, viewKey);
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
//What should we do here?
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
if (!declaredCommitment) {
|
|
114
|
+
throw new Error("No event could be decrypted");
|
|
115
|
+
}
|
|
116
|
+
const initialLabel = declaredCommitment.label;
|
|
117
|
+
const deposit = await serviceData.getDeposits(pool, pool.deploymentBlock, initialLabel);
|
|
118
|
+
if (deposit.length != 1) {
|
|
119
|
+
throw new Error("No deposit found for this label");
|
|
120
|
+
}
|
|
121
|
+
const initialCommitment = deposit[0].commitment;
|
|
122
|
+
if (initialCommitment != declaredCommitment.hash) {
|
|
123
|
+
throw new Error("mismatch");
|
|
124
|
+
}
|
|
125
|
+
commitments.push(declaredCommitment);
|
|
126
|
+
for (let i = 1; i < events.length; i++) {
|
|
127
|
+
const events_for_index = events.filter(([_, b]) => b === i);
|
|
128
|
+
for (const [event, _withdraw_number] of events_for_index) {
|
|
129
|
+
try {
|
|
130
|
+
declaredCommitment = reconstructAccountCommitment(event, viewKey);
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
//What should we do here?
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
if (initialLabel != declaredCommitment.label) {
|
|
137
|
+
throw new Error("mismatch");
|
|
138
|
+
}
|
|
139
|
+
if (commitments[i - 1].hash != declaredCommitment.hash) {
|
|
140
|
+
throw new Error("mismatch");
|
|
141
|
+
}
|
|
142
|
+
commitments.push(declaredCommitment);
|
|
143
|
+
}
|
|
144
|
+
return commitments;
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=auditor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auditor.js","sourceRoot":"","sources":["../src/auditor.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,9 +26,9 @@ export declare const Mode: {
|
|
|
26
26
|
/** Execute the transaction on-chain */
|
|
27
27
|
readonly EXECUTE: "execute";
|
|
28
28
|
};
|
|
29
|
-
export type Mode = typeof Mode[keyof typeof Mode];
|
|
29
|
+
export type Mode = (typeof Mode)[keyof typeof Mode];
|
|
30
30
|
/** Option type for simulation mode */
|
|
31
|
-
export type OptionSimulate =
|
|
31
|
+
export type OptionSimulate = object;
|
|
32
32
|
/** Option type for execution mode with optional transaction details */
|
|
33
33
|
export type OptionExecute = {
|
|
34
34
|
details?: UniversalDetails;
|
|
@@ -44,7 +44,7 @@ export type OptionModeExecute = {
|
|
|
44
44
|
modeOptions?: OptionExecute;
|
|
45
45
|
};
|
|
46
46
|
/** Union type for all possible call results */
|
|
47
|
-
type CallResult = AllowArray<Call> | Omit<SimulateTransaction,
|
|
47
|
+
type CallResult = AllowArray<Call> | Omit<SimulateTransaction, "fee_estimation"> | TransactionResponse;
|
|
48
48
|
/**
|
|
49
49
|
* Service class for interacting with Privacy Pool contracts on Starknet.
|
|
50
50
|
*
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Contract, num } from "starknet";
|
|
1
|
+
import { Contract, num, } from "starknet";
|
|
2
2
|
import { EntryPointABI } from "../abis/EntryPoint.abi.js";
|
|
3
3
|
import { ERC20ABI } from "../abis/ERC20.abi.js";
|
|
4
4
|
import { PrivacyPoolABI } from "../abis/PrivacyPool.abi.js";
|
|
5
5
|
import { ETH_ADDRESS } from "../constants.js";
|
|
6
6
|
import { SNContractError, SNPoolError, StarknetSDKError } from "../errors/index.js";
|
|
7
|
-
import { castBigInt, toAddress } from "../utils.js";
|
|
7
|
+
import { castBigInt, toAddress, toCairoOption } from "../utils.js";
|
|
8
8
|
import { executeIntent, simulateIntent } from "./transactionHandler.js";
|
|
9
9
|
/**
|
|
10
10
|
* Execution modes for contract interactions.
|
|
@@ -13,11 +13,11 @@ export const Mode = {
|
|
|
13
13
|
/** Simulate the transaction without executing it */
|
|
14
14
|
SIMULATE: "simulate",
|
|
15
15
|
/** Execute the transaction on-chain */
|
|
16
|
-
EXECUTE: "execute"
|
|
16
|
+
EXECUTE: "execute",
|
|
17
17
|
};
|
|
18
18
|
/** Helper function for asserting instances */
|
|
19
19
|
function _isAccount(x) {
|
|
20
|
-
return
|
|
20
|
+
return x.simulateTransaction !== undefined && x.execute !== undefined;
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
23
|
* Internal wrapper function that handles different execution modes for contract calls.
|
|
@@ -80,7 +80,11 @@ export class SNContractInteractionsService {
|
|
|
80
80
|
*/
|
|
81
81
|
constructor(entrypointAddress, providerOrAccount) {
|
|
82
82
|
this.providerOrAccount = providerOrAccount;
|
|
83
|
-
this.entrypoint = new Contract({
|
|
83
|
+
this.entrypoint = new Contract({
|
|
84
|
+
abi: EntryPointABI,
|
|
85
|
+
address: entrypointAddress,
|
|
86
|
+
providerOrAccount: this.providerOrAccount,
|
|
87
|
+
}).typedv2(EntryPointABI);
|
|
84
88
|
}
|
|
85
89
|
/**
|
|
86
90
|
* Creates a typed PrivacyPool contract instance for the given address.
|
|
@@ -89,10 +93,18 @@ export class SNContractInteractionsService {
|
|
|
89
93
|
* @returns A typed contract instance for the PrivacyPool
|
|
90
94
|
*/
|
|
91
95
|
pool(address) {
|
|
92
|
-
return new Contract({
|
|
96
|
+
return new Contract({
|
|
97
|
+
abi: PrivacyPoolABI,
|
|
98
|
+
address,
|
|
99
|
+
providerOrAccount: this.providerOrAccount,
|
|
100
|
+
}).typedv2(PrivacyPoolABI);
|
|
93
101
|
}
|
|
94
102
|
erc20(address) {
|
|
95
|
-
return new Contract({
|
|
103
|
+
return new Contract({
|
|
104
|
+
abi: ERC20ABI,
|
|
105
|
+
address,
|
|
106
|
+
providerOrAccount: this.providerOrAccount,
|
|
107
|
+
}).typedv2(ERC20ABI);
|
|
96
108
|
}
|
|
97
109
|
depositERC20(asset, amount, precommitment, options) {
|
|
98
110
|
const call = this.entrypoint.populate("deposit", [asset, amount, precommitment]);
|
|
@@ -103,12 +115,20 @@ export class SNContractInteractionsService {
|
|
|
103
115
|
return _intentOptionWrapper(call, options && { ...options, account: this.providerOrAccount });
|
|
104
116
|
}
|
|
105
117
|
async withdraw(withdrawal, withdrawalProofGaraga, scope, options) {
|
|
118
|
+
const _withdrawal = {
|
|
119
|
+
...withdrawal,
|
|
120
|
+
auditorData: toCairoOption(withdrawal.auditorData),
|
|
121
|
+
};
|
|
106
122
|
const { poolAddress } = await this.getScopeData(scope);
|
|
107
|
-
const call = this.pool(poolAddress).populate("withdraw", [
|
|
123
|
+
const call = this.pool(poolAddress).populate("withdraw", [_withdrawal, { fullProof: withdrawalProofGaraga }]);
|
|
108
124
|
return _intentOptionWrapper(call, options && { ...options, account: this.providerOrAccount });
|
|
109
125
|
}
|
|
110
126
|
relay(withdrawal, withdrawalProofGaraga, scope, options) {
|
|
111
|
-
const
|
|
127
|
+
const _withdrawal = {
|
|
128
|
+
...withdrawal,
|
|
129
|
+
auditorData: toCairoOption(withdrawal.auditorData),
|
|
130
|
+
};
|
|
131
|
+
const call = this.entrypoint.populate("relay", [_withdrawal, scope, { fullProof: withdrawalProofGaraga }]);
|
|
112
132
|
return _intentOptionWrapper(call, options && { ...options, account: this.providerOrAccount });
|
|
113
133
|
}
|
|
114
134
|
ragequit(ragequitProofGaraga, privacyPoolAddress, options) {
|
|
@@ -162,7 +182,7 @@ export class SNContractInteractionsService {
|
|
|
162
182
|
const assetAddress = num.toHex64(await this.pool(poolAddress).asset());
|
|
163
183
|
return {
|
|
164
184
|
poolAddress,
|
|
165
|
-
assetAddress
|
|
185
|
+
assetAddress,
|
|
166
186
|
};
|
|
167
187
|
}
|
|
168
188
|
async getAssetConfig(asset) {
|
|
@@ -209,33 +229,65 @@ export class AdminContractInteractions {
|
|
|
209
229
|
this.entrypoint = contractService.entrypoint;
|
|
210
230
|
}
|
|
211
231
|
async registerPool(asset, pool, minimumDepositAmount, vettingFeeBPS, maxRelayFeeBPS, options) {
|
|
212
|
-
const call = this.entrypoint.populate("registerPool", [
|
|
213
|
-
|
|
232
|
+
const call = this.entrypoint.populate("registerPool", [
|
|
233
|
+
asset,
|
|
234
|
+
pool,
|
|
235
|
+
minimumDepositAmount,
|
|
236
|
+
vettingFeeBPS,
|
|
237
|
+
maxRelayFeeBPS,
|
|
238
|
+
]);
|
|
239
|
+
return _intentOptionWrapper(call, options && {
|
|
240
|
+
...options,
|
|
241
|
+
account: this.contractService.providerOrAccount,
|
|
242
|
+
});
|
|
214
243
|
}
|
|
215
244
|
async updateRoot(root, ipfsCID, options) {
|
|
216
245
|
_assertIpfsCID(ipfsCID);
|
|
217
246
|
const call = this.entrypoint.populate("updateRoot", [root, ipfsCID]);
|
|
218
|
-
return _intentOptionWrapper(call, options && {
|
|
247
|
+
return _intentOptionWrapper(call, options && {
|
|
248
|
+
...options,
|
|
249
|
+
account: this.contractService.providerOrAccount,
|
|
250
|
+
});
|
|
219
251
|
}
|
|
220
252
|
async removePool(asset, options) {
|
|
221
253
|
const call = this.entrypoint.populate("removePool", [asset]);
|
|
222
|
-
return _intentOptionWrapper(call, options && {
|
|
254
|
+
return _intentOptionWrapper(call, options && {
|
|
255
|
+
...options,
|
|
256
|
+
account: this.contractService.providerOrAccount,
|
|
257
|
+
});
|
|
223
258
|
}
|
|
224
259
|
async updatePoolConfiguration(asset, minimumDepositAmount, vettingFeeBPS, maxRelayFeeBPS, options) {
|
|
225
|
-
const call = this.entrypoint.populate("updatePoolConfiguration", [
|
|
226
|
-
|
|
260
|
+
const call = this.entrypoint.populate("updatePoolConfiguration", [
|
|
261
|
+
asset,
|
|
262
|
+
minimumDepositAmount,
|
|
263
|
+
vettingFeeBPS,
|
|
264
|
+
maxRelayFeeBPS,
|
|
265
|
+
]);
|
|
266
|
+
return _intentOptionWrapper(call, options && {
|
|
267
|
+
...options,
|
|
268
|
+
account: this.contractService.providerOrAccount,
|
|
269
|
+
});
|
|
227
270
|
}
|
|
228
271
|
async windDownPool(pool, options) {
|
|
229
272
|
const call = this.entrypoint.populate("windDownPool", [pool]);
|
|
230
|
-
return _intentOptionWrapper(call, options && {
|
|
273
|
+
return _intentOptionWrapper(call, options && {
|
|
274
|
+
...options,
|
|
275
|
+
account: this.contractService.providerOrAccount,
|
|
276
|
+
});
|
|
231
277
|
}
|
|
232
278
|
async withdrawFees(asset, recipient, options) {
|
|
233
279
|
const call = this.entrypoint.populate("withdrawFees", [asset, recipient]);
|
|
234
|
-
return _intentOptionWrapper(call, options && {
|
|
280
|
+
return _intentOptionWrapper(call, options && {
|
|
281
|
+
...options,
|
|
282
|
+
account: this.contractService.providerOrAccount,
|
|
283
|
+
});
|
|
235
284
|
}
|
|
236
285
|
async upgrade(newClassHash, options) {
|
|
237
286
|
const call = this.entrypoint.populate("upgrade", [newClassHash]);
|
|
238
|
-
return _intentOptionWrapper(call, options && {
|
|
287
|
+
return _intentOptionWrapper(call, options && {
|
|
288
|
+
...options,
|
|
289
|
+
account: this.contractService.providerOrAccount,
|
|
290
|
+
});
|
|
239
291
|
}
|
|
240
292
|
}
|
|
241
293
|
function _assertIpfsCID(ipfsCID) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.service.js","sourceRoot":"","sources":["../../src/contracts/contracts.service.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"contracts.service.js","sourceRoot":"","sources":["../../src/contracts/contracts.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { AllowArray, Call, InvokeFunctionResponse, Account as SNAccount, SimulateTransaction, UniversalDetails } from "starknet";
|
|
2
2
|
export declare function executeIntent(account: SNAccount, calls: AllowArray<Call>, transactionDetails?: UniversalDetails): Promise<InvokeFunctionResponse>;
|
|
3
|
-
export declare function simulateIntent(account: SNAccount, calls: AllowArray<Call>): Promise<Omit<SimulateTransaction,
|
|
3
|
+
export declare function simulateIntent(account: SNAccount, calls: AllowArray<Call>): Promise<Omit<SimulateTransaction, "fee_estimation">>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TransactionType } from "starknet";
|
|
1
|
+
import { TransactionType, } from "starknet";
|
|
2
2
|
import { SNContractError, StarknetSDKError } from "../errors/index.js";
|
|
3
3
|
import { parseContractError } from "../errors/contracts.errors.js";
|
|
4
4
|
export async function executeIntent(account, calls, transactionDetails) {
|
|
@@ -6,9 +6,7 @@ export async function executeIntent(account, calls, transactionDetails) {
|
|
|
6
6
|
return account.execute(calls, { ...sim, ...(transactionDetails || {}) });
|
|
7
7
|
}
|
|
8
8
|
export async function simulateIntent(account, calls) {
|
|
9
|
-
const simRes = await account.simulateTransaction([
|
|
10
|
-
{ type: TransactionType.INVOKE, payload: calls },
|
|
11
|
-
]);
|
|
9
|
+
const simRes = await account.simulateTransaction([{ type: TransactionType.INVOKE, payload: calls }]);
|
|
12
10
|
const sim = simRes[0];
|
|
13
11
|
if (sim === undefined || sim.transaction_trace.type !== "INVOKE") {
|
|
14
12
|
throw StarknetSDKError.unreachable();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionHandler.js","sourceRoot":"","sources":["../../src/contracts/transactionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"transactionHandler.js","sourceRoot":"","sources":["../../src/contracts/transactionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,eAAe,GAEhB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAkB,EAClB,KAAuB,EACvB,kBAAqC;IAErC,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACjD,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAkB,EAClB,KAAuB;IAEvB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAErG,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAEtB,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,iBAAiB,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACjE,MAAM,gBAAgB,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,EAAE,aAAa,EAAE,GAAG,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,CAAC;IACnE,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC;QAC/E,MAAM,eAAe,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
|