@rhinestone/sdk 1.0.0-alpha.2 → 1.0.0-alpha.21

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 (136) hide show
  1. package/dist/src/accounts/custom.d.ts +18 -0
  2. package/dist/src/accounts/custom.d.ts.map +1 -0
  3. package/dist/src/accounts/custom.js +121 -0
  4. package/dist/src/accounts/custom.test.d.ts +2 -0
  5. package/dist/src/accounts/custom.test.d.ts.map +1 -0
  6. package/dist/src/accounts/custom.test.js +64 -0
  7. package/dist/src/accounts/error.d.ts.map +1 -1
  8. package/dist/src/accounts/error.js +2 -0
  9. package/dist/src/accounts/index.d.ts +22 -13
  10. package/dist/src/accounts/index.d.ts.map +1 -1
  11. package/dist/src/accounts/index.js +192 -186
  12. package/dist/src/accounts/index.test.js +3 -3
  13. package/dist/src/accounts/json-rpc/index.d.ts +5 -0
  14. package/dist/src/accounts/json-rpc/index.d.ts.map +1 -0
  15. package/dist/src/accounts/json-rpc/index.js +16 -0
  16. package/dist/src/accounts/json-rpc/index.test.d.ts +2 -0
  17. package/dist/src/accounts/json-rpc/index.test.d.ts.map +1 -0
  18. package/dist/src/accounts/json-rpc/index.test.js +16 -0
  19. package/dist/src/accounts/json-rpc/providers.d.ts +4 -0
  20. package/dist/src/accounts/json-rpc/providers.d.ts.map +1 -0
  21. package/dist/src/accounts/json-rpc/providers.js +14 -0
  22. package/dist/src/accounts/json-rpc/providers.test.d.ts +2 -0
  23. package/dist/src/accounts/json-rpc/providers.test.d.ts.map +1 -0
  24. package/dist/src/accounts/json-rpc/providers.test.js +15 -0
  25. package/dist/src/accounts/kernel.d.ts +9 -10
  26. package/dist/src/accounts/kernel.d.ts.map +1 -1
  27. package/dist/src/accounts/kernel.js +3 -14
  28. package/dist/src/accounts/kernel.test.js +10 -15
  29. package/dist/src/accounts/nexus.d.ts +14 -13
  30. package/dist/src/accounts/nexus.d.ts.map +1 -1
  31. package/dist/src/accounts/nexus.js +121 -93
  32. package/dist/src/accounts/nexus.test.js +13 -14
  33. package/dist/src/accounts/safe.d.ts +5 -7
  34. package/dist/src/accounts/safe.d.ts.map +1 -1
  35. package/dist/src/accounts/safe.js +25 -35
  36. package/dist/src/accounts/safe.test.js +9 -10
  37. package/dist/src/accounts/signing/common.d.ts +27 -0
  38. package/dist/src/accounts/signing/common.d.ts.map +1 -0
  39. package/dist/src/accounts/signing/common.js +142 -0
  40. package/dist/src/accounts/signing/message.d.ts +5 -0
  41. package/dist/src/accounts/signing/message.d.ts.map +1 -0
  42. package/dist/src/accounts/signing/message.js +47 -0
  43. package/dist/src/accounts/signing/passkeys.d.ts +29 -0
  44. package/dist/src/accounts/signing/passkeys.d.ts.map +1 -0
  45. package/dist/src/accounts/signing/passkeys.js +90 -0
  46. package/dist/src/accounts/signing/passkeys.test.d.ts +2 -0
  47. package/dist/src/accounts/signing/passkeys.test.d.ts.map +1 -0
  48. package/dist/src/accounts/signing/passkeys.test.js +73 -0
  49. package/dist/src/accounts/signing/typedData.d.ts +5 -0
  50. package/dist/src/accounts/signing/typedData.d.ts.map +1 -0
  51. package/dist/src/accounts/signing/typedData.js +35 -0
  52. package/dist/src/accounts/startale.d.ts +20 -0
  53. package/dist/src/accounts/startale.d.ts.map +1 -0
  54. package/dist/src/accounts/startale.js +100 -0
  55. package/dist/src/accounts/startale.test.d.ts +2 -0
  56. package/dist/src/accounts/startale.test.d.ts.map +1 -0
  57. package/dist/src/accounts/startale.test.js +96 -0
  58. package/dist/src/accounts/utils.d.ts +2 -1
  59. package/dist/src/accounts/utils.d.ts.map +1 -1
  60. package/dist/src/accounts/utils.js +7 -0
  61. package/dist/src/actions/index.d.ts +145 -7
  62. package/dist/src/actions/index.d.ts.map +1 -1
  63. package/dist/src/actions/index.js +373 -23
  64. package/dist/src/actions/index.test.js +35 -17
  65. package/dist/src/actions/smart-session.d.ts +8 -2
  66. package/dist/src/actions/smart-session.d.ts.map +1 -1
  67. package/dist/src/actions/smart-session.js +6 -0
  68. package/dist/src/execution/compact.d.ts +130 -3
  69. package/dist/src/execution/compact.d.ts.map +1 -1
  70. package/dist/src/execution/compact.js +94 -1
  71. package/dist/src/execution/error.d.ts +2 -9
  72. package/dist/src/execution/error.d.ts.map +1 -1
  73. package/dist/src/execution/error.js +4 -13
  74. package/dist/src/execution/index.d.ts +3 -4
  75. package/dist/src/execution/index.d.ts.map +1 -1
  76. package/dist/src/execution/index.js +35 -80
  77. package/dist/src/execution/smart-session.d.ts +1 -1
  78. package/dist/src/execution/smart-session.d.ts.map +1 -1
  79. package/dist/src/execution/smart-session.js +12 -17
  80. package/dist/src/execution/utils.d.ts +19 -14
  81. package/dist/src/execution/utils.d.ts.map +1 -1
  82. package/dist/src/execution/utils.js +222 -97
  83. package/dist/src/index.d.ts +17 -15
  84. package/dist/src/index.d.ts.map +1 -1
  85. package/dist/src/index.js +108 -21
  86. package/dist/src/modules/index.d.ts +3 -22
  87. package/dist/src/modules/index.d.ts.map +1 -1
  88. package/dist/src/modules/index.js +5 -65
  89. package/dist/src/modules/index.test.js +3 -17
  90. package/dist/src/modules/omni-account.d.ts +2 -4
  91. package/dist/src/modules/omni-account.d.ts.map +1 -1
  92. package/dist/src/modules/omni-account.js +4 -8
  93. package/dist/src/modules/read.d.ts +5 -6
  94. package/dist/src/modules/read.d.ts.map +1 -1
  95. package/dist/src/modules/read.js +7 -37
  96. package/dist/src/modules/validators/core.d.ts +8 -8
  97. package/dist/src/modules/validators/core.d.ts.map +1 -1
  98. package/dist/src/modules/validators/core.js +126 -42
  99. package/dist/src/modules/validators/core.test.js +7 -7
  100. package/dist/src/modules/validators/smart-sessions.d.ts +3 -3
  101. package/dist/src/modules/validators/smart-sessions.d.ts.map +1 -1
  102. package/dist/src/modules/validators/smart-sessions.js +10 -9
  103. package/dist/src/modules/validators/smart-sessions.test.js +4 -4
  104. package/dist/src/orchestrator/client.d.ts +5 -3
  105. package/dist/src/orchestrator/client.d.ts.map +1 -1
  106. package/dist/src/orchestrator/client.js +159 -95
  107. package/dist/src/orchestrator/consts.d.ts +3 -2
  108. package/dist/src/orchestrator/consts.d.ts.map +1 -1
  109. package/dist/src/orchestrator/consts.js +4 -2
  110. package/dist/src/orchestrator/index.d.ts +3 -4
  111. package/dist/src/orchestrator/index.d.ts.map +1 -1
  112. package/dist/src/orchestrator/index.js +1 -9
  113. package/dist/src/orchestrator/registry.d.ts +10 -13
  114. package/dist/src/orchestrator/registry.d.ts.map +1 -1
  115. package/dist/src/orchestrator/registry.js +75 -395
  116. package/dist/src/orchestrator/registry.test.d.ts.map +1 -0
  117. package/dist/src/orchestrator/registry.test.js +137 -0
  118. package/dist/src/orchestrator/types.d.ts +78 -16
  119. package/dist/src/orchestrator/types.d.ts.map +1 -1
  120. package/dist/src/orchestrator/utils.d.ts +1 -3
  121. package/dist/src/orchestrator/utils.d.ts.map +1 -1
  122. package/dist/src/orchestrator/utils.js +0 -102
  123. package/dist/src/types.d.ts +69 -26
  124. package/dist/src/types.d.ts.map +1 -1
  125. package/dist/test/consts.d.ts +2 -2
  126. package/dist/test/consts.d.ts.map +1 -1
  127. package/package.json +2 -1
  128. package/dist/src/actions/registry.d.ts +0 -7
  129. package/dist/src/actions/registry.d.ts.map +0 -1
  130. package/dist/src/actions/registry.js +0 -7
  131. package/dist/src/actions/registry.test.d.ts.map +0 -1
  132. package/dist/src/actions/registry.test.js +0 -25
  133. package/dist/src/modules/registry.d.ts +0 -13
  134. package/dist/src/modules/registry.d.ts.map +0 -1
  135. package/dist/src/modules/registry.js +0 -67
  136. /package/dist/src/{actions → orchestrator}/registry.test.d.ts +0 -0
