@rhinestone/sdk 1.5.1 → 2.0.0-beta.1

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/README.md +1 -1
  2. package/dist/src/accounts/error.d.ts +1 -1
  3. package/dist/src/accounts/error.js +1 -19
  4. package/dist/src/accounts/index.d.ts +5 -5
  5. package/dist/src/accounts/index.js +121 -157
  6. package/dist/src/accounts/json-rpc/index.d.ts +1 -1
  7. package/dist/src/accounts/json-rpc/index.js +8 -10
  8. package/dist/src/accounts/json-rpc/providers.d.ts +1 -1
  9. package/dist/src/accounts/json-rpc/providers.d.ts.map +1 -1
  10. package/dist/src/accounts/json-rpc/providers.js +7 -9
  11. package/dist/src/accounts/kernel.d.ts +3 -3
  12. package/dist/src/accounts/kernel.js +66 -75
  13. package/dist/src/accounts/nexus.d.ts +3 -3
  14. package/dist/src/accounts/nexus.js +62 -73
  15. package/dist/src/accounts/passport.d.ts +3 -3
  16. package/dist/src/accounts/passport.js +9 -13
  17. package/dist/src/accounts/safe.d.ts +3 -3
  18. package/dist/src/accounts/safe.js +54 -63
  19. package/dist/src/accounts/signing/common.d.ts +2 -2
  20. package/dist/src/accounts/signing/common.js +30 -36
  21. package/dist/src/accounts/signing/message.d.ts +2 -2
  22. package/dist/src/accounts/signing/message.js +10 -12
  23. package/dist/src/accounts/signing/passkeys.js +11 -17
  24. package/dist/src/accounts/signing/typedData.d.ts +1 -1
  25. package/dist/src/accounts/signing/typedData.js +6 -8
  26. package/dist/src/accounts/startale.d.ts +3 -3
  27. package/dist/src/accounts/startale.js +37 -47
  28. package/dist/src/accounts/utils.d.ts +2 -2
  29. package/dist/src/accounts/utils.js +22 -28
  30. package/dist/src/accounts/walletClient.js +4 -8
  31. package/dist/src/actions/compact.d.ts +1 -1
  32. package/dist/src/actions/compact.js +22 -35
  33. package/dist/src/actions/deployment.d.ts +1 -1
  34. package/dist/src/actions/deployment.js +11 -13
  35. package/dist/src/actions/ecdsa.d.ts +1 -1
  36. package/dist/src/actions/ecdsa.js +14 -20
  37. package/dist/src/actions/index.d.ts +2 -2
  38. package/dist/src/actions/index.js +6 -10
  39. package/dist/src/actions/mfa.d.ts +1 -1
  40. package/dist/src/actions/mfa.js +18 -24
  41. package/dist/src/actions/passkeys.d.ts +2 -2
  42. package/dist/src/actions/passkeys.js +14 -20
  43. package/dist/src/actions/recovery.d.ts +1 -1
  44. package/dist/src/actions/recovery.js +25 -29
  45. package/dist/src/actions/smart-sessions.d.ts +1 -1
  46. package/dist/src/actions/smart-sessions.js +8 -12
  47. package/dist/src/auth/provider.d.ts +1 -1
  48. package/dist/src/auth/provider.js +1 -4
  49. package/dist/src/errors/index.d.ts +4 -4
  50. package/dist/src/errors/index.d.ts.map +1 -1
  51. package/dist/src/errors/index.js +12 -54
  52. package/dist/src/execution/compact.d.ts +1 -144
  53. package/dist/src/execution/compact.d.ts.map +1 -1
  54. package/dist/src/execution/compact.js +1 -117
  55. package/dist/src/execution/error.d.ts +10 -1
  56. package/dist/src/execution/error.d.ts.map +1 -1
  57. package/dist/src/execution/error.js +9 -11
  58. package/dist/src/execution/index.d.ts +10 -11
  59. package/dist/src/execution/index.d.ts.map +1 -1
  60. package/dist/src/execution/index.js +64 -75
  61. package/dist/src/execution/permit2.d.ts +2 -138
  62. package/dist/src/execution/permit2.d.ts.map +1 -1
  63. package/dist/src/execution/permit2.js +5 -239
  64. package/dist/src/execution/utils.d.ts +31 -15
  65. package/dist/src/execution/utils.d.ts.map +1 -1
  66. package/dist/src/execution/utils.js +283 -256
  67. package/dist/src/index.d.ts +15 -14
  68. package/dist/src/index.d.ts.map +1 -1
  69. package/dist/src/index.js +57 -68
  70. package/dist/src/jwt-server/digest.js +3 -6
  71. package/dist/src/jwt-server/express.d.ts +1 -1
  72. package/dist/src/jwt-server/express.d.ts.map +1 -1
  73. package/dist/src/jwt-server/express.js +6 -7
  74. package/dist/src/jwt-server/handlers.d.ts +1 -1
  75. package/dist/src/jwt-server/handlers.js +7 -11
  76. package/dist/src/jwt-server/index.d.ts +7 -7
  77. package/dist/src/jwt-server/index.js +6 -17
  78. package/dist/src/jwt-server/jcs.js +1 -4
  79. package/dist/src/jwt-server/signer.d.ts +1 -1
  80. package/dist/src/jwt-server/signer.js +10 -13
  81. package/dist/src/jwt-server/sponsorship.js +2 -7
  82. package/dist/src/jwt-server/web.d.ts +1 -1
  83. package/dist/src/jwt-server/web.js +5 -9
  84. package/dist/src/modules/abi/smart-session-emissary.js +1 -3
  85. package/dist/src/modules/abi/smart-sessions.js +1 -4
  86. package/dist/src/modules/chain-abstraction.js +1 -5
  87. package/dist/src/modules/common.d.ts +1 -1
  88. package/dist/src/modules/common.js +1 -13
  89. package/dist/src/modules/index.d.ts +5 -5
  90. package/dist/src/modules/index.js +35 -50
  91. package/dist/src/modules/legacy.d.ts +2 -2
  92. package/dist/src/modules/legacy.js +11 -14
  93. package/dist/src/modules/read.d.ts +1 -1
  94. package/dist/src/modules/read.js +11 -15
  95. package/dist/src/modules/validators/core.d.ts +2 -2
  96. package/dist/src/modules/validators/core.js +26 -44
  97. package/dist/src/modules/validators/index.d.ts +2 -2
  98. package/dist/src/modules/validators/index.js +3 -19
  99. package/dist/src/modules/validators/policies/claim/permit2.d.ts +1 -1
  100. package/dist/src/modules/validators/policies/claim/permit2.js +39 -44
  101. package/dist/src/modules/validators/policies/claim/types.js +11 -14
  102. package/dist/src/modules/validators/smart-sessions.d.ts +3 -3
  103. package/dist/src/modules/validators/smart-sessions.js +65 -94
  104. package/dist/src/orchestrator/caip2.d.ts +7 -0
  105. package/dist/src/orchestrator/caip2.d.ts.map +1 -0
  106. package/dist/src/orchestrator/caip2.js +17 -0
  107. package/dist/src/orchestrator/client.d.ts +12 -12
  108. package/dist/src/orchestrator/client.d.ts.map +1 -1
  109. package/dist/src/orchestrator/client.js +199 -305
  110. package/dist/src/orchestrator/consts.d.ts +2 -2
  111. package/dist/src/orchestrator/consts.d.ts.map +1 -1
  112. package/dist/src/orchestrator/consts.js +3 -9
  113. package/dist/src/orchestrator/error.d.ts +72 -217
  114. package/dist/src/orchestrator/error.d.ts.map +1 -1
  115. package/dist/src/orchestrator/error.js +117 -227
  116. package/dist/src/orchestrator/index.d.ts +9 -9
  117. package/dist/src/orchestrator/index.d.ts.map +1 -1
  118. package/dist/src/orchestrator/index.js +7 -56
  119. package/dist/src/orchestrator/registry.d.ts +2 -2
  120. package/dist/src/orchestrator/registry.js +19 -33
  121. package/dist/src/orchestrator/types.d.ts +97 -232
  122. package/dist/src/orchestrator/types.d.ts.map +1 -1
  123. package/dist/src/orchestrator/types.js +1 -17
  124. package/dist/src/orchestrator/utils.js +1 -3
  125. package/dist/src/types.d.ts +5 -7
  126. package/dist/src/types.d.ts.map +1 -1
  127. package/dist/src/types.js +1 -2
  128. package/dist/src/utils/index.d.ts +2 -2
  129. package/dist/src/utils/index.js +9 -15
  130. package/package.json +15 -98
  131. package/dist/src/execution/singleChainOps.d.ts +0 -41
  132. package/dist/src/execution/singleChainOps.d.ts.map +0 -1
  133. package/dist/src/execution/singleChainOps.js +0 -44
  134. package/dist/src/execution/types.d.ts +0 -36
  135. package/dist/src/execution/types.d.ts.map +0 -1
  136. package/dist/src/execution/types.js +0 -2
