@permissionless-technologies/upp-sdk 0.4.0 → 0.4.2

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/index.cjs CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  var chunkUTAJSERA_cjs = require('./chunk-UTAJSERA.cjs');
4
4
  var chunkQ2E432UK_cjs = require('./chunk-Q2E432UK.cjs');
5
- var chunkUYE2JASE_cjs = require('./chunk-UYE2JASE.cjs');
6
- var chunk7BNJV2ZS_cjs = require('./chunk-7BNJV2ZS.cjs');
5
+ var chunkZQ5LLJQC_cjs = require('./chunk-ZQ5LLJQC.cjs');
7
6
  var chunkI5EKGD4P_cjs = require('./chunk-I5EKGD4P.cjs');
8
7
  var chunkSWTNJPK5_cjs = require('./chunk-SWTNJPK5.cjs');
9
8
  var chunkIIUKM5VE_cjs = require('./chunk-IIUKM5VE.cjs');
9
+ var chunk7BNJV2ZS_cjs = require('./chunk-7BNJV2ZS.cjs');
10
10
  var chunkU3YFYMWF_cjs = require('./chunk-U3YFYMWF.cjs');
11
11
  var chunk23B5XSS4_cjs = require('./chunk-23B5XSS4.cjs');
12
12
  var chunkXVIICZKW_cjs = require('./chunk-XVIICZKW.cjs');
@@ -3179,63 +3179,7 @@ Object.defineProperty(exports, "syncMerkleTree", {
3179
3179
  });
3180
3180
  Object.defineProperty(exports, "makeRpcIndexer", {
3181
3181
  enumerable: true,
3182
- get: function () { return chunkUYE2JASE_cjs.makeRpcIndexer; }
3183
- });
3184
- Object.defineProperty(exports, "DEFAULT_KEY_DERIVATION_CONFIG", {
3185
- enumerable: true,
3186
- get: function () { return chunk7BNJV2ZS_cjs.DEFAULT_KEY_DERIVATION_CONFIG; }
3187
- });
3188
- Object.defineProperty(exports, "deriveDualKeysFromSignature", {
3189
- enumerable: true,
3190
- get: function () { return chunk7BNJV2ZS_cjs.deriveDualKeysFromSignature; }
3191
- });
3192
- Object.defineProperty(exports, "deriveKeysFromSignature", {
3193
- enumerable: true,
3194
- get: function () { return chunk7BNJV2ZS_cjs.deriveKeysFromSignature; }
3195
- });
3196
- Object.defineProperty(exports, "deriveNullifierKey", {
3197
- enumerable: true,
3198
- get: function () { return chunk7BNJV2ZS_cjs.deriveNullifierKey; }
3199
- });
3200
- Object.defineProperty(exports, "derivePerNoteKey", {
3201
- enumerable: true,
3202
- get: function () { return chunk7BNJV2ZS_cjs.derivePerNoteKey; }
3203
- });
3204
- Object.defineProperty(exports, "derivePerNoteKeyFromKeys", {
3205
- enumerable: true,
3206
- get: function () { return chunk7BNJV2ZS_cjs.derivePerNoteKeyFromKeys; }
3207
- });
3208
- Object.defineProperty(exports, "deriveStarkKeysFromSignature", {
3209
- enumerable: true,
3210
- get: function () { return chunk7BNJV2ZS_cjs.deriveStarkKeysFromSignature; }
3211
- });
3212
- Object.defineProperty(exports, "deriveStarkPerNoteKey", {
3213
- enumerable: true,
3214
- get: function () { return chunk7BNJV2ZS_cjs.deriveStarkPerNoteKey; }
3215
- });
3216
- Object.defineProperty(exports, "deriveStarkPerNoteKeyFromKeys", {
3217
- enumerable: true,
3218
- get: function () { return chunk7BNJV2ZS_cjs.deriveStarkPerNoteKeyFromKeys; }
3219
- });
3220
- Object.defineProperty(exports, "exportViewingKeysForAudit", {
3221
- enumerable: true,
3222
- get: function () { return chunk7BNJV2ZS_cjs.exportViewingKeysForAudit; }
3223
- });
3224
- Object.defineProperty(exports, "getKeyDerivationMessage", {
3225
- enumerable: true,
3226
- get: function () { return chunk7BNJV2ZS_cjs.getKeyDerivationMessage; }
3227
- });
3228
- Object.defineProperty(exports, "getViewingKeyFromExport", {
3229
- enumerable: true,
3230
- get: function () { return chunk7BNJV2ZS_cjs.getViewingKeyFromExport; }
3231
- });
3232
- Object.defineProperty(exports, "validateAuditKeyExport", {
3233
- enumerable: true,
3234
- get: function () { return chunk7BNJV2ZS_cjs.validateAuditKeyExport; }
3235
- });
3236
- Object.defineProperty(exports, "verifyKeysMatchSignature", {
3237
- enumerable: true,
3238
- get: function () { return chunk7BNJV2ZS_cjs.verifyKeysMatchSignature; }
3182
+ get: function () { return chunkZQ5LLJQC_cjs.makeRpcIndexer; }
3239
3183
  });
