@charterlabs/rhinestone-sdk 0.2.6 → 0.2.7-dev.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.
Files changed (85) hide show
  1. package/dist/src/accounts/index.d.ts +3 -2
  2. package/dist/src/accounts/index.d.ts.map +1 -1
  3. package/dist/src/accounts/index.js +41 -8
  4. package/dist/src/accounts/index.test.js +3 -3
  5. package/dist/src/accounts/json-rpc/index.d.ts +5 -0
  6. package/dist/src/accounts/json-rpc/index.d.ts.map +1 -0
  7. package/dist/src/accounts/json-rpc/index.js +16 -0
  8. package/dist/src/accounts/json-rpc/index.test.d.ts +2 -0
  9. package/dist/src/accounts/json-rpc/index.test.d.ts.map +1 -0
  10. package/dist/src/accounts/json-rpc/index.test.js +16 -0
  11. package/dist/src/accounts/json-rpc/providers.d.ts +4 -0
  12. package/dist/src/accounts/json-rpc/providers.d.ts.map +1 -0
  13. package/dist/src/accounts/json-rpc/providers.js +14 -0
  14. package/dist/src/accounts/json-rpc/providers.test.d.ts +2 -0
  15. package/dist/src/accounts/json-rpc/providers.test.d.ts.map +1 -0
  16. package/dist/src/accounts/json-rpc/providers.test.js +15 -0
  17. package/dist/src/accounts/kernel.test.js +8 -8
  18. package/dist/src/accounts/nexus.d.ts +1 -2
  19. package/dist/src/accounts/nexus.d.ts.map +1 -1
  20. package/dist/src/accounts/nexus.js +43 -73
  21. package/dist/src/accounts/nexus.test.js +12 -12
  22. package/dist/src/accounts/safe.test.js +8 -8
  23. package/dist/src/accounts/signing/common.d.ts +10 -6
  24. package/dist/src/accounts/signing/common.d.ts.map +1 -1
  25. package/dist/src/accounts/signing/common.js +29 -9
  26. package/dist/src/accounts/signing/message.d.ts +2 -2
  27. package/dist/src/accounts/signing/message.d.ts.map +1 -1
  28. package/dist/src/accounts/signing/message.js +7 -9
  29. package/dist/src/accounts/signing/passkeys.d.ts +29 -0
  30. package/dist/src/accounts/signing/passkeys.d.ts.map +1 -0
  31. package/dist/src/accounts/signing/passkeys.js +90 -0
  32. package/dist/src/accounts/signing/passkeys.test.d.ts +2 -0
  33. package/dist/src/accounts/signing/passkeys.test.d.ts.map +1 -0
  34. package/dist/src/accounts/signing/passkeys.test.js +73 -0
  35. package/dist/src/accounts/signing/typedData.d.ts +2 -2
  36. package/dist/src/accounts/signing/typedData.d.ts.map +1 -1
  37. package/dist/src/accounts/signing/typedData.js +7 -9
  38. package/dist/src/accounts/startale.d.ts.map +1 -1
  39. package/dist/src/accounts/startale.js +1 -1
  40. package/dist/src/accounts/startale.test.js +8 -8
  41. package/dist/src/accounts/utils.d.ts +3 -3
  42. package/dist/src/accounts/utils.d.ts.map +1 -1
  43. package/dist/src/accounts/utils.js +3 -40
  44. package/dist/src/actions/index.d.ts +45 -1
  45. package/dist/src/actions/index.d.ts.map +1 -1
  46. package/dist/src/actions/index.js +168 -6
  47. package/dist/src/actions/index.test.js +16 -16
  48. package/dist/src/execution/index.d.ts.map +1 -1
  49. package/dist/src/execution/index.js +3 -6
  50. package/dist/src/execution/utils.d.ts +1 -1
  51. package/dist/src/execution/utils.d.ts.map +1 -1
  52. package/dist/src/execution/utils.js +12 -14
  53. package/dist/src/index.d.ts +7 -6
  54. package/dist/src/index.d.ts.map +1 -1
  55. package/dist/src/index.js +14 -3
  56. package/dist/src/modules/index.d.ts +2 -17
  57. package/dist/src/modules/index.d.ts.map +1 -1
  58. package/dist/src/modules/index.js +4 -49
  59. package/dist/src/modules/index.test.js +2 -22
  60. package/dist/src/modules/omni-account.d.ts +2 -1
  61. package/dist/src/modules/omni-account.d.ts.map +1 -1
  62. package/dist/src/modules/omni-account.js +3 -1
  63. package/dist/src/modules/validators/core.d.ts +2 -3
  64. package/dist/src/modules/validators/core.d.ts.map +1 -1
  65. package/dist/src/modules/validators/core.js +45 -43
  66. package/dist/src/modules/validators/core.test.js +6 -6
  67. package/dist/src/modules/validators/smart-sessions.test.js +4 -4
  68. package/dist/src/modules/validators/webauthn-contract.d.ts.map +1 -1
  69. package/dist/src/orchestrator/client.d.ts +2 -2
  70. package/dist/src/orchestrator/client.d.ts.map +1 -1
  71. package/dist/src/orchestrator/consts.d.ts +2 -1
  72. package/dist/src/orchestrator/consts.d.ts.map +1 -1
  73. package/dist/src/orchestrator/consts.js +3 -1
  74. package/dist/src/orchestrator/index.d.ts +1 -1
  75. package/dist/src/orchestrator/index.d.ts.map +1 -1
  76. package/dist/src/orchestrator/registry.d.ts +1 -23
  77. package/dist/src/orchestrator/registry.d.ts.map +1 -1
  78. package/dist/src/orchestrator/registry.js +22 -24
  79. package/dist/src/orchestrator/registry.test.js +4 -4
  80. package/dist/src/orchestrator/types.d.ts +1 -6
  81. package/dist/src/orchestrator/types.d.ts.map +1 -1
  82. package/dist/src/types.d.ts +10 -4
  83. package/dist/src/types.d.ts.map +1 -1
  84. package/package.json +1 -1
  85. package/dist/src/orchestrator/registry.json +0 -365
@@ -15,25 +15,25 @@ const MOCK_MODULE_ADDRESS = '0x28de6501fa86f2e6cd0b33c3aabdaeb4a1b93f3f';
15
15
  },
16
16
  rhinestoneApiKey: consts_1.MOCK_API_KEY,