@@ -1,34 +1,16 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.INTENT_EXECUTION_POLICY_ADDRESS = exports.VALUE_LIMIT_POLICY_ADDRESS = exports.USAGE_LIMIT_POLICY_ADDRESS = exports.UNIVERSAL_ACTION_POLICY_ADDRESS = exports.SUDO_POLICY_ADDRESS = exports.TIME_FRAME_POLICY_ADDRESS = exports.SPENDING_LIMITS_POLICY_ADDRESS = exports.DUMMY_PRECLAIMOP_SELECTOR = exports.DUMMY_PRECLAIMOP_TARGET = exports.SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG_PERMITTED_TO_CALL_SMARTSESSION = exports.SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG = exports.SMART_SESSIONS_FALLBACK_TARGET_FLAG = exports.SMART_SESSION_EMISSARY_ADDRESS_DEV = exports.SMART_SESSION_EMISSARY_ADDRESS = void 0;
7
- exports.packSignature = packSignature;
8
- exports.getSessionData = getSessionData;
9
- exports.getPolicyData = getPolicyData;
10
- exports.getEnableSessionCall = getEnableSessionCall;
11
- exports.getPermissionId = getPermissionId;
12
- exports.getSmartSessionValidator = getSmartSessionValidator;
13
- exports.getSessionDetails = getSessionDetails;
14
- exports.isSessionEnabled = isSessionEnabled;
15
- exports.signEnableSession = signEnableSession;
16
- exports.buildMockSignature = buildMockSignature;
17
- const solady_1 = require("solady");
18
- const viem_1 = require("viem");
19
- const chains_1 = require("viem/chains");
20
- const accounts_1 = require("../../accounts");
21
- const startale_1 = require("../../accounts/startale");
22
- const utils_1 = require("../../accounts/utils");
23
- const compact_1 = require("../../execution/compact");
24
- const utils_2 = require("../../execution/utils");
25
- const registry_1 = require("../../orchestrator/registry");
26
- const smart_session_emissary_1 = __importDefault(require("../abi/smart-session-emissary"));
27
- const common_1 = require("../common");
28
- const core_1 = require("./core");
29
- Object.defineProperty(exports, "SMART_SESSION_EMISSARY_ADDRESS", { enumerable: true, get: function () { return core_1.SMART_SESSION_EMISSARY_ADDRESS; } });
30
- Object.defineProperty(exports, "SMART_SESSION_EMISSARY_ADDRESS_DEV", { enumerable: true, get: function () { return core_1.SMART_SESSION_EMISSARY_ADDRESS_DEV; } });
31
- const permit2_1 = require("./policies/claim/permit2");
1
+ import { LibZip } from 'solady';
2
+ import { concat, createPublicClient, encodeAbiParameters, encodeFunctionData, encodePacked, hashStruct, isHex, keccak256, maxUint256, padHex, size, toFunctionSelector, toHex, zeroAddress, zeroHash, } from 'viem';
3
+ import { mainnet } from 'viem/chains';
4
+ import { getAccountProvider } from '../../accounts/index.js';
5
+ import { K1_DEFAULT_VALIDATOR_ADDRESS } from '../../accounts/startale.js';
6
+ import { createTransport } from '../../accounts/utils.js';
7
+ import { RESET_PERIOD_ONE_WEEK, SCOPE_MULTICHAIN, } from '../../execution/compact.js';
8
+ import { signTypedData } from '../../execution/utils.js';
9
+ import { getChainById, getWrappedTokenAddress, } from '../../orchestrator/registry.js';
10
+ import smartSessionEmissaryAbi from '../abi/smart-session-emissary.js';
11
+ import { MODULE_TYPE_ID_VALIDATOR } from '../common.js';
12
+ import { getOwnerValidator, getValidator, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, } from './core.js';
13
+ import { encodePermit2ClaimPolicyInitData, PERMIT2_CLAIM_POLICY_ADDRESS, } from './policies/claim/permit2.js';
32
14
  const types = {
33
15
  PolicyData: [
34
16
  { name: 'policy', type: 'address' },
@@ -76,34 +58,22 @@ const types = {
76
58
  const SMART_SESSION_MODE_USE = '0x00';
77
59
  const SMART_SESSION_MODE_ENABLE = '0x01';
78
60
  const SMART_SESSIONS_FALLBACK_TARGET_FLAG = '0x0000000000000000000000000000000000000001';
79
- exports.SMART_SESSIONS_FALLBACK_TARGET_FLAG = SMART_SESSIONS_FALLBACK_TARGET_FLAG;
80
61
  const SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG = '0x00000001';
81
- exports.SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG = SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG;
82
62
  const SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG_PERMITTED_TO_CALL_SMARTSESSION = '0x00000002';
83
- exports.SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG_PERMITTED_TO_CALL_SMARTSESSION = SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG_PERMITTED_TO_CALL_SMARTSESSION;
84
63
  // Dummy preclaimop action injected into every session so that the filler can trigger
85
64
  // verifyExecution (ENABLE mode) using an injected dummy preclaimop when there are no
86
65
  // real preclaimops. Target 0x...0420 is the ecRecover precompile; calls to it fail
87
66
  // silently because preclaimops are failure-tolerant. Selector 0x69123456 is
88
67
  // intentionally uncommon.
89
68
  const DUMMY_PRECLAIMOP_TARGET = '0x0000000000000000000000000000000000000420';
90
- exports.DUMMY_PRECLAIMOP_TARGET = DUMMY_PRECLAIMOP_TARGET;
91
69
  const DUMMY_PRECLAIMOP_SELECTOR = '0x69123456';
92
- exports.DUMMY_PRECLAIMOP_SELECTOR = DUMMY_PRECLAIMOP_SELECTOR;
93
70
  const SPENDING_LIMITS_POLICY_ADDRESS = '0x00000088d48cf102a8cdb0137a9b173f957c6343';
94
- exports.SPENDING_LIMITS_POLICY_ADDRESS = SPENDING_LIMITS_POLICY_ADDRESS;
95
71
  const TIME_FRAME_POLICY_ADDRESS = '0x8177451511de0577b911c254e9551d981c26dc72';
96
- exports.TIME_FRAME_POLICY_ADDRESS = TIME_FRAME_POLICY_ADDRESS;
97
72
  const SUDO_POLICY_ADDRESS = '0x0000003111cd8e92337c100f22b7a9dbf8dee301';
98
- exports.SUDO_POLICY_ADDRESS = SUDO_POLICY_ADDRESS;
99
73
  const UNIVERSAL_ACTION_POLICY_ADDRESS = '0x0000006dda6c463511c4e9b05cfc34c1247fcf1f';
100
- exports.UNIVERSAL_ACTION_POLICY_ADDRESS = UNIVERSAL_ACTION_POLICY_ADDRESS;
101
74
  const USAGE_LIMIT_POLICY_ADDRESS = '0x1f34ef8311345a3a4a4566af321b313052f51493';
102
- exports.USAGE_LIMIT_POLICY_ADDRESS = USAGE_LIMIT_POLICY_ADDRESS;
103
75
  const VALUE_LIMIT_POLICY_ADDRESS = '0x730da93267e7e513e932301b47f2ac7d062abc83';
104
- exports.VALUE_LIMIT_POLICY_ADDRESS = VALUE_LIMIT_POLICY_ADDRESS;
105
76
  const INTENT_EXECUTION_POLICY_ADDRESS = '0xe9eA54d063975cDee9e06b7636d5563d95a7A23C';
106
- exports.INTENT_EXECUTION_POLICY_ADDRESS = INTENT_EXECUTION_POLICY_ADDRESS;
107
77
  const INTENT_EXECUTION_POLICY_ADDRESS_DEV = '0xa09b47de6e510cbdc18b97e9239bedcb44fb4901';
108
78
  const ACTION_CONDITION_EQUAL = 0;
109
79
  const ACTION_CONDITION_GREATER_THAN = 1;
@@ -121,7 +91,7 @@ function packSignature(signers, validatorSignature) {
121
91
  : SMART_SESSION_MODE_USE;
122
92
  const sessionData = getSessionData(signers.session);
123
93
  const packedSignature = signers.enableData
124
- ? solady_1.LibZip.flzCompress((0, viem_1.encodeAbiParameters)([
94
+ ? LibZip.flzCompress(encodeAbiParameters([
125
95
  {
126
96
  type: 'tuple',
127
97
  name: 'enableData',
@@ -220,9 +190,9 @@ function packSignature(signers, validatorSignature) {
220
190
  { type: 'bytes' },
221
191
  ], [
222
192
  {
223
- allocatorSig: viem_1.zeroHash,
193
+ allocatorSig: zeroHash,
224
194
  userSig: signers.enableData.userSignature,
225
- expires: viem_1.maxUint256,
195
+ expires: maxUint256,
226
196
  enableSession: {
227
197
  chainDigestIndex: signers.enableData.sessionToEnableIndex,
228
198
  hashesAndChainIds: signers.enableData.hashesAndChainIds,
@@ -230,24 +200,24 @@ function packSignature(signers, validatorSignature) {
230
200
  },
231
201
  },
232
202
  {
233
- scope: compact_1.SCOPE_MULTICHAIN,
234
- resetPeriod: compact_1.RESET_PERIOD_ONE_WEEK,
235
- allocator: viem_1.zeroAddress,
203
+ scope: SCOPE_MULTICHAIN,
204
+ resetPeriod: RESET_PERIOD_ONE_WEEK,
205
+ allocator: zeroAddress,
236
206
  permissionId: getPermissionId(signers.session),
237
207
  },
238
208
  validatorSignature,
239
209
  ]))
240
210
  : validatorSignature;
241
211
  return signers.enableData
242
- ? (0, viem_1.encodePacked)(['bytes1', 'bytes'], [smartSessionMode, packedSignature])
243
- : (0, viem_1.encodePacked)(['bytes1', 'bytes32', 'bytes'], [smartSessionMode, permissionId, packedSignature]);
212
+ ? encodePacked(['bytes1', 'bytes'], [smartSessionMode, packedSignature])
213
+ : encodePacked(['bytes1', 'bytes32', 'bytes'], [smartSessionMode, permissionId, packedSignature]);
244
214
  }
245
215
  else {
246
216
  const SIGNATURE_IS_VALID_SIG_1271 = '0x00';
247
- const policyDataOffset = BigInt(64 + (0, viem_1.size)(validatorSignature));
217
+ const policyDataOffset = BigInt(64 + size(validatorSignature));
248
218
  const mode = SIGNATURE_IS_VALID_SIG_1271;
249
219
  const policySpecificData = signers.claimPolicyData ?? '0x';
250
- const signature = (0, viem_1.encodePacked)(['bytes1', 'bytes32', 'uint256', 'bytes', 'bytes'], [
220
+ const signature = encodePacked(['bytes1', 'bytes32', 'uint256', 'bytes', 'bytes'], [
251
221
  mode,
252
222
  permissionId,
253
223
  policyDataOffset,
@@ -265,7 +235,7 @@ async function getSessionDetails(account, sessions, provider, useDevContracts) {
265
235
  const chains = sessions.map((session) => session.chain);
266
236
  const hashesAndChainIds = signedSessions.map((session, index) => ({
267
237
  chainId: BigInt(chains[index].id),
268
- sessionDigest: (0, viem_1.hashStruct)({
238
+ sessionDigest: hashStruct({
269
239
  types,
270
240
  primaryType: 'SignedSession',
271
241
  data: session,
@@ -292,9 +262,9 @@ async function getSessionDetails(account, sessions, provider, useDevContracts) {
292
262
  };
293
263
  }
294
264
  async function isSessionEnabled(account, provider, session, useDevContracts) {
295
- const publicClient = (0, viem_1.createPublicClient)({
265
+ const publicClient = createPublicClient({
296
266
  chain: session.chain,
297
- transport: (0, utils_1.createTransport)(session.chain, provider),
267
+ transport: createTransport(session.chain, provider),
298
268
  });
299
269
  const isEnabled = await publicClient.readContract({
300
270
  address: getSmartSessionEmissaryAddress(useDevContracts),
@@ -316,30 +286,30 @@ async function isSessionEnabled(account, provider, session, useDevContracts) {
316
286
  return isEnabled;
317
287
  }
318
288
  async function signEnableSession(config, details) {
319
- const account = (0, accounts_1.getAccountProvider)(config);
320
- const validator = (0, core_1.getOwnerValidator)(config);
289
+ const account = getAccountProvider(config);
290
+ const validator = getOwnerValidator(config);
321
291
  const isStartaleK1 = account.type === 'startale' &&
322
292
  validator.address.toLowerCase() ===
323
- startale_1.K1_DEFAULT_VALIDATOR_ADDRESS.toLowerCase();
293
+ K1_DEFAULT_VALIDATOR_ADDRESS.toLowerCase();
324
294
  if (isStartaleK1) {
325
295
  const chainIds = details.hashesAndChainIds.map((h) => h.chainId);
326
296
  const uniqueChainIds = [...new Set(chainIds.map((c) => c.toString()))];
327
297
  if (uniqueChainIds.length > 1) {
328
298
  throw new Error('Startale accounts with K1 validator do not support multi-chain session enable');
329
299
  }
330
- const chain = (0, registry_1.getChainById)(Number(chainIds[0]));
331
- return (0, utils_2.signTypedData)(config, details.data, chain, undefined, {
300
+ const chain = getChainById(Number(chainIds[0]));
301
+ return signTypedData(config, details.data, chain, undefined, {
332
302
  skipErc6492: true,
333
303
  });
334
304
  }
335
- return (0, utils_2.signTypedData)(config, details.data, chains_1.mainnet, undefined, {
305
+ return signTypedData(config, details.data, mainnet, undefined, {
336
306
  skipErc6492: true,
337
307
  });
338
308
  }
339
309
  async function getSessionNonce(account, session, lockTag, provider, useDevContracts) {
340
- const publicClient = (0, viem_1.createPublicClient)({
310
+ const publicClient = createPublicClient({
341
311
  chain: session.chain,
342
- transport: (0, utils_1.createTransport)(session.chain, provider),
312
+ transport: createTransport(session.chain, provider),
343
313
  });
344
314
  const nonce = await publicClient.readContract({
345
315
  address: getSmartSessionEmissaryAddress(useDevContracts),
@@ -384,7 +354,7 @@ function getSignedSession(account, lockTag, session, nonce, useDevContracts) {
384
354
  sessionValidatorInitData: session.sessionValidatorInitData,
385
355
  salt: session.salt,
386
356
  smartSessionEmissary: getSmartSessionEmissaryAddress(useDevContracts),
387
- expires: viem_1.maxUint256,
357
+ expires: maxUint256,
388
358
  nonce,
389
359
  };
390
360
  }
@@ -393,21 +363,21 @@ async function getEnableSessionCall(account, session, enableSessionSignature, ha
393
363
  const permissionId = getPermissionId(session);
394
364
  return {
395
365
  to: getSmartSessionEmissaryAddress(useDevContracts),
396
- data: (0, viem_1.encodeFunctionData)({
397
- abi: smart_session_emissary_1.default,
366
+ data: encodeFunctionData({
367
+ abi: smartSessionEmissaryAbi,
398
368
  functionName: 'setConfig',
399
369
  args: [
400
370
  account,
401
371
  {
402
- scope: compact_1.SCOPE_MULTICHAIN,
403
- resetPeriod: compact_1.RESET_PERIOD_ONE_WEEK,
404
- allocator: viem_1.zeroAddress,
372
+ scope: SCOPE_MULTICHAIN,
373
+ resetPeriod: RESET_PERIOD_ONE_WEEK,
374
+ allocator: zeroAddress,
405
375
  permissionId,
406
376
  },
407
377
  {
408
- allocatorSig: viem_1.zeroHash,
378
+ allocatorSig: zeroHash,
409
379
  userSig: enableSessionSignature,
410
- expires: viem_1.maxUint256,
380
+ expires: maxUint256,
411
381
  session: {
412
382
  chainDigestIndex: sessionToEnableIndex,
413
383
  hashesAndChainIds,
@@ -419,11 +389,11 @@ async function getEnableSessionCall(account, session, enableSessionSignature, ha
419
389
  };
420
390
  }
421
391
  function getSessionData(session, useDevContracts) {
422
- const validator = (0, core_1.getValidator)(session.owners);
392
+ const validator = getValidator(session.owners);
423
393
  const allowedContent = [
424
394
  {
425
395
  contentNames: [''],
426
- appDomainSeparator: viem_1.zeroHash,
396
+ appDomainSeparator: zeroHash,
427
397
  },
428
398
  ];
429
399
  const erc7739Data = {
@@ -449,8 +419,8 @@ function getSessionData(session, useDevContracts) {
449
419
  const injectedActions = [
450
420
  // Native token wrapping
451
421
  {
452
- target: (0, registry_1.getWrappedTokenAddress)(session.chain),
453
- selector: (0, viem_1.toFunctionSelector)({
422
+ target: getWrappedTokenAddress(session.chain),
423
+ selector: toFunctionSelector({
454
424
  type: 'function',
455
425
  name: 'deposit',
456
426
  inputs: [],
@@ -491,20 +461,20 @@ function getSessionData(session, useDevContracts) {
491
461
  : [sudoAction];
492
462
  return {
493
463
  sessionValidator: validator.address,
494
- salt: viem_1.zeroHash,
464
+ salt: zeroHash,
495
465
  sessionValidatorInitData: validator.initData,
496
466
  erc7739Policies: erc7739Data,
497
467
  actions,
498
468
  // Note: Permit2ClaimPolicy has no dev deployment — same address in all environments
499
469
  claimPolicies: session.claimPolicies?.map((p) => ({
500
- policy: permit2_1.PERMIT2_CLAIM_POLICY_ADDRESS,
501
- initData: (0, permit2_1.encodePermit2ClaimPolicyInitData)(p),
470
+ policy: PERMIT2_CLAIM_POLICY_ADDRESS,
471
+ initData: encodePermit2ClaimPolicyInitData(p),
502
472
  })) ?? [],
503
473
  };
504
474
  }
505
475
  function getPermissionId(session) {
506
476
  const sessionData = getSessionData(session);
507
- return (0, viem_1.keccak256)((0, viem_1.encodeAbiParameters)([
477
+ return keccak256(encodeAbiParameters([
508
478
  {
509
479
  type: 'address',
510
480
  name: 'sessionValidator',
@@ -561,14 +531,14 @@ function getPolicyData(policy, useDevContracts) {
561
531
  condition: ACTION_CONDITION_EQUAL,
562
532
  offset: 0n,
563
533
  isLimited: false,
564
- ref: viem_1.zeroHash,
534
+ ref: zeroHash,
565
535
  usage: { limit: 0n, used: 0n },
566
536
  }));
567
537
  for (let i = 0; i < policy.rules.length; i++) {
568
538
  const rule = policy.rules[i];
569
- const ref = (0, viem_1.isHex)(rule.referenceValue)
570
- ? (0, viem_1.padHex)(rule.referenceValue)
571
- : (0, viem_1.toHex)(rule.referenceValue, { size: 32 });
539
+ const ref = isHex(rule.referenceValue)
540
+ ? padHex(rule.referenceValue)
541
+ : toHex(rule.referenceValue, { size: 32 });
572
542
  rules[i] = {
573
543
  condition: getCondition(rule.condition),
574
544
  offset: rule.calldataOffset,
@@ -582,7 +552,7 @@ function getPolicyData(policy, useDevContracts) {
582
552
  }
583
553
  return {
584
554
  policy: UNIVERSAL_ACTION_POLICY_ADDRESS,
585
- initData: (0, viem_1.encodeAbiParameters)([
555
+ initData: encodeAbiParameters([
586
556
  {
587
557
  components: [
588
558
  {
@@ -655,13 +625,13 @@ function getPolicyData(policy, useDevContracts) {
655
625
  const limits = policy.limits.map(({ amount }) => amount);
656
626
  return {
657
627
  policy: SPENDING_LIMITS_POLICY_ADDRESS,
658
- initData: (0, viem_1.encodeAbiParameters)([{ type: 'address[]' }, { type: 'uint256[]' }], [tokens, limits]),
628
+ initData: encodeAbiParameters([{ type: 'address[]' }, { type: 'uint256[]' }], [tokens, limits]),
659
629
  };
660
630
  }
661
631
  case 'time-frame': {
662
632
  return {
663
633
  policy: TIME_FRAME_POLICY_ADDRESS,
664
- initData: (0, viem_1.encodePacked)(['uint48', 'uint48'], [
634
+ initData: encodePacked(['uint48', 'uint48'], [
665
635
  Math.floor(policy.validUntil / 1000),
666
636
  Math.floor(policy.validAfter / 1000),
667
637
  ]),
@@ -670,13 +640,13 @@ function getPolicyData(policy, useDevContracts) {
670
640
  case 'usage-limit': {
671
641
  return {
672
642
  policy: USAGE_LIMIT_POLICY_ADDRESS,
673
- initData: (0, viem_1.encodePacked)(['uint128'], [policy.limit]),
643
+ initData: encodePacked(['uint128'], [policy.limit]),
674
644
  };
675
645
  }
676
646
  case 'value-limit': {
677
647
  return {
678
648
  policy: VALUE_LIMIT_POLICY_ADDRESS,
679
- initData: (0, viem_1.encodeAbiParameters)([{ type: 'uint256' }], [policy.limit]),
649
+ initData: encodeAbiParameters([{ type: 'uint256' }], [policy.limit]),
680
650
  };
681
651
  }
682
652
  }
@@ -694,13 +664,13 @@ function getSmartSessionValidator(config) {
694
664
  initData: '0x',
695
665
  deInitData: '0x',
696
666
  additionalContext: '0x',
697
- type: common_1.MODULE_TYPE_ID_VALIDATOR,
667
+ type: MODULE_TYPE_ID_VALIDATOR,
698
668
  };
699
669
  }
700
670
  function getSmartSessionEmissaryAddress(useDevContracts) {
701
671
  return useDevContracts === true
702
- ? core_1.SMART_SESSION_EMISSARY_ADDRESS_DEV
703
- : core_1.SMART_SESSION_EMISSARY_ADDRESS;
672
+ ? SMART_SESSION_EMISSARY_ADDRESS_DEV
673
+ : SMART_SESSION_EMISSARY_ADDRESS;
704
674
  }
705
675
  /**
706
676
  * Builds a mockSignature for SSX validation gas estimation.
@@ -726,7 +696,7 @@ function buildMockSignature(session, useDevContracts, chainCount = 1, targetChai
726
696
  // mock emissary, so sessionDigest can be zeroHash throughout.
727
697
  const hashesAndChainIds = Array.from({ length: safeChainCount }, (_, i) => ({
728
698
  chainId: i === 0 ? BigInt(primaryChainId) : 0n,
729
- sessionDigest: viem_1.zeroHash,
699
+ sessionDigest: zeroHash,
730
700
  }));
731
701
  const dummySigners = {
732
702
  type: 'experimental_session',
@@ -740,8 +710,9 @@ function buildMockSignature(session, useDevContracts, chainCount = 1, targetChai
740
710
  };
741
711
  const dummyValidatorSignature = `0x${'00'.repeat(65)}`;
742
712
  const sigData = packSignature(dummySigners, dummyValidatorSignature);
743
- return (0, viem_1.concat)([emissaryAddress, sigData]);
713
+ return concat([emissaryAddress, sigData]);
744
714
  }
745
715
  function createFixedArray(length, getValue) {
746
716
  return Array.from({ length }, (_, i) => getValue(i));
747
717
  }
718
+ export { SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, SMART_SESSIONS_FALLBACK_TARGET_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG_PERMITTED_TO_CALL_SMARTSESSION, DUMMY_PRECLAIMOP_TARGET, DUMMY_PRECLAIMOP_SELECTOR, SPENDING_LIMITS_POLICY_ADDRESS, TIME_FRAME_POLICY_ADDRESS, SUDO_POLICY_ADDRESS, UNIVERSAL_ACTION_POLICY_ADDRESS, USAGE_LIMIT_POLICY_ADDRESS, VALUE_LIMIT_POLICY_ADDRESS, INTENT_EXECUTION_POLICY_ADDRESS, packSignature, getSessionData, getPolicyData, getEnableSessionCall, getPermissionId, getSmartSessionValidator, getSessionDetails, isSessionEnabled, signEnableSession, buildMockSignature, };
@@ -0,0 +1,7 @@
1
+ type Caip2ChainId = `eip155:${number}`;
2
+ declare function toCaip2(chainId: number): Caip2ChainId;
3
+ declare function fromCaip2(chainId: string): number;
4
+ declare function isCaip2(chainId: string): chainId is Caip2ChainId;
5
+ export type { Caip2ChainId };
6
+ export { fromCaip2, isCaip2, toCaip2 };
7
+ //# sourceMappingURL=caip2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caip2.d.ts","sourceRoot":"","sources":["../../../orchestrator/caip2.ts"],"names":[],"mappings":"AAAA,KAAK,YAAY,GAAG,UAAU,MAAM,EAAE,CAAA;AAItC,iBAAS,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAK9C;AAED,iBAAS,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAK1C;AAED,iBAAS,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,YAAY,CAEzD;AAED,YAAY,EAAE,YAAY,EAAE,CAAA;AAC5B,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA"}
@@ -0,0 +1,17 @@
1
+ const EIP155_CAIP2_REGEX = /^eip155:\d+$/;
2
+ function toCaip2(chainId) {
3
+ if (!Number.isInteger(chainId) || chainId < 0) {
4
+ throw new Error(`Invalid EVM chain id: ${chainId}`);
5
+ }
6
+ return `eip155:${chainId}`;
7
+ }
8
+ function fromCaip2(chainId) {
9
+ if (!EIP155_CAIP2_REGEX.test(chainId)) {
10
+ throw new Error(`Invalid CAIP-2 chain id: ${chainId}`);
11
+ }
12
+ return Number(chainId.slice('eip155:'.length));
13
+ }
14
+ function isCaip2(chainId) {
15
+ return EIP155_CAIP2_REGEX.test(chainId);
16
+ }
17
+ export { fromCaip2, isCaip2, toCaip2 };
@@ -1,28 +1,28 @@
1
1
  import type { Address } from 'viem';
2
- import type { AuthProvider } from '../auth/provider';
3
- import type { IntentInput, IntentOpStatus, IntentResult, IntentRoute, Portfolio, SignedIntentOp, SplitIntentsInput, SplitIntentsResult } from './types';
2
+ import type { AuthProvider } from '../auth/provider.js';
3
+ import type { IntentInput, IntentOpStatus, IntentSubmitRequestInternal, IntentSubmitResponse, Portfolio, QuoteResponse, SplitIntentsInput, SplitIntentsResult } from './types.js';
4
+ interface PolicyContext {
5
+ intentInput: unknown;
6
+ isSponsored: boolean;
7
+ }
4
8
  export declare class Orchestrator {
5
9
  private serverUrl;
6
10
  private authProvider;
7
11
  private extraHeaders?;
8
12
  constructor(serverUrl: string, authProvider: AuthProvider, headers?: Record<string, string>);
9
- getPortfolio(userAddress: Address, filter?: {
13
+ getPortfolio(accountAddress: Address, filter?: {
10
14
  chainIds?: number[];
11
15
  tokens?: {
12
16
  [chainId: number]: Address[];
13
17
  };
14
18
  }): Promise<Portfolio>;
15
- getIntentRoute(input: IntentInput): Promise<IntentRoute>;
16
- splitIntents(input: SplitIntentsInput): Promise<SplitIntentsResult>;
17
- submitIntent(signedIntentOpUnformatted: SignedIntentOp, dryRun: boolean, policyContext?: {
18
- intentInput: unknown;
19
- isSponsored: boolean;
20
- }): Promise<IntentResult>;
21
- getIntentOpStatus(intentId: bigint): Promise<IntentOpStatus>;
19
+ createQuote(input: IntentInput): Promise<QuoteResponse>;
20
+ getSplit(input: SplitIntentsInput): Promise<SplitIntentsResult>;
21
+ createIntent(request: IntentSubmitRequestInternal, policyContext?: PolicyContext): Promise<IntentSubmitResponse>;
22
+ getIntent(intentId: string): Promise<IntentOpStatus>;
22
23
  private getHeaders;
23
24
  private getSubmitHeaders;
24
25
  private fetch;
25
- private parseError;
26
- private parseErrorMessage;
27
26
  }
27
+ export {};
28
28
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../orchestrator/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AA2BpD,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,YAAY,EACZ,WAAW,EACX,SAAS,EAET,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,SAAS,CAAA;AAchB,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,YAAY,CAAC,CAAwB;gBAG3C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,YAAY,EAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAO5B,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;IA+Cf,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IASxD,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAwDnE,YAAY,CAChB,yBAAyB,EAAE,cAAc,EACzC,MAAM,EAAE,OAAO,EACf,aAAa,CAAC,EAAE;QAAE,WAAW,EAAE,OAAO,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE,GAC7D,OAAO,CAAC,YAAY,CAAC;IAqBlB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;YASpD,UAAU;YAWV,gBAAgB;YAgBhB,KAAK;IA4BnB,OAAO,CAAC,UAAU;IA6GlB,OAAO,CAAC,iBAAiB;CAmG1B"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../orchestrator/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAQpD,OAAO,KAAK,EAKV,WAAW,EACX,cAAc,EAEd,2BAA2B,EAC3B,oBAAoB,EACpB,SAAS,EAET,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAEnB,MAAM,SAAS,CAAA;AAGhB,UAAU,aAAa;IACrB,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,YAAY,CAAC,CAAwB;gBAG3C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,YAAY,EAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAO5B,YAAY,CAChB,cAAc,EAAE,OAAO,EACvB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;QACnB,MAAM,CAAC,EAAE;YAAE,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;SAAE,CAAA;KAC1C,GACA,OAAO,CAAC,SAAS,CAAC;IA0Cf,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAUvD,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkB/D,YAAY,CAChB,OAAO,EAAE,2BAA2B,EACpC,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,oBAAoB,CAAC;IAe1B,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;YAoB5C,UAAU;YAWV,gBAAgB;YAiBhB,KAAK;CAwBpB"}