@@ -1,52 +1,89 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WEBAUTHN_VALIDATOR_ADDRESS = exports.OWNABLE_VALIDATOR_ADDRESS = void 0;
3
+ exports.OWNABLE_V0_VALIDATOR_ADDRESS = exports.MULTI_FACTOR_VALIDATOR_ADDRESS = exports.WEBAUTHN_VALIDATOR_ADDRESS = exports.OWNABLE_VALIDATOR_ADDRESS = void 0;
4
4
  exports.getOwnerValidator = getOwnerValidator;
5
5
  exports.getOwnableValidator = getOwnableValidator;
6
6
  exports.getWebAuthnValidator = getWebAuthnValidator;
7
+ exports.getMultiFactorValidator = getMultiFactorValidator;
7
8
  exports.getSocialRecoveryValidator = getSocialRecoveryValidator;
8
9
  exports.getValidator = getValidator;
9
10
  exports.getMockSignature = getMockSignature;
10
11
  const viem_1 = require("viem");
11
12
  const common_1 = require("../common");
12
- const OWNABLE_VALIDATOR_ADDRESS = '0x2483DA3A338895199E5e538530213157e931Bf06';
13
+ const OWNABLE_VALIDATOR_ADDRESS = '0x000000000013fdB5234E4E3162a810F54d9f7E98';
13
14
  exports.OWNABLE_VALIDATOR_ADDRESS = OWNABLE_VALIDATOR_ADDRESS;