17
17
  });
18
- (0, vitest_1.expect)(factory).toEqual('0xFF4454d15707a6f6BF01540796040f9E1646322C');
19
- (0, vitest_1.expect)(factoryData).toEqual('0xea6d13ac0000000000000000000000000000000000000000000000000000000000000040c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470000000000000000000000000000000000000000000000000000000000000036000000000000000000000000040e89a87c56a340c9257350dedf4b89a3fccccd3000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002e441bede0300000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb7000000000000000000000000f6c02c78ded62973b43bfa523b247da09948693600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
18
+ (0, vitest_1.expect)(factory).toEqual('0x0000000000679A258c64d2F20F310e12B64b7375');
19
+ (0, vitest_1.expect)(factoryData).toEqual('0xea6d13ac0000000000000000000000000000000000000000000000000000000000000040c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000006efb61d8c9546ff1b500de3f244ea7000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002e441bede0300000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb7000000000000000000000000f6c02c78ded62973b43bfa523b247da09948693600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
20
20
  (0, vitest_1.expect)(salt).toEqual('0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470');
21
- (0, vitest_1.expect)(implementation).toEqual('0x55cc6609fDb3620ABeABf4dB020abfc469494778');
22
- (0, vitest_1.expect)(initializationCallData).toEqual('0x4b6a14190000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000036000000000000000000000000040e89a87c56a340c9257350dedf4b89a3fccccd3000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002e441bede0300000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb7000000000000000000000000f6c02c78ded62973b43bfa523b247da09948693600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
21
+ (0, vitest_1.expect)(implementation).toEqual('0x000000000032dDC454C3BDcba80484Ad5A798705');
22
+ (0, vitest_1.expect)(initializationCallData).toEqual('0x4b6a14190000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000006efb61d8c9546ff1b500de3f244ea7000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002e441bede0300000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb7000000000000000000000000f6c02c78ded62973b43bfa523b247da09948693600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
23
23
  });
24
24
  (0, vitest_1.test)('Passkey owner', () => {
25
25
  const { factory, factoryData, salt, implementation, initializationCallData, } = (0, nexus_1.getDeployArgs)({
26
26
  owners: {
27
27
  type: 'passkey',
28
- account: consts_1.passkeyAccount,
28
+ accounts: [consts_1.passkeyAccount],
29
29
  },
30
30
  rhinestoneApiKey: consts_1.MOCK_API_KEY,
31
31
  });
32
- (0, vitest_1.expect)(factory).toEqual('0xFF4454d15707a6f6BF01540796040f9E1646322C');
33
- (0, vitest_1.expect)(factoryData).toEqual('0xea6d13ac0000000000000000000000000000000000000000000000000000000000000040c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47000000000000000000000000000000000000000000000000000000000000003a000000000000000000000000040e89a87c56a340c9257350dedf4b89a3fccccd30000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000032441bede0300000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000002e000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000578c4cb0e472a5462da43c495c3f3300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060580a9af0569ad3905b26a703201b358aa0904236642ebe79b22a19d00d3737637d46f725a5427ae45a9569259bf67e1e16b187d7b3ad1ed70138c4f0409677d19c9a01073b202db2ed56e604ad11db557d8c3ad75181619597f21b830f2da82a0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
32
+ (0, vitest_1.expect)(factory).toEqual('0x0000000000679A258c64d2F20F310e12B64b7375');
33
+ (0, vitest_1.expect)(factoryData).toEqual('0xea6d13ac0000000000000000000000000000000000000000000000000000000000000040c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000006efb61d8c9546ff1b500de3f244ea7000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003448643787600000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000578c4cb0e472a5462da43c495c3f33000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001580a9af0569ad3905b26a703201b358aa0904236642ebe79b22a19d00d3737637d46f725a5427ae45a9569259bf67e1e16b187d7b3ad1ed70138c4f0409677d100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
34
34
  (0, vitest_1.expect)(salt).toEqual('0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470');
35
- (0, vitest_1.expect)(implementation).toEqual('0x55cc6609fDb3620ABeABf4dB020abfc469494778');
36
- (0, vitest_1.expect)(initializationCallData).toEqual('0x4b6a1419000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000003a000000000000000000000000040e89a87c56a340c9257350dedf4b89a3fccccd30000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000032441bede0300000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000002e000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000578c4cb0e472a5462da43c495c3f3300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000060580a9af0569ad3905b26a703201b358aa0904236642ebe79b22a19d00d3737637d46f725a5427ae45a9569259bf67e1e16b187d7b3ad1ed70138c4f0409677d19c9a01073b202db2ed56e604ad11db557d8c3ad75181619597f21b830f2da82a0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
35
+ (0, vitest_1.expect)(implementation).toEqual('0x000000000032dDC454C3BDcba80484Ad5A798705');
36
+ (0, vitest_1.expect)(initializationCallData).toEqual('0x4b6a1419000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000006efb61d8c9546ff1b500de3f244ea7000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003448643787600000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000578c4cb0e472a5462da43c495c3f33000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001580a9af0569ad3905b26a703201b358aa0904236642ebe79b22a19d00d3737637d46f725a5427ae45a9569259bf67e1e16b187d7b3ad1ed70138c4f0409677d100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
37
37
  });
38
38
  });
39
39
  (0, vitest_1.describe)('Get Address', () => {
@@ -45,17 +45,17 @@ const MOCK_MODULE_ADDRESS = '0x28de6501fa86f2e6cd0b33c3aabdaeb4a1b93f3f';
45
45
  },
46
46
  rhinestoneApiKey: consts_1.MOCK_API_KEY,
47
47
  });
48
- (0, vitest_1.expect)(address).toEqual('0x7fbe9b0796484c06c94968b910a4cf488fd1719b');
48
+ (0, vitest_1.expect)(address).toEqual('0x0681de31e060b384f0b08a3bac99e9bdff302474');
49
49
  });
50
50
  (0, vitest_1.test)('Passkey owner', () => {
51
51
  const address = (0, nexus_1.getAddress)({
52
52
  owners: {
53
53
  type: 'passkey',
54
- account: consts_1.passkeyAccount,
54
+ accounts: [consts_1.passkeyAccount],
55
55
  },
56
56
  rhinestoneApiKey: consts_1.MOCK_API_KEY,
57
57
  });
58
- (0, vitest_1.expect)(address).toEqual('0x82a8a51443c2b8608001bdc4ff5bb31f69e8ed14');
58
+ (0, vitest_1.expect)(address).toEqual('0x894b88c04b4de6abddce81e8bdc91927e37d6ced');
59
59
  });
60
60
  });