3240
3184
  Object.defineProperty(exports, "addPoints", {
3241
3185
  enumerable: true,
@@ -3357,6 +3301,62 @@ Object.defineProperty(exports, "verifyMerkleProof", {
3357
3301
  enumerable: true,
3358
3302
  get: function () { return chunkIIUKM5VE_cjs.verifyMerkleProof; }
3359
3303
  });
3304
+ Object.defineProperty(exports, "DEFAULT_KEY_DERIVATION_CONFIG", {
3305
+ enumerable: true,
3306
+ get: function () { return chunk7BNJV2ZS_cjs.DEFAULT_KEY_DERIVATION_CONFIG; }
3307
+ });
3308
+ Object.defineProperty(exports, "deriveDualKeysFromSignature", {
3309
+ enumerable: true,
3310
+ get: function () { return chunk7BNJV2ZS_cjs.deriveDualKeysFromSignature; }
3311
+ });
3312
+ Object.defineProperty(exports, "deriveKeysFromSignature", {
3313
+ enumerable: true,
3314
+ get: function () { return chunk7BNJV2ZS_cjs.deriveKeysFromSignature; }
3315
+ });
3316
+ Object.defineProperty(exports, "deriveNullifierKey", {
3317
+ enumerable: true,
3318
+ get: function () { return chunk7BNJV2ZS_cjs.deriveNullifierKey; }
3319
+ });
3320
+ Object.defineProperty(exports, "derivePerNoteKey", {
3321
+ enumerable: true,
3322
+ get: function () { return chunk7BNJV2ZS_cjs.derivePerNoteKey; }
3323
+ });
3324
+ Object.defineProperty(exports, "derivePerNoteKeyFromKeys", {
3325
+ enumerable: true,
3326
+ get: function () { return chunk7BNJV2ZS_cjs.derivePerNoteKeyFromKeys; }
3327
+ });
3328
+ Object.defineProperty(exports, "deriveStarkKeysFromSignature", {
3329
+ enumerable: true,
3330
+ get: function () { return chunk7BNJV2ZS_cjs.deriveStarkKeysFromSignature; }
3331
+ });
3332
+ Object.defineProperty(exports, "deriveStarkPerNoteKey", {
3333
+ enumerable: true,
3334
+ get: function () { return chunk7BNJV2ZS_cjs.deriveStarkPerNoteKey; }
3335
+ });
3336
+ Object.defineProperty(exports, "deriveStarkPerNoteKeyFromKeys", {
3337
+ enumerable: true,
3338
+ get: function () { return chunk7BNJV2ZS_cjs.deriveStarkPerNoteKeyFromKeys; }
3339
+ });
3340
+ Object.defineProperty(exports, "exportViewingKeysForAudit", {
3341
+ enumerable: true,
3342
+ get: function () { return chunk7BNJV2ZS_cjs.exportViewingKeysForAudit; }
3343
+ });
3344
+ Object.defineProperty(exports, "getKeyDerivationMessage", {
3345
+ enumerable: true,
3346
+ get: function () { return chunk7BNJV2ZS_cjs.getKeyDerivationMessage; }
3347
+ });
3348
+ Object.defineProperty(exports, "getViewingKeyFromExport", {
3349
+ enumerable: true,
3350
+ get: function () { return chunk7BNJV2ZS_cjs.getViewingKeyFromExport; }
3351
+ });
3352
+ Object.defineProperty(exports, "validateAuditKeyExport", {
3353
+ enumerable: true,
3354
+ get: function () { return chunk7BNJV2ZS_cjs.validateAuditKeyExport; }
3355
+ });
3356
+ Object.defineProperty(exports, "verifyKeysMatchSignature", {
3357
+ enumerable: true,
3358
+ get: function () { return chunk7BNJV2ZS_cjs.verifyKeysMatchSignature; }
3359
+ });
3360
3360
  Object.defineProperty(exports, "DIGEST_SIZE", {
3361
3361
  enumerable: true,
3362
3362
  get: function () { return chunkU3YFYMWF_cjs.DIGEST_SIZE; }
package/dist/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  export { NOTE_VERSION, createNote, createUPPClient, decryptNote, encryptNote } from './chunk-CEJN5ZE5.js';
2
2
  export { buildTransfer, buildUPPTransferCircuitInputs, computeNullifier, formatOutputForContract, getDeployment, getDeploymentOrThrow, getMerkleProofsForNotes, getSupportedChainIds, getTokenAddress, hasDeployment, registerDeployment, syncMerkleTree } from './chunk-OBBSIPEK.js';
3
- export { makeRpcIndexer } from './chunk-ZTVXII74.js';
4
- export { DEFAULT_KEY_DERIVATION_CONFIG, deriveDualKeysFromSignature, deriveKeysFromSignature, deriveNullifierKey, derivePerNoteKey, derivePerNoteKeyFromKeys, deriveStarkKeysFromSignature, deriveStarkPerNoteKey, deriveStarkPerNoteKeyFromKeys, exportViewingKeysForAudit, getKeyDerivationMessage, getViewingKeyFromExport, validateAuditKeyExport, verifyKeysMatchSignature } from './chunk-DTEAFJG7.js';
3
+ export { makeRpcIndexer } from './chunk-6BHF4HOB.js';
5
4
  export { addPoints, computeSharedSecret, deriveDecryptionViewingKey, deriveEncryptionViewingKey, getBasePoint, getSubOrder, isOnCurve, mulPointScalar, packPoint, pointToTuple, privateToPublic, tupleToPoint } from './chunk-EHGH6TAW.js';
6
5
  export { STARK_AMOUNT_SCALE, STARK_ASP_TREE_DEPTH, STARK_STATE_TREE_DEPTH, addressToM31, buildStarkTransferWitness, buildStarkWithdrawWitness, computeTransferPublicInputsSeed, computeWithdrawPublicInputsSeed, isStarkAligned, packM31Digest, scaleAmountForStark, splitSecretToM31Limbs, truncateToM31 } from './chunk-7T4CUE6E.js';
7
6
  export { MAX_TREE_DEPTH, MerkleTree, buildMerkleTree, getMerkleProof, verifyMerkleProof } from './chunk-GPF72JFR.js';
7
+ export { DEFAULT_KEY_DERIVATION_CONFIG, deriveDualKeysFromSignature, deriveKeysFromSignature, deriveNullifierKey, derivePerNoteKey, derivePerNoteKeyFromKeys, deriveStarkKeysFromSignature, deriveStarkPerNoteKey, deriveStarkPerNoteKeyFromKeys, exportViewingKeysForAudit, getKeyDerivationMessage, getViewingKeyFromExport, validateAuditKeyExport, verifyKeysMatchSignature } from './chunk-DTEAFJG7.js';
8
8
  export { DIGEST_SIZE, M31_P, SECRET_LIMBS, computeStarkCommitment, computeStarkNullifier, computeStarkOwnerHash, keccakHashTwo, keccakM31, splitToM31Limbs } from './chunk-6TFDBBAQ.js';
9
9
  export { ADDRESS_VERSION, DirectAccountAdapter, NoteStore, RATE_PRECISION, STARK_ADDRESS_VERSION, STARK_STEALTH_ADDRESS_PREFIX, STEALTH_ADDRESS_PREFIX, SWAP_EVENTS_ABI, SWAP_ORDER_CANCELLED_EVENT, SWAP_ORDER_CLAIMED_EVENT, SWAP_ORDER_FILLED_EVENT, SWAP_ORDER_PLACED_EVENT, StorableAccountAdapter, computeCancelKeyHash, computeFillPercentage, computeGiveAmount, computeNoteEncryptionKey, computeRate, computeTakeAmount, computeTotalBuyAmount, createOneTimeKeys, decodeStarkStealthAddress, decodeStealthAddress, detectAddressType, encodeStarkStealthAddress, encodeStealthAddress, filterOrdersByASP, filterOrdersByTokenPair, formatRate, generateCancelSecret, generateStarkStealthAddress, generateStealthAddress, getCancelSecret, getOwnOrderIds, isFillerASPAccepted, isOrderActive, isValidStarkStealthAddress, isValidStealthAddress, removeCancelSecret, storeCancelSecret, verifyOwnership } from './chunk-RNUG3EFC.js';
10
10
  export { DEMO_ASP_ID, DEMO_ASP_NAME, buildASPTree, computeMultiOriginASPRoot, computeSingleOriginASPRoot, createDemoASPRoot, generateASPProof, generateMultiOriginASPProof, generateSingleOriginASPProof, verifyASPProof } from './chunk-6IEYWJVS.js';
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkUYE2JASE_cjs = require('../chunk-UYE2JASE.cjs');
3
+ var chunkZQ5LLJQC_cjs = require('../chunk-ZQ5LLJQC.cjs');
4
4
  var chunkERQE57IA_cjs = require('../chunk-ERQE57IA.cjs');
5
5
  require('../chunk-G7VZBCD6.cjs');
6
6
 
@@ -8,23 +8,23 @@ require('../chunk-G7VZBCD6.cjs');
8
8
 
9
9
  Object.defineProperty(exports, "computeSearchTag", {
10
10
  enumerable: true,
11
- get: function () { return chunkUYE2JASE_cjs.computeSearchTag; }
11
+ get: function () { return chunkZQ5LLJQC_cjs.computeSearchTag; }
12
12
  });
13
13
  Object.defineProperty(exports, "makeRpcIndexer", {
14
14
  enumerable: true,
15
- get: function () { return chunkUYE2JASE_cjs.makeRpcIndexer; }
15
+ get: function () { return chunkZQ5LLJQC_cjs.makeRpcIndexer; }
16
16
  });
17
17
  Object.defineProperty(exports, "matchesSearchTag", {
18
18
  enumerable: true,
19
- get: function () { return chunkUYE2JASE_cjs.matchesSearchTag; }
19
+ get: function () { return chunkZQ5LLJQC_cjs.matchesSearchTag; }
20
20
  });
21
21
  Object.defineProperty(exports, "tryDecryptNote", {
22
22
  enumerable: true,
23
- get: function () { return chunkUYE2JASE_cjs.tryDecryptNote; }
23
+ get: function () { return chunkZQ5LLJQC_cjs.tryDecryptNote; }
24
24
  });
25
25
  Object.defineProperty(exports, "unpackNoteData", {
26
26
  enumerable: true,
27
- get: function () { return chunkUYE2JASE_cjs.unpackNoteData; }
27
+ get: function () { return chunkZQ5LLJQC_cjs.unpackNoteData; }
28
28
  });
29
29
  Object.defineProperty(exports, "createAutoAdapter", {
30
30
  enumerable: true,
@@ -1,4 +1,4 @@
1
- export { computeSearchTag, makeRpcIndexer, matchesSearchTag, tryDecryptNote, unpackNoteData } from '../chunk-ZTVXII74.js';
1
+ export { computeSearchTag, makeRpcIndexer, matchesSearchTag, tryDecryptNote, unpackNoteData } from '../chunk-6BHF4HOB.js';
2
2
  export { createAutoAdapter, createIndexedDBAdapter, createLocalStorageAdapter, createMemoryAdapter, indexedDBAdapter, localStorageAdapter, memoryAdapter } from '../chunk-XV72HNHN.js';
3
3
  import '../chunk-Z6ZWNWWR.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -512,11 +512,10 @@ function UPPAccountProvider({
512
512
  const tokenRaw = "0x" + Array.from(ptBytes.slice(84, 104)).map((b) => b.toString(16).padStart(2, "0")).join("");
513
513
  const origin = viem.getAddress(originRaw);
514
514
  const token = viem.getAddress(tokenRaw);
515
- const pubkey = await sdk.privateToPublic(spendingSecret);
515
+ const ownerHash = await sdk.poseidon([spendingSecret]);
516
516
  const expectedCommitment = await sdk.poseidon([
517
517
  amount,
518
- pubkey.x,
519
- pubkey.y,
518
+ ownerHash,
520
519
  blinding,
521
520
  BigInt(origin),
522
521
  BigInt(token)
@@ -1607,7 +1606,7 @@ function usePoolTransfer(config) {
1607
1606
  getMerkleProofsForNotes,
1608
1607
  buildUPPTransferCircuitInputs
1609
1608
  } = transferModule;
1610
- const { generateUPPProof, formatProofForContract } = proofModule;
1609
+ const { generateUPPProof, formatPlonkProofForContract } = proofModule;
1611
1610
  const { generateASPProof: generateASPProof2, DEMO_ASP_ID } = aspModule;
1612
1611
  setStage("syncing_merkle");
1613
1612
  const { tree, leaves } = await syncMerkleTree(cfg.publicClient, cfg.poolAddress);
@@ -1641,20 +1640,10 @@ function usePoolTransfer(config) {
1641
1640
  circuitInputs,
1642
1641
  cfg.circuitBaseUrl ?? "/circuits/"
1643
1642
  );
1644
- const formattedProof = formatProofForContract(proof);
1645
- const proofArray = [
1646
- formattedProof.a[0],
1647
- formattedProof.a[1],
1648
- formattedProof.b[0][0],
1649
- formattedProof.b[0][1],
1650
- formattedProof.b[1][0],
1651
- formattedProof.b[1][1],
1652
- formattedProof.c[0],
1653
- formattedProof.c[1]
1654
- ];
1643
+ const formattedProof = await formatPlonkProofForContract(proof);
1655
1644
  return {
1656
1645
  circuit: "transfer",
1657
- proof: proofArray,
1646
+ proof: formattedProof,
1658
1647
  nullifier: viem.toHex(BigInt(circuitInputs.nullifier), { size: 32 }),
1659
1648
  stateRoot: BigInt(circuitInputs.stateRoot),
1660
1649
  aspRoot: BigInt(circuitInputs.aspRoot),
@@ -1762,7 +1751,7 @@ function useWithdraw(config) {
1762
1751
  import('../index.cjs')
1763
1752
  ]);
1764
1753
  const { syncMerkleTree, getMerkleProofsForNotes } = transferModule;
1765
- const { generateUPPProof, formatProofForContract } = proofModule;
1754
+ const { generateUPPProof, formatPlonkProofForContract } = proofModule;
1766
1755
  setStage("syncing_merkle");
1767
1756
  const { tree, leaves } = await syncMerkleTree(cfg.publicClient, cfg.poolAddress);
1768
1757
  const spendableNote = {
@@ -1827,20 +1816,10 @@ function useWithdraw(config) {
1827
1816
  circuitInputs,
1828
1817
  cfg.circuitBaseUrl ?? "/circuits/"
1829
1818
  );
1830
- const formattedProof = formatProofForContract(proof);
1819
+ const formattedProof = await formatPlonkProofForContract(proof);
1831
1820
  const stateRoot = stateRootBI;
1832
- const proofArray = [
1833
- formattedProof.a[0],
1834
- formattedProof.a[1],
1835
- formattedProof.b[0][0],
1836
- formattedProof.b[0][1],
1837
- formattedProof.b[1][0],
1838
- formattedProof.b[1][1],
1839
- formattedProof.c[0],
1840
- formattedProof.c[1]
1841
- ];
1842
1821
  return {
1843
- proof: proofArray,
1822
+ proof: formattedProof,
1844
1823
  nullifier: viem.toHex(nullifier, { size: 32 }),
1845
1824
  stateRoot,
1846
1825
  aspRoot,
@@ -2143,7 +2122,7 @@ function useSwap(config) {
2143
2122
  import('../asp-CUE3NMBN.cjs')
2144
2123
  ]);
2145
2124
  const { syncMerkleTree, getMerkleProofsForNotes } = transferModule;
2146
- const { generateUPPProof, formatProofForContract } = proofModule;
2125
+ const { generateUPPProof, formatPlonkProofForContract } = proofModule;
2147
2126
  const { generateASPProof: generateASPProof2 } = aspModule;
2148
2127
  setStage("syncing_merkle");
2149
2128
  const { tree, leaves } = await syncMerkleTree(cfg.publicClient, cfg.poolAddress);
@@ -2208,23 +2187,13 @@ function useSwap(config) {
2208
2187
  circuitInputs,
2209
2188
  cfg.circuitBaseUrl ?? "/circuits/"
2210
2189
  );
2211
- const formattedProof = formatProofForContract(proof);
2212
- const proofArray = [
2213
- formattedProof.a[0],
2214
- formattedProof.a[1],
2215
- formattedProof.b[0][0],
2216
- formattedProof.b[0][1],
2217
- formattedProof.b[1][0],
2218
- formattedProof.b[1][1],
2219
- formattedProof.c[0],
2220
- formattedProof.c[1]
2221
- ];
2190
+ const formattedProof = await formatPlonkProofForContract(proof);
2222
2191
  const cancelSecret = chunk23B5XSS4_cjs.generateCancelSecret();
2223
2192
  const cancelKeyHash = chunk23B5XSS4_cjs.computeCancelKeyHash(cancelSecret);
2224
2193
  const currentBlock = await cfg.publicClient.getBlockNumber();
2225
2194
  const expiry = currentBlock + expiryBlocks;
2226
2195
  return {
2227
- proof: proofArray,
2196
+ proof: formattedProof,
2228
2197
  nullifier: viem.toHex(nullifier, { size: 32 }),
2229
2198
  stateRoot: stateRootBI,
2230
2199
  aspRoot: aspProofData.aspRoot,
@@ -2295,7 +2264,7 @@ function useSwap(config) {
2295
2264
  import('../asp-CUE3NMBN.cjs')
2296
2265
  ]);
2297
2266
  const { syncMerkleTree, getMerkleProofsForNotes } = transferModule;
2298
- const { generateUPPProof, formatProofForContract } = proofModule;
2267
+ const { generateUPPProof, formatPlonkProofForContract } = proofModule;
2299
2268
  const { generateASPProof: generateASPProof2 } = aspModule;
2300
2269
  const fillerOrigin = ethAddress ? BigInt(ethAddress) : BigInt(masterKeys.ownerHash);
2301
2270
  const fillerNoteData = await createNoteForSelf(
@@ -2366,24 +2335,14 @@ function useSwap(config) {
2366
2335
  circuitInputs,
2367
2336
  cfg.circuitBaseUrl ?? "/circuits/"
2368
2337
  );
2369
- const formattedProof = formatProofForContract(proof);
2370
- const proofArray = [
2371
- formattedProof.a[0],
2372
- formattedProof.a[1],
2373
- formattedProof.b[0][0],
2374
- formattedProof.b[0][1],
2375
- formattedProof.b[1][0],
2376
- formattedProof.b[1][1],
2377
- formattedProof.c[0],
2378
- formattedProof.c[1]
2379
- ];
2338
+ const formattedProof = await formatPlonkProofForContract(proof);
2380
2339
  const { encodePacked: encodePacked3 } = await import('viem');
2381
2340
  const packedFillerNote = encodePacked3(
2382
2341
  ["uint64", "uint256", "bytes"],
2383
2342
  [fillerNoteData.searchTag, fillerNoteData.ownerHash, fillerNoteData.encryptedNote]
2384
2343
  );
2385
2344
  return {
2386
- proof: proofArray,
2345
+ proof: formattedProof,
2387
2346
  nullifier: viem.toHex(nullifier, { size: 32 }),
2388
2347
  stateRoot: stateRootBI,
2389
2348
  aspRoot: aspProofData.aspRoot,
@@ -2524,7 +2483,7 @@ function useSwap(config) {
2524
2483
  import('../asp-CUE3NMBN.cjs')
2525
2484
  ]);
2526
2485
  const { syncMerkleTree, getMerkleProofsForNotes, buildUPPTransferCircuitInputs } = transferModule;
2527
- const { generateUPPProof, formatProofForContract } = proofModule;
2486
+ const { generateUPPProof, formatPlonkProofForContract } = proofModule;
2528
2487
  const { generateASPProof: generateASPProof2, DEMO_ASP_ID } = aspModule;
2529
2488
  setStage("syncing_merkle");
2530
2489
  const { tree, leaves } = await syncMerkleTree(cfg.publicClient, cfg.poolAddress);
@@ -2554,17 +2513,7 @@ function useSwap(config) {
2554
2513
  circuitInputs,
2555
2514
  cfg.circuitBaseUrl ?? "/circuits/"
2556
2515
  );
2557
- const formattedProof = formatProofForContract(proof);
2558
- const proofArray = [
2559
- formattedProof.a[0],
2560
- formattedProof.a[1],
2561
- formattedProof.b[0][0],
2562
- formattedProof.b[0][1],
2563
- formattedProof.b[1][0],
2564
- formattedProof.b[1][1],
2565
- formattedProof.c[0],
2566
- formattedProof.c[1]
2567
- ];
2516
+ const formattedProof = await formatPlonkProofForContract(proof);
2568
2517
  const { encodePacked: encodePacked3 } = await import('viem');
2569
2518
  const packNote = (n) => encodePacked3(
2570
2519
  ["uint64", "uint256", "bytes"],
@@ -2598,7 +2547,7 @@ function useSwap(config) {
2598
2547
  timestamp: Date.now()
2599
2548
  };
2600
2549
  return {
2601
- proof: proofArray,
2550
+ proof: formattedProof,
2602
2551
  nullifier: viem.toHex(BigInt(circuitInputs.nullifier), { size: 32 }),
2603
2552
  stateRoot: BigInt(circuitInputs.stateRoot),
2604
2553
  aspRoot: BigInt(circuitInputs.aspRoot),