14
- const WEBAUTHN_VALIDATOR_ADDRESS = '0x2f167e55d42584f65e2e30a748f41ee75a311414';
15
+ const WEBAUTHN_VALIDATOR_ADDRESS = '0x0000000000578c4cB0e472a5462da43C495C3F33';
15
16
  exports.WEBAUTHN_VALIDATOR_ADDRESS = WEBAUTHN_VALIDATOR_ADDRESS;
16
17
  const SOCIAL_RECOVERY_VALIDATOR_ADDRESS = '0xA04D053b3C8021e8D5bF641816c42dAA75D8b597';
18
+ const MULTI_FACTOR_VALIDATOR_ADDRESS = '0xf6bDf42c9BE18cEcA5C06c42A43DAf7FBbe7896b';
19
+ exports.MULTI_FACTOR_VALIDATOR_ADDRESS = MULTI_FACTOR_VALIDATOR_ADDRESS;
20
+ const OWNABLE_V0_VALIDATOR_ADDRESS = '0x2483DA3A338895199E5e538530213157e931Bf06';
21
+ exports.OWNABLE_V0_VALIDATOR_ADDRESS = OWNABLE_V0_VALIDATOR_ADDRESS;
17
22
  const ECDSA_MOCK_SIGNATURE = '0x81d4b4981670cb18f99f0b4a66446df1bf5b204d24cfcb659bf38ba27a4359b5711649ec2423c5e1247245eba2964679b6a1dbb85c992ae40b9b00c6935b02ff1b';
18
- const WEBAUTHN_MOCK_SIGNATURE = '0x00000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000001635bc6d0f68ff895cae8a288ecf7542a6a9cd555df784b73e1e2ea7e9104b1db15e9015d280cb19527881c625fee43fd3a405d5b0d199a8c8e6589a7381209e40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97631d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f47b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a22746278584e465339585f3442797231634d77714b724947422d5f3330613051685a36793775634d30424f45222c226f726967696e223a22687474703a2f2f6c6f63616c686f73743a33303030222c2263726f73734f726967696e223a66616c73652c20226f746865725f6b6579735f63616e5f62655f61646465645f68657265223a22646f206e6f7420636f6d7061726520636c69656e74446174614a534f4e20616761696e737420612074656d706c6174652e205365652068747470733a2f2f676f6f2e676c2f796162506578227d000000000000000000000000';
23
+ const WEBAUTHN_MOCK_SIGNATURE = '0x0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001b9b86eb98fda3ed4d797d9e690588dfadf17b329a76a47cec935bebf92d7ddc80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000019b2e9410bb6850f9f660a03d609d5a844fb96bcdc87a15139b03ee22c70f469100d2b865a215c3bf786387064effa8fcedcb1d625b5148f8a1236d5e3ff11acf000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d9763050000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000867b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a22396a4546696a75684557724d34534f572d7443684a625545484550343456636a634a2d42716f3166544d38222c226f726967696e223a22687474703a2f2f6c6f63616c686f73743a38303830222c2263726f73734f726967696e223a66616c73657d0000000000000000000000000000000000000000000000000000';
19
24
  function getOwnerValidator(config) {
20
25
  return getValidator(config.owners);
21
26
  }