61
61
  (0, vitest_1.describe)('Get Install Data', () => {
@@ -16,8 +16,8 @@ const MOCK_MODULE_ADDRESS = '0x28de6501fa86f2e6cd0b33c3aabdaeb4a1b93f3f';
16
16
  rhinestoneApiKey: consts_1.MOCK_API_KEY,
17
17
  });
18
18
  (0, vitest_1.expect)(factory).toEqual('0x4e1dcf7ad4e460cfd30791ccc4f9c8a4f820ec67');
19
- (0, vitest_1.expect)(factoryData).toEqual('0x1688f0b900000000000000000000000029fcb43b46531bca003ddc8fcb67ffe91900c762000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000444b63e800d0000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000075798463024bda64d83c94a64bc7d7eab41300ef00000000000000000000000000000000000000000000000000000000000001600000000000000000000000007579f2ad53b01c3d8779fe17928e0d48885b00030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000f6c02c78ded62973b43bfa523b247da0994869360000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb700000000000000000000000000000000000000000000000000000000000002a447cbbdca0000000000000000000000007579f2ad53b01c3d8779fe17928e0d48885b000300000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000016000000000000000000000000020c008719ba9d8aa14c7d07d122cd5e965aa8da50000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb7000000000000000000000000f6c02c78ded62973b43bfa523b247da09948693600000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
20
- (0, vitest_1.expect)(salt).toEqual('0x9e6e52d7f64d3d3653e1725f46b188819f7b17d204b24d8d599dacb646f42969');
19
+ (0, vitest_1.expect)(factoryData).toEqual('0x1688f0b900000000000000000000000029fcb43b46531bca003ddc8fcb67ffe91900c762000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000444b63e800d0000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000075798463024bda64d83c94a64bc7d7eab41300ef00000000000000000000000000000000000000000000000000000000000001600000000000000000000000007579f2ad53b01c3d8779fe17928e0d48885b00030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000f6c02c78ded62973b43bfa523b247da0994869360000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb700000000000000000000000000000000000000000000000000000000000002a447cbbdca0000000000000000000000007579f2ad53b01c3d8779fe17928e0d48885b0003000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000013fdb5234e4e3162a810f54d9f7e980000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb7000000000000000000000000f6c02c78ded62973b43bfa523b247da09948693600000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
20
+ (0, vitest_1.expect)(salt).toEqual('0xf31933c8d3ab801f5d7dbfd374464b228d509d625a72334e218cbe08be7716e6');
21
21
  (0, vitest_1.expect)(implementation).toEqual('0x29fcb43b46531bca003ddc8fcb67ffe91900c762');
22
22
  (0, vitest_1.expect)(initializationCallData).toEqual(null);
23
23
  });
@@ -25,13 +25,13 @@ const MOCK_MODULE_ADDRESS = '0x28de6501fa86f2e6cd0b33c3aabdaeb4a1b93f3f';
25
25
  const { factory, factoryData, salt, implementation, initializationCallData, } = (0, safe_1.getDeployArgs)({
26
26
  owners: {
27
27
  type: 'passkey',
28
- account: consts_1.passkeyAccount,
28
+ accounts: [consts_1.passkeyAccount],
29
29
  },
30
30
  rhinestoneApiKey: consts_1.MOCK_API_KEY,
31
31
  });
32
32
  (0, vitest_1.expect)(factory).toEqual('0x4e1dcf7ad4e460cfd30791ccc4f9c8a4f820ec67');
33
- (0, vitest_1.expect)(factoryData).toEqual('0x1688f0b900000000000000000000000029fcb43b46531bca003ddc8fcb67ffe91900c7620000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e4b63e800d0000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000075798463024bda64d83c94a64bc7d7eab41300ef00000000000000000000000000000000000000000000000000000000000001400000000000000000000000007579f2ad53b01c3d8779fe17928e0d48885b00030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000babe99e62d8bcbd3acf5ccbcfcd4f64fe75e5e72000000000000000000000000000000000000000000000000000000000000026447cbbdca0000000000000000000000007579f2ad53b01c3d8779fe17928e0d48885b00030000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000578c4cb0e472a5462da43c495c3f33000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000060580a9af0569ad3905b26a703201b358aa0904236642ebe79b22a19d00d3737637d46f725a5427ae45a9569259bf67e1e16b187d7b3ad1ed70138c4f0409677d19c9a01073b202db2ed56e604ad11db557d8c3ad75181619597f21b830f2da82a00000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
34
- (0, vitest_1.expect)(salt).toEqual('0x1774a1bf788cc08a2f87e82e78226fd1484c5dfc9d8ae3041cf96f478e470214');
33
+ (0, vitest_1.expect)(factoryData).toEqual('0x1688f0b900000000000000000000000029fcb43b46531bca003ddc8fcb67ffe91900c762000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000444b63e800d0000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000075798463024bda64d83c94a64bc7d7eab41300ef00000000000000000000000000000000000000000000000000000000000001400000000000000000000000007579f2ad53b01c3d8779fe17928e0d48885b00030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000babe99e62d8bcbd3acf5ccbcfcd4f64fe75e5e7200000000000000000000000000000000000000000000000000000000000002c447cbbdca0000000000000000000000007579f2ad53b01c3d8779fe17928e0d48885b0003000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001800000000000000000000000000000000000578c4cb0e472a5462da43c495c3f330000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001580a9af0569ad3905b26a703201b358aa0904236642ebe79b22a19d00d3737637d46f725a5427ae45a9569259bf67e1e16b187d7b3ad1ed70138c4f0409677d1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005ad9ce1f5035fd62ca96cef16adaaf00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000');
34
+ (0, vitest_1.expect)(salt).toEqual('0xdc83fad4a7d91e2ee81a5adc74eb2bca07d012c5259cb8ea10e89cf05de74c8d');
35
35
  (0, vitest_1.expect)(implementation).toEqual('0x29fcb43b46531bca003ddc8fcb67ffe91900c762');
36
36
  (0, vitest_1.expect)(initializationCallData).toEqual(null);
37
37
  });
@@ -45,17 +45,17 @@ const MOCK_MODULE_ADDRESS = '0x28de6501fa86f2e6cd0b33c3aabdaeb4a1b93f3f';
45
45
  },