22
27
  function getMockSignature(ownerSet) {
23
28
  switch (ownerSet.type) {
24
- case 'ecdsa': {
29
+ case 'ecdsa':
30
+ case 'ecdsa-v0': {
25
31
  const owners = ownerSet.accounts.map((account) => account.address);
26
32
  const signatures = owners.map(() => ECDSA_MOCK_SIGNATURE);
27
33
  return (0, viem_1.concat)(signatures);
28
34
  }
29
35
  case 'passkey':
30
36
  return WEBAUTHN_MOCK_SIGNATURE;
37
+ case 'multi-factor': {
38
+ const mockValidators = ownerSet.validators.map((validator, index) => {
39
+ const validatorModule = getValidator(validator);
40
+ const signature = getMockSignature(validator);
41
+ return {
42
+ packedValidatorAndId: (0, viem_1.encodePacked)(['bytes12', 'address'], [
43
+ (0, viem_1.pad)((0, viem_1.toHex)(index), {
44
+ size: 12,
45
+ }),
46
+ validatorModule.address,
47
+ ]),
48
+ data: signature,
49
+ };
50
+ });
51
+ return (0, viem_1.encodeAbiParameters)([
52
+ {
53
+ components: [
54
+ {
55
+ internalType: 'bytes32',
56
+ name: 'packedValidatorAndId',
57
+ type: 'bytes32',
58
+ },
59
+ { internalType: 'bytes', name: 'data', type: 'bytes' },
60
+ ],
61
+ name: 'validators',
62
+ type: 'tuple[]',
63
+ },
64
+ ], [mockValidators]);
65
+ }
31
66
  }
32
67
  }
33
68
  function getValidator(owners) {
34
69
  switch (owners.type) {
35
70
  case 'ecdsa':
36
- return getOwnableValidator({
37
- threshold: owners.threshold ?? 1,
38
- owners: owners.accounts.map((account) => account.address),
39
- });
71
+ return getOwnableValidator(owners.threshold ?? 1, owners.accounts.map((account) => account.address));
72
+ case 'ecdsa-v0':
73
+ return getOwnableValidator(owners.threshold ?? 1, owners.accounts.map((account) => account.address), OWNABLE_V0_VALIDATOR_ADDRESS);
40
74
  case 'passkey':
41
- return getWebAuthnValidator({
42
- pubKey: owners.account.publicKey,
43
- authenticatorId: owners.account.id,
44
- });
75
+ return getWebAuthnValidator(owners.threshold ?? 1, owners.accounts.map((account) => ({
76
+ pubKey: account.publicKey,
77
+ authenticatorId: account.id,
78
+ })));
79
+ case 'multi-factor': {
80
+ return getMultiFactorValidator(owners.threshold ?? 1, owners.validators);
81
+ }
45
82
  }
46
83
  }
47
- function getOwnableValidator({ threshold, owners, }) {
84
+ function getOwnableValidator(threshold, owners, address) {
48
85
  return {
49
- address: OWNABLE_VALIDATOR_ADDRESS,
86
+ address: address ?? OWNABLE_VALIDATOR_ADDRESS,
50
87
  initData: (0, viem_1.encodeAbiParameters)([
51
88
  { name: 'threshold', type: 'uint256' },
52
89
  { name: 'owners', type: 'address[]' },
@@ -59,29 +96,33 @@ function getOwnableValidator({ threshold, owners, }) {
59
96
  type: common_1.MODULE_TYPE_ID_VALIDATOR,
60
97
  };
61
98
  }
62
- function getWebAuthnValidator(webAuthnCredential) {
63
- let pubKeyX;
64
- let pubKeyY;
65
- // Distinguish between PublicKey and Hex / byte encoded public key
66
- if (typeof webAuthnCredential.pubKey === 'string' ||
67
- webAuthnCredential.pubKey instanceof Uint8Array) {
68
- // It's a P256Credential
69
- const { x, y, prefix } = parsePublicKey(webAuthnCredential.pubKey);
70
- pubKeyX = x;
71
- pubKeyY = y;
72
- if (prefix && prefix !== 4) {
73
- throw new Error('Only uncompressed public keys are supported');
99
+ function getWebAuthnValidator(threshold, webAuthnCredentials) {
100
+ function getPublicKey(webAuthnCredential) {
101
+ if (typeof webAuthnCredential.pubKey === 'string' ||
102
+ webAuthnCredential.pubKey instanceof Uint8Array) {
103
+ // It's a P256Credential
104
+ const { x, y, prefix } = parsePublicKey(webAuthnCredential.pubKey);
105
+ if (prefix && prefix !== 4) {
106
+ throw new Error('Only uncompressed public keys are supported');
107
+ }
108
+ return {
109
+ x,
110
+ y,
111
+ };
112
+ }
113
+ else {
114
+ // It's already a PublicKey
115
+ return webAuthnCredential.pubKey;
74
116
  }
75
117
  }
76
- else {
77
- // It's already a PublicKey
78
- pubKeyX = webAuthnCredential.pubKey.x;
79
- pubKeyY = webAuthnCredential.pubKey.y;
80
- }
118
+ const publicKeys = webAuthnCredentials.map(getPublicKey);
81
119
  return {
82
120
  address: WEBAUTHN_VALIDATOR_ADDRESS,
83
121
  initData: (0, viem_1.encodeAbiParameters)([
122
+ { name: 'threshold', type: 'uint256' },
84
123
  {
124
+ name: 'credentials',
125
+ type: 'tuple[]',
85
126
  components: [
86
127
  {
87
128
  name: 'pubKeyX',
@@ -91,19 +132,62 @@ function getWebAuthnValidator(webAuthnCredential) {
91
132
  name: 'pubKeyY',
92
133
  type: 'uint256',
93
134
  },
135
+ {
136
+ name: 'requireUV',
137
+ type: 'bool',
138
+ },
94
139
  ],
95
- type: 'tuple',
96
- },
97
- {
98
- type: 'bytes32',
99
- name: 'authenticatorIdHash',
100
140
  },
101
141
  ], [
102
- {
103
- pubKeyX,
104
- pubKeyY,
105
- },
106
- (0, viem_1.keccak256)((0, viem_1.toHex)(webAuthnCredential.authenticatorId)),
142
+ BigInt(threshold),
143
+ publicKeys.map((publicKey) => ({
144
+ pubKeyX: publicKey.x,
145
+ pubKeyY: publicKey.y,
146
+ requireUV: false,
147
+ })),
148
+ ]),
149
+ deInitData: '0x',
150
+ additionalContext: '0x',
151
+ type: common_1.MODULE_TYPE_ID_VALIDATOR,
152
+ };
153
+ }
154
+ function getMultiFactorValidator(threshold, validators) {
155
+ return {
156
+ address: MULTI_FACTOR_VALIDATOR_ADDRESS,
157
+ initData: (0, viem_1.encodePacked)(['uint8', 'bytes'], [
158
+ threshold,
159
+ (0, viem_1.encodeAbiParameters)([
160
+ {
161
+ components: [
162
+ {
163
+ internalType: 'bytes32',
164
+ name: 'packedValidatorAndId',
165
+ type: 'bytes32',
166
+ },
167
+ { internalType: 'bytes', name: 'data', type: 'bytes' },
168
+ ],
169
+ name: 'validators',
170
+ type: 'tuple[]',
171
+ },
172
+ ], [
173
+ validators
174
+ .map((validator, index) => {
175
+ if (validator === null) {
176
+ return null;
177
+ }
178
+ const validatorModule = getValidator(validator);
179
+ return {
180
+ packedValidatorAndId: (0, viem_1.concat)([
181
+ (0, viem_1.pad)((0, viem_1.toHex)(index), {
182
+ size: 12,
183
+ }),
184
+ validatorModule.address,
185
+ ]),
186
+ data: validatorModule.initData,
187
+ };
188
+ })
189
+ .filter((validator) => validator !== null),
190
+ ]),
107
191
  ]),
108
192
  deInitData: '0x',
109
193
  additionalContext: '0x',
@@ -14,7 +14,7 @@ const core_1 = require("./core");
14
14
  });
15
15
  (0, vitest_1.expect)(validator.type).toEqual(common_1.MODULE_TYPE_ID_VALIDATOR);
16
16
  (0, vitest_1.expect)((0, viem_1.isAddress)(validator.address)).toEqual(true);
17
- (0, vitest_1.expect)(validator.address).toEqual('0x2483DA3A338895199E5e538530213157e931Bf06');
17
+ (0, vitest_1.expect)(validator.address).toEqual('0x000000000013fdB5234E4E3162a810F54d9f7E98');
18
18
  (0, vitest_1.expect)(validator.initData).toEqual('0x000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f6c02c78ded62973b43bfa523b247da099486936');
19
19
  });
20
20
  (0, vitest_1.test)('ECDSA: two addresses', () => {
@@ -24,7 +24,7 @@ const core_1 = require("./core");
24
24
  });
25
25
  (0, vitest_1.expect)(validator.type).toEqual(common_1.MODULE_TYPE_ID_VALIDATOR);
26
26
  (0, vitest_1.expect)((0, viem_1.isAddress)(validator.address)).toEqual(true);
27
- (0, vitest_1.expect)(validator.address).toEqual('0x2483DA3A338895199E5e538530213157e931Bf06');
27
+ (0, vitest_1.expect)(validator.address).toEqual('0x000000000013fdB5234E4E3162a810F54d9f7E98');
28
28
  (0, vitest_1.expect)(validator.initData).toEqual('0x0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb7000000000000000000000000f6c02c78ded62973b43bfa523b247da099486936');
29
29
  });
30
30
  (0, vitest_1.test)('ECDSA: three addresses, custom threshold', () => {
@@ -35,18 +35,18 @@ const core_1 = require("./core");
35
35
  });
36
36
  (0, vitest_1.expect)(validator.type).toEqual(common_1.MODULE_TYPE_ID_VALIDATOR);
37
37
  (0, vitest_1.expect)((0, viem_1.isAddress)(validator.address)).toEqual(true);
38
- (0, vitest_1.expect)(validator.address).toEqual('0x2483DA3A338895199E5e538530213157e931Bf06');
38
+ (0, vitest_1.expect)(validator.address).toEqual('0x000000000013fdB5234E4E3162a810F54d9f7E98');
39
39
  (0, vitest_1.expect)(validator.initData).toEqual('0x0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000030000000000000000000000006092086a3dc0020cd604a68fcf5d430007d51bb7000000000000000000000000c27b7578151c5ef713c62c65db09763d57ac3596000000000000000000000000f6c02c78ded62973b43bfa523b247da099486936');
40
40
  });
41
41
  (0, vitest_1.test)('Passkey', () => {
42
42
  const validator = (0, core_1.getValidator)({
43
43
  type: 'passkey',
44
- account: consts_1.passkeyAccount,
44
+ accounts: [consts_1.passkeyAccount],
45
45
  });
46
46
  (0, vitest_1.expect)(validator.type).toEqual(common_1.MODULE_TYPE_ID_VALIDATOR);
47
47
  (0, vitest_1.expect)((0, viem_1.isAddress)(validator.address)).toEqual(true);
48
- (0, vitest_1.expect)(validator.address).toEqual('0x2f167e55d42584f65e2e30a748f41ee75a311414');
49
- (0, vitest_1.expect)(validator.initData).toEqual('0x580a9af0569ad3905b26a703201b358aa0904236642ebe79b22a19d00d3737637d46f725a5427ae45a9569259bf67e1e16b187d7b3ad1ed70138c4f0409677d19c9a01073b202db2ed56e604ad11db557d8c3ad75181619597f21b830f2da82a');
48
+ (0, vitest_1.expect)(validator.address).toEqual('0x0000000000578c4cB0e472a5462da43C495C3F33');
49
+ (0, vitest_1.expect)(validator.initData).toEqual('0x000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001580a9af0569ad3905b26a703201b358aa0904236642ebe79b22a19d00d3737637d46f725a5427ae45a9569259bf67e1e16b187d7b3ad1ed70138c4f0409677d10000000000000000000000000000000000000000000000000000000000000000');
50
50
  });
51
51
  });
52
52
  (0, vitest_1.describe)('Mock Signature', () => {
@@ -67,7 +67,7 @@ const core_1 = require("./core");
67
67
  (0, vitest_1.test)('Passkey', () => {
68
68
  const signature = (0, core_1.getMockSignature)({
69
69
  type: 'passkey',
70
- account: consts_1.passkeyAccount,
70
+ accounts: [consts_1.passkeyAccount],
71
71
  });
72
72
  // Should have the proper schema
73
73
  (0, viem_1.decodeAbiParameters)([
@@ -1,5 +1,5 @@
1
1
  import { type Address, type Chain, type Hex, type PublicClient } from 'viem';
2
- import type { AccountType, RhinestoneAccountConfig, Session } from '../../types';
2
+ import type { AccountType, ProviderConfig, RhinestoneAccountConfig, Session } from '../../types';
3
3
  import { type Module } from '../common';
4
4
  interface SessionData {
5
5
  sessionValidator: Address;
@@ -82,8 +82,8 @@ declare const SMART_SESSIONS_VALIDATOR_ADDRESS: Address;
82
82
  declare const SMART_SESSION_MODE_USE = "0x00";
83
83
  declare const SMART_SESSION_MODE_ENABLE = "0x01";
84
84
  declare const SMART_SESSION_MODE_UNSAFE_ENABLE = "0x02";
85
- declare function getSessionData(chain: Chain, session: Session): Promise<SessionData>;
86
- declare function getEnableSessionCall(chain: Chain, session: Session): Promise<{
85
+ declare function getSessionData(chain: Chain, session: Session, provider?: ProviderConfig): Promise<SessionData>;
86
+ declare function getEnableSessionCall(chain: Chain, session: Session, provider?: ProviderConfig): Promise<{
87
87
  to: `0x${string}`;
88
88
  data: `0x${string}`;
89
89
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"smart-sessions.d.ts","sourceRoot":"","sources":["../../../../modules/validators/smart-sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smart-sessions.d.ts","sourceRoot":"","sources":["../../../../modules/validators/smart-sessions.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ exports.getPermissionId = getPermissionId;
9
9
  exports.isSessionEnabled = isSessionEnabled;
10
10
  const solady_1 = require("solady");
11
11
  const viem_1 = require("viem");
12
+ const utils_1 = require("../../accounts/utils");
12
13
  const orchestrator_1 = require("../../orchestrator");
13
14
  const smart_sessions_1 = require("../abi/smart-sessions");
14
15
  const common_1 = require("../common");
@@ -36,8 +37,8 @@ const ACTION_CONDITION_GREATER_THAN_OR_EQUAL = 3;
36
37
  const ACTION_CONDITION_LESS_THAN_OR_EQUAL = 4;
37
38
  const ACTION_CONDITION_NOT_EQUAL = 5;
38
39
  const ACTION_CONDITION_IN_RANGE = 6;
39
- async function getSessionData(chain, session) {
40
- const { appDomainSeparator, contentsType } = await getSessionAllowedERC7739Content(chain);
40
+ async function getSessionData(chain, session, provider) {
41
+ const { appDomainSeparator, contentsType } = await getSessionAllowedERC7739Content(chain, provider);
41
42
  const allowedERC7739Content = [
42
43
  {
43
44
  appDomainSeparator,
@@ -46,8 +47,8 @@ async function getSessionData(chain, session) {
46
47
  ];
47
48
  return getSmartSessionData(chain, session, allowedERC7739Content);
48
49
  }
49
- async function getEnableSessionCall(chain, session) {
50
- const { appDomainSeparator, contentsType } = await getSessionAllowedERC7739Content(chain);
50
+ async function getEnableSessionCall(chain, session, provider) {
51
+ const { appDomainSeparator, contentsType } = await getSessionAllowedERC7739Content(chain, provider);
51
52
  const allowedERC7739Content = [
52
53
  {
53
54
  appDomainSeparator,
@@ -90,10 +91,10 @@ function getOmniAccountActions(chain) {
90
91
  ];
91
92
  return omniActions;
92
93
  }
93
- async function getSessionAllowedERC7739Content(chain) {
94
+ async function getSessionAllowedERC7739Content(chain, provider) {
94
95
  const publicClient = (0, viem_1.createPublicClient)({
95
96
  chain,
96
- transport: (0, viem_1.http)(),
97
+ transport: (0, utils_1.createTransport)(chain, provider),
97
98
  });
98
99
  const appDomainSeparator = await publicClient.readContract({
99
100
  address: omni_account_1.HOOK_ADDRESS,
@@ -293,9 +294,9 @@ function getPolicyData(policy) {
293
294
  case 'time-frame': {
294
295
  return {
295
296
  policy: TIME_FRAME_POLICY_ADDRESS,
296
- initData: (0, viem_1.encodePacked)(['uint128', 'uint128'], [
297
- BigInt(policy.validUntil) / 1000n,
298
- BigInt(policy.validAfter) / 1000n,
297
+ initData: (0, viem_1.encodePacked)(['uint48', 'uint48'], [
298
+ Math.floor(policy.validUntil / 1000),
299
+ Math.floor(policy.validAfter / 1000),
299
300
  ]),
300
301
  };
301
302
  }
@@ -15,7 +15,7 @@ const smart_sessions_2 = require("./smart-sessions");
15
15
  type: 'ecdsa',
16
16
  accounts: [consts_1.accountA, consts_1.accountB],
17
17
  },
18
- })).toBe('0xa16d89135da22ae1b97b6ac6ebc047dce282640bbbf56059958d96527b720344');
18
+ })).toBe('0xd3b39024e437b4cac278e33965b9a9326e81ee46bd45d890adbfc8eb45412fa1');
19
19
  });
20
20
  (0, vitest_1.test)('with salt', () => {
21
21
  (0, vitest_1.expect)((0, smart_sessions_2.getPermissionId)({
@@ -24,7 +24,7 @@ const smart_sessions_2 = require("./smart-sessions");
24
24
  accounts: [consts_1.accountA, consts_1.accountB],
25
25
  },
26
26
  salt: '0x97340e1cfff3319c76ef22b2bc9d3231071d550125d68c9d4a8972823f166320',
27
- })).toBe('0x85ff7cd77e7e0f8fbc2e42c86cdb948e4c79ac5a5e4595def4c38d7ed804eef9');
27
+ })).toBe('0xeb47b4699298a847a0f6fb7365e56aefcc95630e7d0e3d9ca5917620c7dc3d08');
28
28
  });
29
29
  });
30
30
  (0, vitest_1.describe)('Smart Session Validator', () => {
@@ -217,10 +217,10 @@ const smart_sessions_2 = require("./smart-sessions");
217
217
  });
218
218
  (0, vitest_1.describe)('Encode Smart Session Signature', () => {
219
219
  (0, vitest_1.test)('use mode', () => {
220
- const permissionId = '0xa16d89135da22ae1b97b6ac6ebc047dce282640bbbf56059958d96527b720344';
220
+ const permissionId = '0xd3b39024e437b4cac278e33965b9a9326e81ee46bd45d890adbfc8eb45412fa1';
221
221
  const signature = '0xabcdef';
222
222
  const sessionSignature = (0, smart_sessions_2.encodeSmartSessionSignature)(smart_sessions_2.SMART_SESSION_MODE_USE, permissionId, signature);
223
- (0, vitest_1.expect)(sessionSignature).toEqual('0x00a16d89135da22ae1b97b6ac6ebc047dce282640bbbf56059958d96527b720344abcdef');
223
+ (0, vitest_1.expect)(sessionSignature).toEqual('0x00d3b39024e437b4cac278e33965b9a9326e81ee46bd45d890adbfc8eb45412fa1abcdef');
224
224
  });
225
225
  });
226
226
  });
@@ -2,19 +2,21 @@ import { type Address } from 'viem';
2
2
  import type { IntentCost, IntentInput, IntentOpStatus, IntentResult, IntentRoute, Portfolio, SignedIntentOp } from './types';
3
3
  export declare class Orchestrator {
4
4
  private serverUrl;
5
- private apiKey;
6
- constructor(serverUrl: string, apiKey: string);
5
+ private apiKey?;
6
+ constructor(serverUrl: string, apiKey?: string);
7
7
  getPortfolio(userAddress: Address, filter?: {
8
8
  chainIds?: number[];
9
9
  tokens?: {
10
10
  [chainId: number]: Address[];
11
11
  };
12
12
  }): Promise<Portfolio>;
13
- getMaxTokenAmount(userAddress: Address, destinationChainId: number, destinationTokenAddress: Address, destinationGasUnits: bigint): Promise<bigint>;
13
+ getMaxTokenAmount(userAddress: Address, destinationChainId: number, destinationTokenAddress: Address, destinationGasUnits: bigint, sponsored: boolean): Promise<bigint>;
14
14
  getIntentCost(input: IntentInput): Promise<IntentCost>;
15
15
  getIntentRoute(input: IntentInput): Promise<IntentRoute>;
16
16
  submitIntent(signedIntentOp: SignedIntentOp): Promise<IntentResult>;
17
+ simulateIntent(signedIntentOp: SignedIntentOp): Promise<IntentResult>;
17
18
  getIntentOpStatus(intentId: bigint): Promise<IntentOpStatus>;
18
19
  private parseError;
20
+ private parseErrorMessage;
19
21
  }
20
22
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../orchestrator/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAU,MAAM,MAAM,CAAA;AAe3C,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,cAAc,EACd,YAAY,EACZ,WAAW,EACX,SAAS,EAGT,cAAc,EACf,MAAM,SAAS,CAAA;AAGhB,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,MAAM,CAAQ;gBAEV,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAKvC,YAAY,CAChB,WAAW,EAAE,OAAO,EACpB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;QACnB,MAAM,CAAC,EAAE;YACP,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;SAC7B,CAAA;KACF,GACA,OAAO,CAAC,SAAS,CAAC;IAmDf,iBAAiB,CACrB,WAAW,EAAE,OAAO,EACpB,kBAAkB,EAAE,MAAM,EAC1B,uBAAuB,EAAE,OAAO,EAChC,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,MAAM,CAAC;IAmCZ,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAqBtD,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAgBxD,YAAY,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAgBnE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAalE,OAAO,CAAC,UAAU;CAwHnB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../orchestrator/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAuB,MAAM,MAAM,CAAA;AAexD,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,cAAc,EACd,YAAY,EACZ,WAAW,EACX,SAAS,EAET,cAAc,EACf,MAAM,SAAS,CAAA;AAGhB,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,MAAM,CAAC,CAAQ;gBAEX,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;IAKxC,YAAY,CAChB,WAAW,EAAE,OAAO,EACpB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;QACnB,MAAM,CAAC,EAAE;YACP,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;SAC7B,CAAA;KACF,GACA,OAAO,CAAC,SAAS,CAAC;IAmDf,iBAAiB,CACrB,WAAW,EAAE,OAAO,EACpB,kBAAkB,EAAE,MAAM,EAC1B,uBAAuB,EAAE,OAAO,EAChC,mBAAmB,EAAE,MAAM,EAC3B,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,MAAM,CAAC;IAqDZ,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAqBtD,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAqBxD,YAAY,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAqBnE,cAAc,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAqBrE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAkBlE,OAAO,CAAC,UAAU;IA0ElB,OAAO,CAAC,iBAAiB;CAmD1B"}