46
46
  rhinestoneApiKey: consts_1.MOCK_API_KEY,
47
47
  });
48
- (0, vitest_1.expect)(address).toEqual('0x45fbf165cd6600f5f989601aa6ccbd2ec8baa136');
48
+ (0, vitest_1.expect)(address).toEqual('0x3a249204d37245504d4ab37ff88f574b222a6349');
49
49
  });
50
50
  (0, vitest_1.test)('Passkey owner', () => {
51
51
  const address = (0, safe_1.getAddress)({
52
52
  owners: {
53
53
  type: 'passkey',
54
- account: consts_1.passkeyAccount,
54
+ accounts: [consts_1.passkeyAccount],
55
55
  },
56
56
  rhinestoneApiKey: consts_1.MOCK_API_KEY,
57
57
  });
58
- (0, vitest_1.expect)(address).toEqual('0xa4a75e55097539ef474613c56d2e70942af42e52');
58
+ (0, vitest_1.expect)(address).toEqual('0xe86e416045645e1ca4360d5dc396e4c513277c31');
59
59
  });
60
60
  });
61
61
  (0, vitest_1.describe)('Get Install Data', () => {
@@ -1,23 +1,27 @@
1
- import { type Account, type Chain, type Hex } from 'viem';
2
- import type { WebAuthnAccount } from 'viem/_types/account-abstraction';
1
+ import type { WebAuthnP256 } from 'ox';
2
+ import { type Account, type Address, type Chain, type Hex } from 'viem';
3
+ import type { WebAuthnAccount } from 'viem/account-abstraction';
3
4
  import type { OwnerSet, SignerSet } from '../../types';
4
5
  declare function convertOwnerSetToSignerSet(owners: OwnerSet): SignerSet;
5
6
  type SigningFunctions<T> = {
6
7
  signEcdsa: (account: Account, params: T) => Promise<Hex>;
7
- signPasskey: (account: WebAuthnAccount, chain: Chain, params: T) => Promise<Hex>;
8
+ signPasskey: (account: WebAuthnAccount, params: T) => Promise<{
9
+ webauthn: WebAuthnP256.SignMetadata;
10
+ signature: Hex;
11
+ }>;
8
12
  };
9
13
  declare function signWithMultiFactorAuth<T>(signers: SignerSet & {
10
14
  type: 'owner';
11
15
  kind: 'multi-factor';
12
- }, chain: Chain, params: T, signMain: (signers: SignerSet, chain: Chain, params: T) => Promise<Hex>): Promise<Hex>;
16
+ }, chain: Chain, address: Address, params: T, signMain: (signers: SignerSet, chain: Chain, address: Address, params: T) => Promise<Hex>): Promise<Hex>;
13
17
  declare function signWithSession<T>(signers: SignerSet & {
14
18
  type: 'session';
15
- }, chain: Chain, params: T, signMain: (signers: SignerSet, chain: Chain, params: T) => Promise<Hex>): Promise<Hex>;
19
+ }, chain: Chain, address: Address, params: T, signMain: (signers: SignerSet, chain: Chain, address: Address, params: T) => Promise<Hex>): Promise<Hex>;
16
20
  declare function signWithGuardians<T>(signers: SignerSet & {
17
21
  type: 'guardians';
18
22
  }, params: T, signingFunctions: SigningFunctions<T>): Promise<Hex>;
19
23
  declare function signWithOwners<T>(signers: SignerSet & {
20
24
  type: 'owner';
21
- }, chain: Chain, params: T, signingFunctions: SigningFunctions<T>, signMain: (signers: SignerSet, chain: Chain, params: T) => Promise<Hex>): Promise<Hex>;
25
+ }, chain: Chain, address: Address, params: T, signingFunctions: SigningFunctions<T>, signMain: (signers: SignerSet, chain: Chain, address: Address, params: T) => Promise<Hex>): Promise<Hex>;
22
26
  export { convertOwnerSetToSignerSet, signWithMultiFactorAuth, signWithSession, signWithGuardians, signWithOwners, type SigningFunctions, };
23
27
  //# sourceMappingURL=common.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../accounts/signing/common.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EAGV,KAAK,GAAG,EAGT,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAEtE,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEtD,iBAAS,0BAA0B,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAyC/D;AAED,KAAK,gBAAgB,CAAC,CAAC,IAAI;IACzB,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACxD,WAAW,EAAE,CACX,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,CAAC,KACN,OAAO,CAAC,GAAG,CAAC,CAAA;CAClB,CAAA;AAED,iBAAe,uBAAuB,CAAC,CAAC,EACtC,OAAO,EAAE,SAAS,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,EAC5D,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GACtE,OAAO,CAAC,GAAG,CAAC,CA0Cd;AAED,iBAAe,eAAe,CAAC,CAAC,EAC9B,OAAO,EAAE,SAAS,GAAG;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,EACxC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GACtE,OAAO,CAAC,GAAG,CAAC,CAKd;AAED,iBAAe,iBAAiB,CAAC,CAAC,EAChC,OAAO,EAAE,SAAS,GAAG;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,EAC1C,MAAM,EAAE,CAAC,EACT,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,GACpC,OAAO,CAAC,GAAG,CAAC,CAOd;AAED,iBAAe,cAAc,CAAC,CAAC,EAC7B,OAAO,EAAE,SAAS,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,EACtC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,CAAC,EACT,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,EACrC,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GACtE,OAAO,CAAC,GAAG,CAAC,CAoBd;AAED,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,KAAK,gBAAgB,GACtB,CAAA"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../accounts/signing/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AACtC,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,KAAK,EAGV,KAAK,GAAG,EAGT,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAG/D,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAQtD,iBAAS,0BAA0B,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAyC/D;AAED,KAAK,gBAAgB,CAAC,CAAC,IAAI;IACzB,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACxD,WAAW,EAAE,CACX,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,CAAC,KACN,OAAO,CAAC;QACX,QAAQ,EAAE,YAAY,CAAC,YAAY,CAAA;QACnC,SAAS,EAAE,GAAG,CAAA;KACf,CAAC,CAAA;CACH,CAAA;AAED,iBAAe,uBAAuB,CAAC,CAAC,EACtC,OAAO,EAAE,SAAS,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,EAC5D,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,CACR,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,KACN,OAAO,CAAC,GAAG,CAAC,GAChB,OAAO,CAAC,GAAG,CAAC,CA0Cd;AAED,iBAAe,eAAe,CAAC,CAAC,EAC9B,OAAO,EAAE,SAAS,GAAG;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,EACxC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,CACR,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,KACN,OAAO,CAAC,GAAG,CAAC,GAChB,OAAO,CAAC,GAAG,CAAC,CAKd;AAED,iBAAe,iBAAiB,CAAC,CAAC,EAChC,OAAO,EAAE,SAAS,GAAG;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,EAC1C,MAAM,EAAE,CAAC,EACT,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,GACpC,OAAO,CAAC,GAAG,CAAC,CAOd;AAED,iBAAe,cAAc,CAAC,CAAC,EAC7B,OAAO,EAAE,SAAS,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,EACtC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,EACT,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,EACrC,QAAQ,EAAE,CACR,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,KACN,OAAO,CAAC,GAAG,CAAC,GAChB,OAAO,CAAC,GAAG,CAAC,CA0Cd;AAED,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,KAAK,gBAAgB,GACtB,CAAA"}
@@ -6,7 +6,9 @@ exports.signWithSession = signWithSession;
6
6
  exports.signWithGuardians = signWithGuardians;
7
7
  exports.signWithOwners = signWithOwners;
8
8
  const viem_1 = require("viem");
9
+ const modules_1 = require("../../modules");
9
10
  const core_1 = require("../../modules/validators/core");
11
+ const passkeys_1 = require("./passkeys");
10
12
  function convertOwnerSetToSignerSet(owners) {
11
13
  switch (owners.type) {
12
14
  case 'ecdsa': {
@@ -20,7 +22,7 @@ function convertOwnerSetToSignerSet(owners) {
20
22
  return {
21
23
  type: 'owner',
22
24
  kind: 'passkey',
23
- account: owners.account,
25
+ accounts: owners.accounts,
24
26
  };
25
27
  }
26
28
  case 'multi-factor': {
@@ -40,7 +42,7 @@ function convertOwnerSetToSignerSet(owners) {
40
42
  return {
41
43
  type: 'passkey',
42
44
  id: index,
43
- account: validator.account,
45
+ accounts: validator.accounts,
44
46
  };
45
47
  }
46
48
  }
@@ -49,13 +51,13 @@ function convertOwnerSetToSignerSet(owners) {
49
51
  }
50
52
  }
51
53
  }
52
- async function signWithMultiFactorAuth(signers, chain, params, signMain) {
54
+ async function signWithMultiFactorAuth(signers, chain, address, params, signMain) {
53
55
  const signatures = await Promise.all(signers.validators.map(async (validator) => {
54
56
  if (validator === null) {
55
57
  return '0x';
56
58
  }
57
59
  const validatorSigners = convertOwnerSetToSignerSet(validator);
58
- return signMain(validatorSigners, chain, params);
60
+ return signMain(validatorSigners, chain, address, params);
59
61
  }));
60
62
  const data = (0, viem_1.encodeAbiParameters)([
61
63
  {
@@ -86,25 +88,43 @@ async function signWithMultiFactorAuth(signers, chain, params, signMain) {
86
88
  ]);
87
89
  return data;
88
90
  }
89
- async function signWithSession(signers, chain, params, signMain) {
91
+ async function signWithSession(signers, chain, address, params, signMain) {
90
92
  const sessionSigners = convertOwnerSetToSignerSet(signers.session.owners);
91
- return signMain(sessionSigners, chain, params);
93
+ return signMain(sessionSigners, chain, address, params);
92
94
  }
93
95
  async function signWithGuardians(signers, params, signingFunctions) {
94
96
  const signatures = await Promise.all(signers.guardians.map((account) => signingFunctions.signEcdsa(account, params)));
95
97
  return (0, viem_1.concat)(signatures);
96
98
  }
97
- async function signWithOwners(signers, chain, params, signingFunctions, signMain) {
99
+ async function signWithOwners(signers, chain, address, params, signingFunctions, signMain) {
98
100
  switch (signers.kind) {
99
101
  case 'ecdsa': {
100
102
  const signatures = await Promise.all(signers.accounts.map((account) => signingFunctions.signEcdsa(account, params)));
101
103
  return (0, viem_1.concat)(signatures);
102
104
  }
103
105
  case 'passkey': {
104
- return await signingFunctions.signPasskey(signers.account, chain, params);
106
+ const signatures = await Promise.all(signers.accounts.map((account) => signingFunctions.signPasskey(account, params)));
107
+ const usePrecompile = (0, modules_1.isRip7212SupportedNetwork)(chain);
108
+ const credIds = signers.accounts.map((account) => {
109
+ const publicKey = account.publicKey;
110
+ const { x, y } = (0, passkeys_1.parsePublicKey)(publicKey);
111
+ return (0, passkeys_1.generateCredentialId)(x, y, address);
112
+ });
113
+ const webAuthns = signatures.map((signature) => {
114
+ const { r, s } = (0, passkeys_1.parseSignature)(signature.signature);
115
+ return {
116
+ authenticatorData: signature.webauthn.authenticatorData,
117
+ clientDataJSON: signature.webauthn.clientDataJSON,
118
+ challengeIndex: BigInt(signature.webauthn.challengeIndex),
119
+ typeIndex: BigInt(signature.webauthn.typeIndex),
120
+ r,
121
+ s,
122
+ };
123
+ });
124
+ return (0, passkeys_1.packSignature)(credIds, usePrecompile, webAuthns);
105
125
  }
106
126
  case 'multi-factor': {
107
- return signWithMultiFactorAuth(signers, chain, params, signMain);
127
+ return signWithMultiFactorAuth(signers, chain, address, params, signMain);
108
128
  }
109
129
  default: {
110
130
  throw new Error('Unsupported owner kind');
@@ -1,5 +1,5 @@
1
- import { type Chain, type Hex } from 'viem';
1
+ import { type Address, type Chain, type Hex } from 'viem';
2
2
  import type { SignerSet } from '../../types';
3
- declare function sign(signers: SignerSet, chain: Chain, hash: Hex): Promise<Hex>;
3
+ declare function sign(signers: SignerSet, chain: Chain, address: Address, hash: Hex): Promise<Hex>;
4
4
  export { sign };
5
5
  //# sourceMappingURL=message.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../../accounts/signing/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,KAAK,EAEV,KAAK,GAAG,EAGT,MAAM,MAAM,CAAA;AAMb,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAS5C,iBAAe,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAiB7E;AA6BD,OAAO,EAAE,IAAI,EAAE,CAAA"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../../accounts/signing/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,KAAK,EAEV,KAAK,GAAG,EAGT,MAAM,MAAM,CAAA;AAEb,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAS5C,iBAAe,IAAI,CACjB,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,GAAG,GACR,OAAO,CAAC,GAAG,CAAC,CAwBd;AA4BD,OAAO,EAAE,IAAI,EAAE,CAAA"}
@@ -2,20 +2,19 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.sign = sign;
4
4
  const viem_1 = require("viem");
5
- const modules_1 = require("../../modules");
6
5
  const error_1 = require("../error");
7
6
  const common_1 = require("./common");
8
- async function sign(signers, chain, hash) {
7
+ async function sign(signers, chain, address, hash) {
9
8
  const signingFunctions = {
10
9
  signEcdsa: (account, hash) => signEcdsa(account, hash),
11
- signPasskey: (account, chain, hash) => signPasskey(account, chain, hash),
10
+ signPasskey: (account, hash) => signPasskey(account, hash),
12
11
  };
13
12
  switch (signers.type) {
14
13
  case 'owner': {
15
- return (0, common_1.signWithOwners)(signers, chain, hash, signingFunctions, sign);
14
+ return (0, common_1.signWithOwners)(signers, chain, address, hash, signingFunctions, sign);
16
15
  }
17
16
  case 'session': {
18
- return (0, common_1.signWithSession)(signers, chain, hash, sign);
17
+ return (0, common_1.signWithSession)(signers, chain, address, hash, sign);
19
18
  }
20
19
  case 'guardians': {
21
20
  return (0, common_1.signWithGuardians)(signers, hash, signingFunctions);
@@ -39,11 +38,10 @@ async function signEcdsa(account, hash) {
39
38
  const newSignature = (0, viem_1.concat)([r, s, (0, viem_1.toHex)(newV)]);
40
39
  return newSignature;
41
40
  }
42
- async function signPasskey(account, chain, hash) {
41
+ async function signPasskey(account, hash) {
43
42
  const { webauthn, signature } = await account.sign({ hash });
44
- const encodedSignature = (0, modules_1.getWebauthnValidatorSignature)({
43
+ return {
45
44
  webauthn,
46
45
  signature,
47
- });
48
- return encodedSignature;
46
+ };
49
47
  }
@@ -0,0 +1,29 @@
1
+ import { type Address, type Hex } from 'viem';
2
+ interface WebAuthnSignature {
3
+ authenticatorData: Hex;
4
+ clientDataJSON: string;
5
+ challengeIndex: bigint;
6
+ typeIndex: bigint;
7
+ r: bigint;
8
+ s: bigint;
9
+ }
10
+ declare function parsePublicKey(publicKey: Hex | Uint8Array): {
11
+ x: bigint;
12
+ y: bigint;
13
+ };
14
+ declare function parseSignature(signature: Hex | Uint8Array): {
15
+ r: bigint;
16
+ s: bigint;
17
+ };
18
+ declare function generateCredentialId(pubKeyX: bigint, pubKeyY: bigint, account: Address): `0x${string}`;
19
+ declare function packSignature(credIds: Hex[], usePrecompile: boolean, webAuthns: {
20
+ authenticatorData: Hex;
21
+ clientDataJSON: string;
22
+ challengeIndex: bigint;
23
+ typeIndex: bigint;
24
+ r: bigint;
25
+ s: bigint;
26
+ }[]): Hex;
27
+ export { parsePublicKey, parseSignature, generateCredentialId, packSignature };
28
+ export type { WebAuthnSignature };
29
+ //# sourceMappingURL=passkeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passkeys.d.ts","sourceRoot":"","sources":["../../../../accounts/signing/passkeys.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EAGZ,KAAK,GAAG,EAGT,MAAM,MAAM,CAAA;AAEb,UAAU,iBAAiB;IACzB,iBAAiB,EAAE,GAAG,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,iBAAS,cAAc,CAAC,SAAS,EAAE,GAAG,GAAG,UAAU,GAAG;IACpD,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV,CAUA;AAED,iBAAS,cAAc,CAAC,SAAS,EAAE,GAAG,GAAG,UAAU,GAAG;IACpD,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV,CASA;AAED,iBAAS,oBAAoB,CAC3B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,iBAkBjB;AAED,iBAAS,aAAa,CACpB,OAAO,EAAE,GAAG,EAAE,EACd,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE;IACT,iBAAiB,EAAE,GAAG,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV,EAAE,GACF,GAAG,CAqDL;AAED,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,oBAAoB,EAAE,aAAa,EAAE,CAAA;AAC9E,YAAY,EAAE,iBAAiB,EAAE,CAAA"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parsePublicKey = parsePublicKey;
4
+ exports.parseSignature = parseSignature;
5
+ exports.generateCredentialId = generateCredentialId;
6
+ exports.packSignature = packSignature;
7
+ const viem_1 = require("viem");
8
+ function parsePublicKey(publicKey) {
9
+ const bytes = typeof publicKey === 'string' ? (0, viem_1.hexToBytes)(publicKey) : publicKey;
10
+ const offset = bytes.length === 65 ? 1 : 0;
11
+ const x = bytes.slice(offset, 32 + offset);
12
+ const y = bytes.slice(32 + offset, 64 + offset);
13
+ return {
14
+ x: BigInt((0, viem_1.bytesToHex)(x)),
15
+ y: BigInt((0, viem_1.bytesToHex)(y)),
16
+ };
17
+ }
18
+ function parseSignature(signature) {
19
+ const bytes = typeof signature === 'string' ? (0, viem_1.hexToBytes)(signature) : signature;
20
+ const r = bytes.slice(0, 32);
21
+ const s = bytes.slice(32, 64);
22
+ return {
23
+ r: BigInt((0, viem_1.bytesToHex)(r)),
24
+ s: BigInt((0, viem_1.bytesToHex)(s)),
25
+ };
26
+ }
27
+ function generateCredentialId(pubKeyX, pubKeyY, account) {
28
+ return (0, viem_1.keccak256)((0, viem_1.encodeAbiParameters)([
29
+ {
30
+ type: 'uint256',
31
+ },
32
+ {
33
+ type: 'uint256',
34
+ },
35
+ {
36
+ type: 'address',
37
+ },
38
+ ], [pubKeyX, pubKeyY, account]));
39
+ }
40
+ function packSignature(credIds, usePrecompile, webAuthns) {
41
+ // Sort both `credIds` and `webAuthns` by credIds
42
+ const credIdsAndWebAuthns = credIds.map((credId, index) => ({
43
+ credId,
44
+ webAuthn: webAuthns[index],
45
+ }));
46
+ credIdsAndWebAuthns.sort((a, b) => a.credId.localeCompare(b.credId));
47
+ credIds = credIdsAndWebAuthns.map(({ credId }) => credId);
48
+ webAuthns = credIdsAndWebAuthns.map(({ webAuthn }) => webAuthn);
49
+ // Encode
50
+ return (0, viem_1.encodeAbiParameters)([
51
+ {
52
+ type: 'bytes32[]',
53
+ name: 'credIds',
54
+ },
55
+ {
56
+ type: 'bool',
57
+ name: 'usePrecompile',
58
+ },
59
+ {
60
+ type: 'tuple[]',
61
+ name: 'webAuthns',
62
+ components: [
63
+ {
64
+ type: 'bytes',
65
+ name: 'authenticatorData',
66
+ },
67
+ {
68
+ type: 'string',
69
+ name: 'clientDataJSON',
70
+ },
71
+ {
72
+ type: 'uint256',
73
+ name: 'challengeIndex',
74
+ },
75
+ {
76
+ type: 'uint256',
77
+ name: 'typeIndex',
78
+ },
79
+ {
80
+ type: 'uint256',
81
+ name: 'r',
82
+ },
83
+ {
84
+ type: 'uint256',
85
+ name: 's',
86
+ },
87
+ ],
88
+ },
89
+ ], [credIds, usePrecompile, webAuthns]);
90
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=passkeys.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passkeys.test.d.ts","sourceRoot":"","sources":["../../../../accounts/signing/passkeys.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const passkeys_1 = require("./passkeys");
5
+ (0, vitest_1.describe)('Passkeys', () => {
6
+ (0, vitest_1.describe)('Parse Public Key', () => {
7
+ (0, vitest_1.test)('default', () => {
8
+ const parsed = (0, passkeys_1.parsePublicKey)('0x7a2b9234dbc079da984e021acb76cf230dff5c03f2c5668024ddaeeb388520294bd61dcef34cade4d3bca405e63179ef022948ac45d0b0530cb125977c118ad7');
9
+ (0, vitest_1.expect)(parsed.x).toEqual(55259151030970399927675340420359705684663366332711724388150056154288143802409n);
10
+ (0, vitest_1.expect)(parsed.y).toEqual(34301774645623054632612895881498878184566570389017277955884655401641769536215n);
11
+ });
12
+ });
13
+ (0, vitest_1.describe)('Parse Signature', () => {
14
+ (0, vitest_1.test)('default', () => {
15
+ const parsed = (0, passkeys_1.parseSignature)('0xf60f80fe3fd029d1b380d631f0b659bfbc8f8f60921a88e1e123c159aa540f920ed337464d1bb813dc5f9c3e81998185370da49cc525e9f42cdf805f1030aff8');
16
+ (0, vitest_1.expect)(parsed.r).toEqual(111296353735534357766084082487308191701889898756402773464442570100570127077266n);
17
+ (0, vitest_1.expect)(parsed.s).toEqual(6705566102199758127831148650668918567109283965479844611524279039128750829560n);
18
+ });
19
+ });
20
+ (0, vitest_1.describe)('Generate Credential ID', () => {
21
+ (0, vitest_1.test)('default', () => {
22
+ const id = (0, passkeys_1.generateCredentialId)(55259151030970399927675340420359705684663366332711724388150056154288143802409n, 34301774645623054632612895881498878184566570389017277955884655401641769536215n, '0xb975975c9f381b5df3b4af93bdd1ba739698bc37');
23
+ (0, vitest_1.expect)(id).toEqual('0x9437809df26444a849d303b1174543f0851df5fae657da19f3bb0d92356426ea');
24
+ });
25
+ });
26
+ (0, vitest_1.describe)('Pack Signature', () => {
27
+ (0, vitest_1.test)('single', () => {
28
+ const credIds = [
29
+ '0x9437809df26444a849d303b1174543f0851df5fae657da19f3bb0d92356426ea',
30
+ ];
31
+ const usePrecompile = false;
32
+ const webAuthns = [
33
+ {
34
+ authenticatorData: '0x49960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97631d00000000',
35
+ clientDataJSON: '{"type":"webauthn.get","challenge":"4p2TiZpTooLCFFYTC2HmMPVMiVjZGghCJ0dz7zUDEeA","origin":"http://localhost:5173","crossOrigin":false}',
36
+ challengeIndex: 23n,
37
+ typeIndex: 1n,
38
+ r: 111296353735534357766084082487308191701889898756402773464442570100570127077266n,
39
+ s: 6705566102199758127831148650668918567109283965479844611524279039128750829560n,
40
+ },
41
+ ];
42
+ const packed = (0, passkeys_1.packSignature)(credIds, usePrecompile, webAuthns);
43
+ (0, vitest_1.expect)(packed).toEqual('0x0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000019437809df26444a849d303b1174543f0851df5fae657da19f3bb0d92356426ea0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000001f60f80fe3fd029d1b380d631f0b659bfbc8f8f60921a88e1e123c159aa540f920ed337464d1bb813dc5f9c3e81998185370da49cc525e9f42cdf805f1030aff8000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97631d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000867b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a2234703254695a70546f6f4c43464659544332486d4d50564d69566a5a476768434a30647a377a5544456541222c226f726967696e223a22687474703a2f2f6c6f63616c686f73743a35313733222c2263726f73734f726967696e223a66616c73657d0000000000000000000000000000000000000000000000000000');
44
+ });
45
+ (0, vitest_1.test)('multisig', () => {
46
+ const credIds = [
47
+ '0x9437809df26444a849d303b1174543f0851df5fae657da19f3bb0d92356426ea',
48
+ '0x6be9646e4d64132d1a1789a467d0501e948d23afce6792d963f401434d7bef33',
49
+ ];
50
+ const usePrecompile = true;
51
+ const webAuthns = [
52
+ {
53
+ authenticatorData: '0x49960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97631d00000000',
54
+ clientDataJSON: '{"type":"webauthn.get","challenge":"4p2TiZpTooLCFFYTC2HmMPVMiVjZGghCJ0dz7zUDEeA","origin":"http://localhost:5173","crossOrigin":false}',
55
+ challengeIndex: 23n,
56
+ typeIndex: 1n,
57
+ r: 111296353735534357766084082487308191701889898756402773464442570100570127077266n,
58
+ s: 6705566102199758127831148650668918567109283965479844611524279039128750829560n,
59
+ },
60
+ {
61
+ authenticatorData: '0x49960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97631d00000000',
62
+ clientDataJSON: '{"type":"webauthn.get","challenge":"19qAcQAVCeucFt8tQSizBBdbxW6Jkex_3nAejdRuVek","origin":"http://localhost:5173","crossOrigin":false}',
63
+ challengeIndex: 23n,
64
+ typeIndex: 1n,
65
+ r: 52674584175531096231012948456392242307658490190760877544141461393264453154030n,
66
+ s: 1045924358482323524717958171193057427003444327614976707002321626568131749413n,
67
+ },
68
+ ];
69
+ const packed = (0, passkeys_1.packSignature)(credIds, usePrecompile, webAuthns);
70
+ (0, vitest_1.expect)(packed).toEqual('0x0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000026be9646e4d64132d1a1789a467d0501e948d23afce6792d963f401434d7bef339437809df26444a849d303b1174543f0851df5fae657da19f3bb0d92356426ea00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000017474c214167b8a4704cf06f75287a738e7ddbcca9cc0383db6dac6a7d090f4ee024ff8e2a2e8c54aa8cf5f36e3b6125016c3d58d896e3a85c5cd2cd0027a2625000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97631d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000867b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a22313971416351415643657563467438745153697a424264627857364a6b65785f336e41656a64527556656b222c226f726967696e223a22687474703a2f2f6c6f63616c686f73743a35313733222c2263726f73734f726967696e223a66616c73657d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000001f60f80fe3fd029d1b380d631f0b659bfbc8f8f60921a88e1e123c159aa540f920ed337464d1bb813dc5f9c3e81998185370da49cc525e9f42cdf805f1030aff8000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97631d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000867b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a2234703254695a70546f6f4c43464659544332486d4d50564d69566a5a476768434a30647a377a5544456541222c226f726967696e223a22687474703a2f2f6c6f63616c686f73743a35313733222c2263726f73734f726967696e223a66616c73657d0000000000000000000000000000000000000000000000000000');
71
+ });
72
+ });
73
+ });
@@ -1,5 +1,5 @@
1
- import type { Chain, HashTypedDataParameters, Hex, TypedData } from 'viem';
1
+ import type { Address, Chain, HashTypedDataParameters, Hex, TypedData } from 'viem';
2
2
  import type { SignerSet } from '../../types';
3
- declare function sign<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData>(signers: SignerSet, chain: Chain, parameters: HashTypedDataParameters<typedData, primaryType>): Promise<Hex>;
3
+ declare function sign<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData>(signers: SignerSet, chain: Chain, address: Address, parameters: HashTypedDataParameters<typedData, primaryType>): Promise<Hex>;
4
4
  export { sign };
5
5
  //# sourceMappingURL=typedData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typedData.d.ts","sourceRoot":"","sources":["../../../../accounts/signing/typedData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,KAAK,EACL,uBAAuB,EACvB,GAAG,EACH,SAAS,EACV,MAAM,MAAM,CAAA;AAMb,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAS5C,iBAAe,IAAI,CACjB,SAAS,SAAS,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACjE,WAAW,SAAS,MAAM,SAAS,GAAG,cAAc,GAAG,MAAM,SAAS,EAEtE,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC,GAC1D,OAAO,CAAC,GAAG,CAAC,CAoBd;AA+BD,OAAO,EAAE,IAAI,EAAE,CAAA"}
1
+ {"version":3,"file":"typedData.d.ts","sourceRoot":"","sources":["../../../../accounts/signing/typedData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,OAAO,EACP,KAAK,EACL,uBAAuB,EACvB,GAAG,EACH,SAAS,EACV,MAAM,MAAM,CAAA;AAEb,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAS5C,iBAAe,IAAI,CACjB,SAAS,SAAS,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACjE,WAAW,SAAS,MAAM,SAAS,GAAG,cAAc,GAAG,MAAM,SAAS,EAEtE,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC,GAC1D,OAAO,CAAC,GAAG,CAAC,CA0Bd;AA6BD,OAAO,EAAE,IAAI,EAAE,CAAA"}
@@ -1,20 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.sign = sign;
4
- const modules_1 = require("../../modules");
5
4
  const error_1 = require("../error");
6
5
  const common_1 = require("./common");
7
- async function sign(signers, chain, parameters) {
6
+ async function sign(signers, chain, address, parameters) {
8
7
  const signingFunctions = {
9
8
  signEcdsa: (account, params) => signEcdsa(account, params),
10
- signPasskey: (account, chain, params) => signPasskey(account, chain, params),
9
+ signPasskey: (account, params) => signPasskey(account, params),
11
10
  };
12
11
  switch (signers.type) {
13
12
  case 'owner': {
14
- return (0, common_1.signWithOwners)(signers, chain, parameters, signingFunctions, sign);
13
+ return (0, common_1.signWithOwners)(signers, chain, address, parameters, signingFunctions, sign);
15
14
  }
16
15
  case 'session': {
17
- return (0, common_1.signWithSession)(signers, chain, parameters, sign);
16
+ return (0, common_1.signWithSession)(signers, chain, address, parameters, sign);
18
17
  }
19
18
  case 'guardians': {
20
19
  return (0, common_1.signWithGuardians)(signers, parameters, signingFunctions);
@@ -27,11 +26,10 @@ async function signEcdsa(account, parameters) {
27
26
  }
28
27
  return await account.signTypedData(parameters);
29
28
  }
30
- async function signPasskey(account, chain, parameters) {
29
+ async function signPasskey(account, parameters) {
31
30
  const { webauthn, signature } = await account.signTypedData(parameters);
32
- const encodedSignature = (0, modules_1.getWebauthnValidatorSignature)({
31
+ return {
33
32
  webauthn,
34
33
  signature,
35
- });
36
- return encodedSignature;
34
+ };
37
35
  }