@metamask/smart-accounts-kit 1.3.0 → 1.5.0

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 (61) hide show
  1. package/CHANGELOG.md +20 -1
  2. package/dist/actions/index.cjs +8 -4
  3. package/dist/actions/index.cjs.map +1 -1
  4. package/dist/actions/index.d.cts +4 -2
  5. package/dist/actions/index.d.ts +4 -2
  6. package/dist/actions/index.mjs +7 -3
  7. package/dist/{caveats-Cey0wm33.d.cts → caveats-CaSt_VHs.d.cts} +1 -1
  8. package/dist/{caveats-CQbtzOKm.d.ts → caveats-DQ6HoAHe.d.ts} +1 -1
  9. package/dist/{chunk-GZ7HHI2D.cjs → chunk-7FYDQNJ3.cjs} +12 -12
  10. package/dist/{chunk-GZ7HHI2D.cjs.map → chunk-7FYDQNJ3.cjs.map} +1 -1
  11. package/dist/{chunk-FKI4OME5.mjs → chunk-BGOSYTKV.mjs} +254 -60
  12. package/dist/chunk-BGOSYTKV.mjs.map +1 -0
  13. package/dist/{chunk-57I2FJY7.cjs → chunk-DN4O5VOP.cjs} +102 -102
  14. package/dist/{chunk-57I2FJY7.cjs.map → chunk-DN4O5VOP.cjs.map} +1 -1
  15. package/dist/{chunk-DLCTHNAE.cjs → chunk-FH6HZCHI.cjs} +11 -11
  16. package/dist/{chunk-DLCTHNAE.cjs.map → chunk-FH6HZCHI.cjs.map} +1 -1
  17. package/dist/{chunk-SZOX7K2V.cjs → chunk-IBZSNB7D.cjs} +81 -33
  18. package/dist/chunk-IBZSNB7D.cjs.map +1 -0
  19. package/dist/{chunk-Z4D7ZWVB.mjs → chunk-MV2KHN75.mjs} +84 -36
  20. package/dist/chunk-MV2KHN75.mjs.map +1 -0
  21. package/dist/{chunk-AC2BQSYP.mjs → chunk-N66VAWMO.mjs} +2 -2
  22. package/dist/{chunk-3PBVHNYP.cjs → chunk-SCS3CFRE.cjs} +10 -10
  23. package/dist/{chunk-3PBVHNYP.cjs.map → chunk-SCS3CFRE.cjs.map} +1 -1
  24. package/dist/{chunk-26PADMXR.mjs → chunk-TBHT26BV.mjs} +4 -4
  25. package/dist/{chunk-KBSFVKUB.mjs → chunk-W7O2UQL5.mjs} +2 -2
  26. package/dist/{chunk-AJWMPR7X.cjs → chunk-XEOE25DE.cjs} +298 -104
  27. package/dist/chunk-XEOE25DE.cjs.map +1 -0
  28. package/dist/{chunk-LQXOM3TA.mjs → chunk-YXHUT56Z.mjs} +3 -3
  29. package/dist/contracts/index.cjs +5 -5
  30. package/dist/contracts/index.d.cts +3 -2
  31. package/dist/contracts/index.d.ts +3 -2
  32. package/dist/contracts/index.mjs +4 -4
  33. package/dist/delegation-BKkEyxZY.d.cts +64 -0
  34. package/dist/delegation-DbPGWKfP.d.ts +64 -0
  35. package/dist/experimental/index.cjs +7 -7
  36. package/dist/experimental/index.mjs +1 -1
  37. package/dist/{index-D2THBlfm.d.ts → index-DXdlz7t4.d.ts} +2 -1
  38. package/dist/{index-BDC55AA9.d.cts → index-DfDAuvr5.d.cts} +58 -5
  39. package/dist/{index-DhG2lH80.d.ts → index-G78z6nwi.d.ts} +58 -5
  40. package/dist/{index-DE87r5KY.d.cts → index-yU3olCJV.d.cts} +2 -1
  41. package/dist/index.cjs +22 -20
  42. package/dist/index.cjs.map +1 -1
  43. package/dist/index.d.cts +7 -6
  44. package/dist/index.d.ts +7 -6
  45. package/dist/index.mjs +9 -7
  46. package/dist/index.mjs.map +1 -1
  47. package/dist/{delegation-Bx4FEAIU.d.ts → resolveCaveats-DiqGB-T5.d.cts} +4 -57
  48. package/dist/{delegation-KbWHzRxV.d.cts → resolveCaveats-s2snaFEo.d.ts} +4 -57
  49. package/dist/utils/index.cjs +4 -4
  50. package/dist/utils/index.d.cts +3 -2
  51. package/dist/utils/index.d.ts +3 -2
  52. package/dist/utils/index.mjs +3 -3
  53. package/package.json +4 -4
  54. package/dist/chunk-AJWMPR7X.cjs.map +0 -1
  55. package/dist/chunk-FKI4OME5.mjs.map +0 -1
  56. package/dist/chunk-SZOX7K2V.cjs.map +0 -1
  57. package/dist/chunk-Z4D7ZWVB.mjs.map +0 -1
  58. /package/dist/{chunk-AC2BQSYP.mjs.map → chunk-N66VAWMO.mjs.map} +0 -0
  59. /package/dist/{chunk-26PADMXR.mjs.map → chunk-TBHT26BV.mjs.map} +0 -0
  60. /package/dist/{chunk-KBSFVKUB.mjs.map → chunk-W7O2UQL5.mjs.map} +0 -0
  61. /package/dist/{chunk-LQXOM3TA.mjs.map → chunk-YXHUT56Z.mjs.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/smart-accounts-kit/smart-accounts-kit/packages/smart-accounts-kit/dist/chunk-DLCTHNAE.cjs","../src/DelegationFramework/utils.ts","../src/DelegationFramework/DeleGatorCore/read.ts","../src/DelegationFramework/DeleGatorCore/methods/getDelegationManager.ts","../src/DelegationFramework/DeleGatorCore/methods/getDeposit.ts","../src/DelegationFramework/DeleGatorCore/methods/getEntryPoint.ts","../src/DelegationFramework/DeleGatorCore/methods/getNonce.ts","../src/DelegationFramework/DeleGatorCore/methods/getProxyImplementation.ts","../src/DelegationFramework/DeleGatorCore/methods/getProxyVersion.ts","../src/DelegationFramework/DeleGatorCore/methods/isValidSignature.ts","../src/DelegationFramework/HybridDeleGator/methods/initialize.ts","../src/DelegationFramework/HybridDeleGator/encode.ts","../src/DelegationFramework/HybridDeleGator/methods/addKey.ts","../src/DelegationFramework/HybridDeleGator/methods/reinitialize.ts","../src/DelegationFramework/HybridDeleGator/methods/removeKey.ts","../src/DelegationFramework/HybridDeleGator/methods/updateSigners.ts","../src/DelegationFramework/MultiSigDeleGator/methods/initialize.ts","../src/DelegationFramework/MultiSigDeleGator/encode.ts","../src/DelegationFramework/MultiSigDeleGator/methods/addSigner.ts","../src/DelegationFramework/MultiSigDeleGator/methods/reinitialize.ts","../src/DelegationFramework/MultiSigDeleGator/methods/removeSigner.ts","../src/DelegationFramework/MultiSigDeleGator/methods/replaceSigner.ts","../src/DelegationFramework/MultiSigDeleGator/methods/updateMultiSigParameters.ts","../src/DelegationFramework/MultiSigDeleGator/methods/updateThreshold.ts","../src/DelegationFramework/SimpleFactory/methods/create2Deploy.ts","../src/DelegationFramework/SimpleFactory/encode.ts","../src/DelegationFramework/DeleGatorCore/methods/execute.ts","../src/DelegationFramework/DeleGatorCore/methods/executeWithMode.ts","../src/DelegationFramework/DeleGatorCore/encode.ts","../src/DelegationFramework/DeleGatorCore/methods/disableDelegation.ts","../src/DelegationFramework/DeleGatorCore/methods/enableDelegation.ts","../src/DelegationFramework/DeleGatorCore/methods/upgradeToAndCall.ts"],"names":["read","readContract","DeleGatorCore","encode","encodeFunctionData","simulate","simulateContract","HybridDeleGator","encode_exports","MultiSigDeleGator","writeContract","execute"],"mappings":"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","file":"/home/runner/work/smart-accounts-kit/smart-accounts-kit/packages/smart-accounts-kit/dist/chunk-DLCTHNAE.cjs","sourcesContent":[null,"import { ERC1967Proxy } from '@metamask/delegation-abis';\nimport { ERC1967Proxy as ERC1967ProxyBytecode } from '@metamask/delegation-abis/bytecode';\nimport type { Address, Client, Hex } from 'viem';\nimport { encodeDeployData } from 'viem';\nimport { getCode } from 'viem/actions';\n\nimport { getProxyImplementation } from './DeleGatorCore/read';\n\n/**\n * Checks if a contract is deployed at the given address.\n *\n * @param options - The options for checking contract deployment.\n * @param options.client - The client to use for the query.\n * @param options.contractAddress - The address to check for contract deployment.\n * @returns A boolean indicating whether a contract is deployed at the address.\n * @description This function checks if there is actual bytecode at the provided contract address.\n */\nexport async function isContractDeployed({\n client,\n contractAddress,\n}: {\n client: Client;\n contractAddress: Address;\n}): Promise<boolean> {\n const code = await getCode(client, {\n address: contractAddress,\n });\n return Boolean(code) && code !== '0x';\n}\n\n/**\n * Checks if a proxy contract at the given address points to the expected implementation.\n *\n * @param options - The options for checking the implementation.\n * @param options.client - The client to use for the query.\n * @param options.contractAddress - The address of the proxy contract.\n * @param options.expectedImplementationAddress - The address that the implementation should match.\n * @returns A boolean indicating whether the implementation matches the expected one.\n * @description This function verifies both that the contract exists and that its implementation address matches.\n */\nexport async function isImplementationExpected({\n client,\n contractAddress,\n expectedImplementationAddress,\n}: {\n client: Client;\n contractAddress: Address;\n expectedImplementationAddress: Address;\n}): Promise<boolean> {\n if (!(await isContractDeployed({ client, contractAddress }))) {\n return false;\n }\n\n const implementationAddress = await getProxyImplementation({\n client,\n contractAddress,\n });\n\n return implementationAddress === expectedImplementationAddress;\n}\n\n/**\n * Encodes the \"creation code\" for an ERC1967Proxy contract that will be deployed via CREATE2 with the given implementation and initialization code.\n *\n * @param options - The options for encoding the proxy creation code.\n * @param options.implementationAddress - The address of the implementation contract for the proxy to use.\n * @param options.initcode - The calldata for the initialization function of the implementation contract.\n * @returns The encoded creation code for the proxy.\n * @description This function prepares the deployment bytecode for an ERC1967 proxy pointing to the given implementation.\n */\nexport const encodeProxyCreationCode = ({\n implementationAddress,\n initcode,\n}: {\n implementationAddress: Address;\n initcode: Hex;\n}): Hex =>\n encodeDeployData({\n abi: ERC1967Proxy,\n args: [implementationAddress, initcode],\n bytecode: ERC1967ProxyBytecode,\n });\n","import { read as getDelegationManager } from './methods/getDelegationManager';\nimport { read as getDeposit } from './methods/getDeposit';\nimport { read as getEntryPoint } from './methods/getEntryPoint';\nimport { read as getNonce } from './methods/getNonce';\nimport { read as getProxyImplementation } from './methods/getProxyImplementation';\nimport { read as getProxyVersion } from './methods/getProxyVersion';\nimport { read as isValidSignature } from './methods/isValidSignature';\n\nexport {\n getDelegationManager,\n getDeposit,\n getEntryPoint,\n getNonce,\n getProxyImplementation,\n getProxyVersion,\n isValidSignature,\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetDelegationManagerParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetDelegationManagerParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'delegationManager',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetDepositParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetDepositParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'getDeposit',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetEntryPointParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetEntryPointParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'entryPoint',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetNonceParameters = {\n client: Client;\n contractAddress: Address;\n key?: bigint;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n key,\n}: ReadGetNonceParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'getNonce',\n args: key ? [key] : undefined,\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetProxyImplementationParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetProxyImplementationParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'getImplementation',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetProxyVersionParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetProxyVersionParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'getInitializedVersion',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Hex, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type IsValidSignatureParameters = {\n client: Client;\n contractAddress: Address;\n hash: Hex;\n signature: Hex;\n};\n\nexport type EncodeIsValidSignatureParameters = {\n hash: Hex;\n signature: Hex;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n hash,\n signature,\n}: IsValidSignatureParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'isValidSignature',\n args: [hash, signature],\n });\n\nexport const encode = ({\n hash,\n signature,\n}: EncodeIsValidSignatureParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'isValidSignature',\n args: [hash, signature],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeInitializeParameters = {\n eoaOwner: Address;\n p256Owners: P256Owner[];\n};\n\nexport type SimulateInitializeParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport type ExecuteInitializeParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: SimulateInitializeParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'initialize',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: ExecuteInitializeParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n eoaOwner,\n p256Owners,\n}: EncodeInitializeParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'initialize',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n","import { encode as addKey } from './methods/addKey';\nimport { encode as initializeHybridDeleGator } from './methods/initialize';\nimport { encode as reinitializeHybridDeleGator } from './methods/reinitialize';\nimport { encode as removeKey } from './methods/removeKey';\nimport { encode as updateSigners } from './methods/updateSigners';\n\nexport {\n addKey,\n initializeHybridDeleGator,\n reinitializeHybridDeleGator,\n removeKey,\n updateSigners,\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeAddKeyParameters = {\n p256Owner: P256Owner;\n};\n\nexport type SimulateAddKeyParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeAddKeyParameters;\n\nexport type ExecuteAddKeyParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeAddKeyParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n p256Owner,\n}: SimulateAddKeyParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'addKey',\n args: [p256Owner.keyId, p256Owner.x, p256Owner.y],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n p256Owner,\n}: ExecuteAddKeyParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n p256Owner,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ p256Owner }: EncodeAddKeyParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'addKey',\n args: [p256Owner.keyId, p256Owner.x, p256Owner.y],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeReinitializeParameters = {\n version: number;\n eoaOwner: Address;\n p256Owners: P256Owner[];\n removeExistingP256Owners: boolean;\n};\n\nexport type SimulateReinitializeParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport type ExecuteReinitializeParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n}: SimulateReinitializeParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'reinitialize',\n args: [\n version,\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n removeExistingP256Owners,\n ],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n}: ExecuteReinitializeParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n}: EncodeReinitializeParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'reinitialize',\n args: [\n version,\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n removeExistingP256Owners,\n ],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeRemoveKeyParameters = {\n keyId: string;\n};\n\nexport type SimulateRemoveKeyParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeRemoveKeyParameters;\n\nexport type ExecuteRemoveKeyParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeRemoveKeyParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n keyId,\n}: SimulateRemoveKeyParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'removeKey',\n args: [keyId],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n keyId,\n}: ExecuteRemoveKeyParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n keyId,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ keyId }: EncodeRemoveKeyParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'removeKey',\n args: [keyId],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeUpdateSignersParameters = {\n eoaOwner: Address;\n p256Owners: P256Owner[];\n};\n\nexport type SimulateUpdateSignersParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeUpdateSignersParameters;\n\nexport type ExecuteUpdateSignersParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeUpdateSignersParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: SimulateUpdateSignersParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'updateSigners',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: ExecuteUpdateSignersParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n eoaOwner,\n p256Owners,\n}: EncodeUpdateSignersParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'updateSigners',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeInitializeParameters = {\n owners: Address[];\n threshold: bigint;\n};\n\nexport type SimulateInitializeParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport type ExecuteInitializeParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n}: SimulateInitializeParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'initialize',\n args: [owners, threshold],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n}: ExecuteInitializeParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ owners, threshold }: EncodeInitializeParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'initialize',\n args: [owners, threshold],\n });\n};\n","import { encode as addSigner } from './methods/addSigner';\nimport { encode as initializeMultiSigDeleGator } from './methods/initialize';\nimport { encode as reinitializeMultiSigDeleGator } from './methods/reinitialize';\nimport { encode as removeSigner } from './methods/removeSigner';\nimport { encode as replaceSigner } from './methods/replaceSigner';\nimport { encode as updateMultiSigParameters } from './methods/updateMultiSigParameters';\nimport { encode as updateThreshold } from './methods/updateThreshold';\n\nexport {\n addSigner,\n initializeMultiSigDeleGator,\n reinitializeMultiSigDeleGator,\n removeSigner,\n replaceSigner,\n updateThreshold,\n updateMultiSigParameters,\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeAddSignerParameters = {\n signer: Address;\n};\n\nexport type SimulateAddSignerParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeAddSignerParameters;\n\nexport type ExecuteAddSignerParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeAddSignerParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: SimulateAddSignerParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'addSigner',\n args: [signer],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: ExecuteAddSignerParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n signer,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ signer }: EncodeAddSignerParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'addSigner',\n args: [signer],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeReinitializeParameters = {\n version: bigint;\n owners: Address[];\n threshold: bigint;\n removeExistingOwners: boolean;\n};\n\nexport type SimulateReinitializeParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport type ExecuteReinitializeParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n version,\n owners,\n threshold,\n removeExistingOwners,\n}: SimulateReinitializeParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'reinitialize',\n args: [version, owners, threshold, removeExistingOwners],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n version,\n owners,\n threshold,\n removeExistingOwners,\n}: ExecuteReinitializeParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n version,\n owners,\n threshold,\n removeExistingOwners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n version,\n owners,\n threshold,\n removeExistingOwners,\n}: EncodeReinitializeParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'reinitialize',\n args: [version, owners, threshold, removeExistingOwners],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeRemoveSignerParameters = {\n signer: Address;\n};\n\nexport type SimulateRemoveSignerParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeRemoveSignerParameters;\n\nexport type ExecuteRemoveSignerParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeRemoveSignerParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: SimulateRemoveSignerParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'removeSigner',\n args: [signer],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: ExecuteRemoveSignerParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n signer,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ signer }: EncodeRemoveSignerParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'removeSigner',\n args: [signer],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeReplaceSignerParameters = {\n oldSigner: Address;\n newSigner: Address;\n};\n\nexport type SimulateReplaceSignerParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeReplaceSignerParameters;\n\nexport type ExecuteReplaceSignerParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeReplaceSignerParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n oldSigner,\n newSigner,\n}: SimulateReplaceSignerParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'replaceSigner',\n args: [oldSigner, newSigner],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n oldSigner,\n newSigner,\n}: ExecuteReplaceSignerParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n oldSigner,\n newSigner,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n oldSigner,\n newSigner,\n}: EncodeReplaceSignerParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'replaceSigner',\n args: [oldSigner, newSigner],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeUpdateMultiSigParametersParameters = {\n owners: Address[];\n threshold: bigint;\n removeExistingOwners: boolean;\n};\n\nexport type SimulateUpdateMultiSigParametersParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateMultiSigParametersParameters;\n\nexport type ExecuteUpdateMultiSigParametersParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateMultiSigParametersParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n removeExistingOwners,\n}: SimulateUpdateMultiSigParametersParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'updateMultiSigParameters',\n args: [owners, threshold, removeExistingOwners],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n removeExistingOwners,\n}: ExecuteUpdateMultiSigParametersParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n removeExistingOwners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n owners,\n threshold,\n removeExistingOwners,\n}: EncodeUpdateMultiSigParametersParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'updateMultiSigParameters',\n args: [owners, threshold, removeExistingOwners],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeUpdateThresholdParameters = {\n threshold: bigint;\n};\n\nexport type SimulateUpdateThresholdParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateThresholdParameters;\n\nexport type ExecuteUpdateThresholdParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateThresholdParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n threshold,\n}: SimulateUpdateThresholdParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'updateThreshold',\n args: [threshold],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n threshold,\n}: ExecuteUpdateThresholdParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n threshold,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ threshold }: EncodeUpdateThresholdParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'updateThreshold',\n args: [threshold],\n });\n};\n","import { SimpleFactory } from '@metamask/delegation-abis';\nimport type { Address, Hex, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateCreate2DeployParameters = {\n client: Client;\n factoryAddress: Address;\n creationCode: Hex;\n salt: Hex;\n};\n\nexport type ExecuteCreate2DeployParameters = {\n client: InitializedClient;\n factoryAddress: Address;\n creationCode: Hex;\n salt: Hex;\n};\n\nexport const simulate = async ({\n client,\n factoryAddress,\n creationCode,\n salt,\n}: SimulateCreate2DeployParameters) => {\n return simulateContract(client, {\n address: factoryAddress,\n abi: SimpleFactory,\n functionName: 'deploy',\n args: [creationCode, salt],\n });\n};\n\nexport const encode = (creationCode: Hex, salt: Hex) => {\n return encodeFunctionData({\n abi: SimpleFactory,\n functionName: 'deploy',\n args: [creationCode, salt],\n });\n};\n\nexport const execute = async ({\n client,\n factoryAddress,\n creationCode,\n salt,\n}: ExecuteCreate2DeployParameters) => {\n const { request } = await simulate({\n client,\n factoryAddress,\n creationCode,\n salt,\n });\n return writeContract(client, request);\n};\n","import { encode as create2Deploy } from './methods/create2Deploy';\n\nexport { create2Deploy };\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { ExecutionStruct } from '../../../executions';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateExecuteParameters = {\n client: Client;\n contractAddress: Address;\n execution: ExecutionStruct;\n};\n\nexport type EncodeExecuteParameters = {\n execution: ExecutionStruct;\n};\n\nexport type ExecuteExecuteParameters = {\n client: InitializedClient;\n contractAddress: Address;\n execution: ExecutionStruct;\n};\n\nexport const simulate = async ({\n client,\n contractAddress,\n execution,\n}: SimulateExecuteParameters) => {\n return simulateContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'execute',\n args: [execution],\n });\n};\n\nexport const execute = async ({\n client,\n contractAddress,\n execution,\n}: ExecuteExecuteParameters) => {\n const { request } = await simulate({\n client,\n contractAddress,\n execution,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ execution }: EncodeExecuteParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'execute',\n args: [execution],\n });\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport { encodeFunctionData } from 'viem';\nimport type { Address, Client } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport { encodeExecutionCalldata } from '../../../executions';\nimport type { ExecutionStruct, ExecutionMode } from '../../../executions';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateExecuteWithModeParameters = {\n client: Client;\n contractAddress: Address;\n} & EncodeExecuteWithModeParameters;\nexport type EncodeExecuteWithModeParameters = {\n mode: ExecutionMode;\n executions: ExecutionStruct[];\n};\n\nexport type ExecuteExecuteWithModeParameters = {\n client: InitializedClient;\n contractAddress: Address;\n} & EncodeExecuteWithModeParameters;\n\nexport const simulate = async ({\n client,\n contractAddress,\n mode,\n executions,\n}: SimulateExecuteWithModeParameters) => {\n return simulateContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'execute',\n args: [mode, encodeExecutionCalldata(executions)],\n });\n};\n\nexport const execute = async ({\n client,\n contractAddress,\n mode,\n executions,\n}: ExecuteExecuteWithModeParameters) => {\n const { request } = await simulate({\n client,\n contractAddress,\n mode,\n executions,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n mode,\n executions,\n}: EncodeExecuteWithModeParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'execute',\n args: [mode, encodeExecutionCalldata(executions)],\n });\n};\n","import { encode as disableDelegation } from './methods/disableDelegation';\nimport { encode as enableDelegation } from './methods/enableDelegation';\nimport { encode as execute } from './methods/execute';\nimport { encode as executeWithMode } from './methods/executeWithMode';\nimport { encode as isValidSignature } from './methods/isValidSignature';\nimport { encode as upgradeToAndCall } from './methods/upgradeToAndCall';\n\nexport {\n disableDelegation,\n enableDelegation,\n execute,\n executeWithMode,\n upgradeToAndCall,\n isValidSignature,\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport { encodeFunctionData } from 'viem';\nimport type { Address, Client } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport { toDelegationStruct } from '../../../delegation';\nimport type { Delegation } from '../../../types';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateDisableDelegationParameters = {\n client: Client;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport type EncodeDisableDelegationParameters = {\n delegation: Delegation;\n};\n\nexport type ExecuteDisableDelegationParameters = {\n client: InitializedClient;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport const simulate = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: SimulateDisableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return simulateContract(client, {\n address: delegationManagerAddress,\n abi: DeleGatorCore,\n functionName: 'disableDelegation',\n args: [delegationStruct],\n });\n};\n\nexport const execute = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: ExecuteDisableDelegationParameters) => {\n const { request } = await simulate({\n client,\n delegationManagerAddress,\n delegation,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ delegation }: EncodeDisableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'disableDelegation',\n args: [delegationStruct],\n });\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport { encodeFunctionData } from 'viem';\nimport type { Address, Client } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport { toDelegationStruct } from '../../../delegation';\nimport type { Delegation } from '../../../types';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateEnableDelegationParameters = {\n client: Client;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport type EncodeEnableDelegationParameters = {\n delegation: Delegation;\n};\n\nexport type ExecuteEnableDelegationParameters = {\n client: InitializedClient;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport const simulate = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: SimulateEnableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return simulateContract(client, {\n address: delegationManagerAddress,\n abi: DeleGatorCore,\n functionName: 'enableDelegation',\n args: [delegationStruct],\n });\n};\n\nexport const execute = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: ExecuteEnableDelegationParameters) => {\n const { request } = await simulate({\n client,\n delegationManagerAddress,\n delegation,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ delegation }: EncodeEnableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'enableDelegation',\n args: [delegationStruct],\n });\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Hex, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateUpgradeToAndCallParameters = {\n client: Client;\n contractAddress: Address;\n} & EncodeUpgradeToAndCallParameters;\n\nexport type EncodeUpgradeToAndCallParameters = {\n implementation: Address;\n data: Hex;\n};\n\nexport type ExecuteUpgradeToAndCallParameters = {\n client: InitializedClient;\n contractAddress: Address;\n} & EncodeUpgradeToAndCallParameters;\n\nexport const simulate = async ({\n client,\n contractAddress,\n implementation,\n data,\n}: SimulateUpgradeToAndCallParameters) => {\n return simulateContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'upgradeToAndCall',\n args: [implementation, data],\n });\n};\n\nexport const execute = async ({\n client,\n contractAddress,\n implementation,\n data,\n}: ExecuteUpgradeToAndCallParameters) => {\n const { request } = await simulate({\n client,\n contractAddress,\n implementation,\n data,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n implementation,\n data,\n}: EncodeUpgradeToAndCallParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'upgradeToAndCall',\n args: [implementation, data],\n });\n};\n"]}
1
+ {"version":3,"sources":["/home/runner/work/smart-accounts-kit/smart-accounts-kit/packages/smart-accounts-kit/dist/chunk-FH6HZCHI.cjs","../src/DelegationFramework/utils.ts","../src/DelegationFramework/DeleGatorCore/read.ts","../src/DelegationFramework/DeleGatorCore/methods/getDelegationManager.ts","../src/DelegationFramework/DeleGatorCore/methods/getDeposit.ts","../src/DelegationFramework/DeleGatorCore/methods/getEntryPoint.ts","../src/DelegationFramework/DeleGatorCore/methods/getNonce.ts","../src/DelegationFramework/DeleGatorCore/methods/getProxyImplementation.ts","../src/DelegationFramework/DeleGatorCore/methods/getProxyVersion.ts","../src/DelegationFramework/DeleGatorCore/methods/isValidSignature.ts","../src/DelegationFramework/HybridDeleGator/methods/initialize.ts","../src/DelegationFramework/HybridDeleGator/encode.ts","../src/DelegationFramework/HybridDeleGator/methods/addKey.ts","../src/DelegationFramework/HybridDeleGator/methods/reinitialize.ts","../src/DelegationFramework/HybridDeleGator/methods/removeKey.ts","../src/DelegationFramework/HybridDeleGator/methods/updateSigners.ts","../src/DelegationFramework/MultiSigDeleGator/methods/initialize.ts","../src/DelegationFramework/MultiSigDeleGator/encode.ts","../src/DelegationFramework/MultiSigDeleGator/methods/addSigner.ts","../src/DelegationFramework/MultiSigDeleGator/methods/reinitialize.ts","../src/DelegationFramework/MultiSigDeleGator/methods/removeSigner.ts","../src/DelegationFramework/MultiSigDeleGator/methods/replaceSigner.ts","../src/DelegationFramework/MultiSigDeleGator/methods/updateMultiSigParameters.ts","../src/DelegationFramework/MultiSigDeleGator/methods/updateThreshold.ts","../src/DelegationFramework/SimpleFactory/methods/create2Deploy.ts","../src/DelegationFramework/SimpleFactory/encode.ts","../src/DelegationFramework/DeleGatorCore/methods/execute.ts","../src/DelegationFramework/DeleGatorCore/methods/executeWithMode.ts","../src/DelegationFramework/DeleGatorCore/encode.ts","../src/DelegationFramework/DeleGatorCore/methods/disableDelegation.ts","../src/DelegationFramework/DeleGatorCore/methods/enableDelegation.ts","../src/DelegationFramework/DeleGatorCore/methods/upgradeToAndCall.ts"],"names":["read","readContract","DeleGatorCore","encode","encodeFunctionData","simulate","simulateContract","HybridDeleGator","encode_exports","MultiSigDeleGator","writeContract","execute"],"mappings":"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","file":"/home/runner/work/smart-accounts-kit/smart-accounts-kit/packages/smart-accounts-kit/dist/chunk-FH6HZCHI.cjs","sourcesContent":[null,"import { ERC1967Proxy } from '@metamask/delegation-abis';\nimport { ERC1967Proxy as ERC1967ProxyBytecode } from '@metamask/delegation-abis/bytecode';\nimport type { Address, Client, Hex } from 'viem';\nimport { encodeDeployData } from 'viem';\nimport { getCode } from 'viem/actions';\n\nimport { getProxyImplementation } from './DeleGatorCore/read';\n\n/**\n * Checks if a contract is deployed at the given address.\n *\n * @param options - The options for checking contract deployment.\n * @param options.client - The client to use for the query.\n * @param options.contractAddress - The address to check for contract deployment.\n * @returns A boolean indicating whether a contract is deployed at the address.\n * @description This function checks if there is actual bytecode at the provided contract address.\n */\nexport async function isContractDeployed({\n client,\n contractAddress,\n}: {\n client: Client;\n contractAddress: Address;\n}): Promise<boolean> {\n const code = await getCode(client, {\n address: contractAddress,\n });\n return Boolean(code) && code !== '0x';\n}\n\n/**\n * Checks if a proxy contract at the given address points to the expected implementation.\n *\n * @param options - The options for checking the implementation.\n * @param options.client - The client to use for the query.\n * @param options.contractAddress - The address of the proxy contract.\n * @param options.expectedImplementationAddress - The address that the implementation should match.\n * @returns A boolean indicating whether the implementation matches the expected one.\n * @description This function verifies both that the contract exists and that its implementation address matches.\n */\nexport async function isImplementationExpected({\n client,\n contractAddress,\n expectedImplementationAddress,\n}: {\n client: Client;\n contractAddress: Address;\n expectedImplementationAddress: Address;\n}): Promise<boolean> {\n if (!(await isContractDeployed({ client, contractAddress }))) {\n return false;\n }\n\n const implementationAddress = await getProxyImplementation({\n client,\n contractAddress,\n });\n\n return implementationAddress === expectedImplementationAddress;\n}\n\n/**\n * Encodes the \"creation code\" for an ERC1967Proxy contract that will be deployed via CREATE2 with the given implementation and initialization code.\n *\n * @param options - The options for encoding the proxy creation code.\n * @param options.implementationAddress - The address of the implementation contract for the proxy to use.\n * @param options.initcode - The calldata for the initialization function of the implementation contract.\n * @returns The encoded creation code for the proxy.\n * @description This function prepares the deployment bytecode for an ERC1967 proxy pointing to the given implementation.\n */\nexport const encodeProxyCreationCode = ({\n implementationAddress,\n initcode,\n}: {\n implementationAddress: Address;\n initcode: Hex;\n}): Hex =>\n encodeDeployData({\n abi: ERC1967Proxy,\n args: [implementationAddress, initcode],\n bytecode: ERC1967ProxyBytecode,\n });\n","import { read as getDelegationManager } from './methods/getDelegationManager';\nimport { read as getDeposit } from './methods/getDeposit';\nimport { read as getEntryPoint } from './methods/getEntryPoint';\nimport { read as getNonce } from './methods/getNonce';\nimport { read as getProxyImplementation } from './methods/getProxyImplementation';\nimport { read as getProxyVersion } from './methods/getProxyVersion';\nimport { read as isValidSignature } from './methods/isValidSignature';\n\nexport {\n getDelegationManager,\n getDeposit,\n getEntryPoint,\n getNonce,\n getProxyImplementation,\n getProxyVersion,\n isValidSignature,\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetDelegationManagerParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetDelegationManagerParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'delegationManager',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetDepositParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetDepositParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'getDeposit',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetEntryPointParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetEntryPointParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'entryPoint',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetNonceParameters = {\n client: Client;\n contractAddress: Address;\n key?: bigint;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n key,\n}: ReadGetNonceParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'getNonce',\n args: key ? [key] : undefined,\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetProxyImplementationParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetProxyImplementationParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'getImplementation',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetProxyVersionParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetProxyVersionParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'getInitializedVersion',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Hex, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type IsValidSignatureParameters = {\n client: Client;\n contractAddress: Address;\n hash: Hex;\n signature: Hex;\n};\n\nexport type EncodeIsValidSignatureParameters = {\n hash: Hex;\n signature: Hex;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n hash,\n signature,\n}: IsValidSignatureParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'isValidSignature',\n args: [hash, signature],\n });\n\nexport const encode = ({\n hash,\n signature,\n}: EncodeIsValidSignatureParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'isValidSignature',\n args: [hash, signature],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeInitializeParameters = {\n eoaOwner: Address;\n p256Owners: P256Owner[];\n};\n\nexport type SimulateInitializeParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport type ExecuteInitializeParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: SimulateInitializeParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'initialize',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: ExecuteInitializeParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n eoaOwner,\n p256Owners,\n}: EncodeInitializeParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'initialize',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n","import { encode as addKey } from './methods/addKey';\nimport { encode as initializeHybridDeleGator } from './methods/initialize';\nimport { encode as reinitializeHybridDeleGator } from './methods/reinitialize';\nimport { encode as removeKey } from './methods/removeKey';\nimport { encode as updateSigners } from './methods/updateSigners';\n\nexport {\n addKey,\n initializeHybridDeleGator,\n reinitializeHybridDeleGator,\n removeKey,\n updateSigners,\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeAddKeyParameters = {\n p256Owner: P256Owner;\n};\n\nexport type SimulateAddKeyParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeAddKeyParameters;\n\nexport type ExecuteAddKeyParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeAddKeyParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n p256Owner,\n}: SimulateAddKeyParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'addKey',\n args: [p256Owner.keyId, p256Owner.x, p256Owner.y],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n p256Owner,\n}: ExecuteAddKeyParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n p256Owner,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ p256Owner }: EncodeAddKeyParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'addKey',\n args: [p256Owner.keyId, p256Owner.x, p256Owner.y],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeReinitializeParameters = {\n version: number;\n eoaOwner: Address;\n p256Owners: P256Owner[];\n removeExistingP256Owners: boolean;\n};\n\nexport type SimulateReinitializeParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport type ExecuteReinitializeParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n}: SimulateReinitializeParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'reinitialize',\n args: [\n version,\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n removeExistingP256Owners,\n ],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n}: ExecuteReinitializeParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n}: EncodeReinitializeParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'reinitialize',\n args: [\n version,\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n removeExistingP256Owners,\n ],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeRemoveKeyParameters = {\n keyId: string;\n};\n\nexport type SimulateRemoveKeyParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeRemoveKeyParameters;\n\nexport type ExecuteRemoveKeyParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeRemoveKeyParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n keyId,\n}: SimulateRemoveKeyParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'removeKey',\n args: [keyId],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n keyId,\n}: ExecuteRemoveKeyParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n keyId,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ keyId }: EncodeRemoveKeyParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'removeKey',\n args: [keyId],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeUpdateSignersParameters = {\n eoaOwner: Address;\n p256Owners: P256Owner[];\n};\n\nexport type SimulateUpdateSignersParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeUpdateSignersParameters;\n\nexport type ExecuteUpdateSignersParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeUpdateSignersParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: SimulateUpdateSignersParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator,\n functionName: 'updateSigners',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: ExecuteUpdateSignersParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n eoaOwner,\n p256Owners,\n}: EncodeUpdateSignersParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator,\n functionName: 'updateSigners',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeInitializeParameters = {\n owners: Address[];\n threshold: bigint;\n};\n\nexport type SimulateInitializeParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport type ExecuteInitializeParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n}: SimulateInitializeParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'initialize',\n args: [owners, threshold],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n}: ExecuteInitializeParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ owners, threshold }: EncodeInitializeParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'initialize',\n args: [owners, threshold],\n });\n};\n","import { encode as addSigner } from './methods/addSigner';\nimport { encode as initializeMultiSigDeleGator } from './methods/initialize';\nimport { encode as reinitializeMultiSigDeleGator } from './methods/reinitialize';\nimport { encode as removeSigner } from './methods/removeSigner';\nimport { encode as replaceSigner } from './methods/replaceSigner';\nimport { encode as updateMultiSigParameters } from './methods/updateMultiSigParameters';\nimport { encode as updateThreshold } from './methods/updateThreshold';\n\nexport {\n addSigner,\n initializeMultiSigDeleGator,\n reinitializeMultiSigDeleGator,\n removeSigner,\n replaceSigner,\n updateThreshold,\n updateMultiSigParameters,\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeAddSignerParameters = {\n signer: Address;\n};\n\nexport type SimulateAddSignerParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeAddSignerParameters;\n\nexport type ExecuteAddSignerParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeAddSignerParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: SimulateAddSignerParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'addSigner',\n args: [signer],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: ExecuteAddSignerParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n signer,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ signer }: EncodeAddSignerParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'addSigner',\n args: [signer],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeReinitializeParameters = {\n version: bigint;\n owners: Address[];\n threshold: bigint;\n removeExistingOwners: boolean;\n};\n\nexport type SimulateReinitializeParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport type ExecuteReinitializeParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n version,\n owners,\n threshold,\n removeExistingOwners,\n}: SimulateReinitializeParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'reinitialize',\n args: [version, owners, threshold, removeExistingOwners],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n version,\n owners,\n threshold,\n removeExistingOwners,\n}: ExecuteReinitializeParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n version,\n owners,\n threshold,\n removeExistingOwners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n version,\n owners,\n threshold,\n removeExistingOwners,\n}: EncodeReinitializeParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'reinitialize',\n args: [version, owners, threshold, removeExistingOwners],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeRemoveSignerParameters = {\n signer: Address;\n};\n\nexport type SimulateRemoveSignerParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeRemoveSignerParameters;\n\nexport type ExecuteRemoveSignerParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeRemoveSignerParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: SimulateRemoveSignerParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'removeSigner',\n args: [signer],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: ExecuteRemoveSignerParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n signer,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ signer }: EncodeRemoveSignerParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'removeSigner',\n args: [signer],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeReplaceSignerParameters = {\n oldSigner: Address;\n newSigner: Address;\n};\n\nexport type SimulateReplaceSignerParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeReplaceSignerParameters;\n\nexport type ExecuteReplaceSignerParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeReplaceSignerParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n oldSigner,\n newSigner,\n}: SimulateReplaceSignerParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'replaceSigner',\n args: [oldSigner, newSigner],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n oldSigner,\n newSigner,\n}: ExecuteReplaceSignerParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n oldSigner,\n newSigner,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n oldSigner,\n newSigner,\n}: EncodeReplaceSignerParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'replaceSigner',\n args: [oldSigner, newSigner],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeUpdateMultiSigParametersParameters = {\n owners: Address[];\n threshold: bigint;\n removeExistingOwners: boolean;\n};\n\nexport type SimulateUpdateMultiSigParametersParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateMultiSigParametersParameters;\n\nexport type ExecuteUpdateMultiSigParametersParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateMultiSigParametersParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n removeExistingOwners,\n}: SimulateUpdateMultiSigParametersParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'updateMultiSigParameters',\n args: [owners, threshold, removeExistingOwners],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n removeExistingOwners,\n}: ExecuteUpdateMultiSigParametersParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n removeExistingOwners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n owners,\n threshold,\n removeExistingOwners,\n}: EncodeUpdateMultiSigParametersParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'updateMultiSigParameters',\n args: [owners, threshold, removeExistingOwners],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeUpdateThresholdParameters = {\n threshold: bigint;\n};\n\nexport type SimulateUpdateThresholdParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateThresholdParameters;\n\nexport type ExecuteUpdateThresholdParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateThresholdParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n threshold,\n}: SimulateUpdateThresholdParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator,\n functionName: 'updateThreshold',\n args: [threshold],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n threshold,\n}: ExecuteUpdateThresholdParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n threshold,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ threshold }: EncodeUpdateThresholdParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator,\n functionName: 'updateThreshold',\n args: [threshold],\n });\n};\n","import { SimpleFactory } from '@metamask/delegation-abis';\nimport type { Address, Hex, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateCreate2DeployParameters = {\n client: Client;\n factoryAddress: Address;\n creationCode: Hex;\n salt: Hex;\n};\n\nexport type ExecuteCreate2DeployParameters = {\n client: InitializedClient;\n factoryAddress: Address;\n creationCode: Hex;\n salt: Hex;\n};\n\nexport const simulate = async ({\n client,\n factoryAddress,\n creationCode,\n salt,\n}: SimulateCreate2DeployParameters) => {\n return simulateContract(client, {\n address: factoryAddress,\n abi: SimpleFactory,\n functionName: 'deploy',\n args: [creationCode, salt],\n });\n};\n\nexport const encode = (creationCode: Hex, salt: Hex) => {\n return encodeFunctionData({\n abi: SimpleFactory,\n functionName: 'deploy',\n args: [creationCode, salt],\n });\n};\n\nexport const execute = async ({\n client,\n factoryAddress,\n creationCode,\n salt,\n}: ExecuteCreate2DeployParameters) => {\n const { request } = await simulate({\n client,\n factoryAddress,\n creationCode,\n salt,\n });\n return writeContract(client, request);\n};\n","import { encode as create2Deploy } from './methods/create2Deploy';\n\nexport { create2Deploy };\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { ExecutionStruct } from '../../../executions';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateExecuteParameters = {\n client: Client;\n contractAddress: Address;\n execution: ExecutionStruct;\n};\n\nexport type EncodeExecuteParameters = {\n execution: ExecutionStruct;\n};\n\nexport type ExecuteExecuteParameters = {\n client: InitializedClient;\n contractAddress: Address;\n execution: ExecutionStruct;\n};\n\nexport const simulate = async ({\n client,\n contractAddress,\n execution,\n}: SimulateExecuteParameters) => {\n return simulateContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'execute',\n args: [execution],\n });\n};\n\nexport const execute = async ({\n client,\n contractAddress,\n execution,\n}: ExecuteExecuteParameters) => {\n const { request } = await simulate({\n client,\n contractAddress,\n execution,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ execution }: EncodeExecuteParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'execute',\n args: [execution],\n });\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport { encodeFunctionData } from 'viem';\nimport type { Address, Client } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport { encodeExecutionCalldata } from '../../../executions';\nimport type { ExecutionStruct, ExecutionMode } from '../../../executions';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateExecuteWithModeParameters = {\n client: Client;\n contractAddress: Address;\n} & EncodeExecuteWithModeParameters;\nexport type EncodeExecuteWithModeParameters = {\n mode: ExecutionMode;\n executions: ExecutionStruct[];\n};\n\nexport type ExecuteExecuteWithModeParameters = {\n client: InitializedClient;\n contractAddress: Address;\n} & EncodeExecuteWithModeParameters;\n\nexport const simulate = async ({\n client,\n contractAddress,\n mode,\n executions,\n}: SimulateExecuteWithModeParameters) => {\n return simulateContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'execute',\n args: [mode, encodeExecutionCalldata(executions)],\n });\n};\n\nexport const execute = async ({\n client,\n contractAddress,\n mode,\n executions,\n}: ExecuteExecuteWithModeParameters) => {\n const { request } = await simulate({\n client,\n contractAddress,\n mode,\n executions,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n mode,\n executions,\n}: EncodeExecuteWithModeParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'execute',\n args: [mode, encodeExecutionCalldata(executions)],\n });\n};\n","import { encode as disableDelegation } from './methods/disableDelegation';\nimport { encode as enableDelegation } from './methods/enableDelegation';\nimport { encode as execute } from './methods/execute';\nimport { encode as executeWithMode } from './methods/executeWithMode';\nimport { encode as isValidSignature } from './methods/isValidSignature';\nimport { encode as upgradeToAndCall } from './methods/upgradeToAndCall';\n\nexport {\n disableDelegation,\n enableDelegation,\n execute,\n executeWithMode,\n upgradeToAndCall,\n isValidSignature,\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport { encodeFunctionData } from 'viem';\nimport type { Address, Client } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport { toDelegationStruct } from '../../../delegation';\nimport type { Delegation } from '../../../types';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateDisableDelegationParameters = {\n client: Client;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport type EncodeDisableDelegationParameters = {\n delegation: Delegation;\n};\n\nexport type ExecuteDisableDelegationParameters = {\n client: InitializedClient;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport const simulate = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: SimulateDisableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return simulateContract(client, {\n address: delegationManagerAddress,\n abi: DeleGatorCore,\n functionName: 'disableDelegation',\n args: [delegationStruct],\n });\n};\n\nexport const execute = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: ExecuteDisableDelegationParameters) => {\n const { request } = await simulate({\n client,\n delegationManagerAddress,\n delegation,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ delegation }: EncodeDisableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'disableDelegation',\n args: [delegationStruct],\n });\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport { encodeFunctionData } from 'viem';\nimport type { Address, Client } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport { toDelegationStruct } from '../../../delegation';\nimport type { Delegation } from '../../../types';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateEnableDelegationParameters = {\n client: Client;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport type EncodeEnableDelegationParameters = {\n delegation: Delegation;\n};\n\nexport type ExecuteEnableDelegationParameters = {\n client: InitializedClient;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport const simulate = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: SimulateEnableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return simulateContract(client, {\n address: delegationManagerAddress,\n abi: DeleGatorCore,\n functionName: 'enableDelegation',\n args: [delegationStruct],\n });\n};\n\nexport const execute = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: ExecuteEnableDelegationParameters) => {\n const { request } = await simulate({\n client,\n delegationManagerAddress,\n delegation,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ delegation }: EncodeEnableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'enableDelegation',\n args: [delegationStruct],\n });\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Hex, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateUpgradeToAndCallParameters = {\n client: Client;\n contractAddress: Address;\n} & EncodeUpgradeToAndCallParameters;\n\nexport type EncodeUpgradeToAndCallParameters = {\n implementation: Address;\n data: Hex;\n};\n\nexport type ExecuteUpgradeToAndCallParameters = {\n client: InitializedClient;\n contractAddress: Address;\n} & EncodeUpgradeToAndCallParameters;\n\nexport const simulate = async ({\n client,\n contractAddress,\n implementation,\n data,\n}: SimulateUpgradeToAndCallParameters) => {\n return simulateContract(client, {\n address: contractAddress,\n abi: DeleGatorCore,\n functionName: 'upgradeToAndCall',\n args: [implementation, data],\n });\n};\n\nexport const execute = async ({\n client,\n contractAddress,\n implementation,\n data,\n}: ExecuteUpgradeToAndCallParameters) => {\n const { request } = await simulate({\n client,\n contractAddress,\n implementation,\n data,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n implementation,\n data,\n}: EncodeUpgradeToAndCallParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore,\n functionName: 'upgradeToAndCall',\n args: [implementation, data],\n });\n};\n"]}
@@ -135,13 +135,6 @@ var CaveatBuilder = class _CaveatBuilder {
135
135
  }
136
136
  };
137
137
 
138
- // src/caveatBuilder/types.ts
139
- var BalanceChangeType = /* @__PURE__ */ ((BalanceChangeType2) => {
140
- BalanceChangeType2[BalanceChangeType2["Increase"] = 0] = "Increase";
141
- BalanceChangeType2[BalanceChangeType2["Decrease"] = 1] = "Decrease";
142
- return BalanceChangeType2;
143
- })(BalanceChangeType || {});
144
-
145
138
  // src/caveatBuilder/allowedCalldataBuilder.ts
146
139
  var _delegationcore = require('@metamask/delegation-core');
147
140
  var allowedCalldata = "allowedCalldata";
@@ -320,6 +313,9 @@ var deployedBuilder = (environment, config) => {
320
313
  // src/caveatBuilder/erc1155BalanceChangeBuilder.ts
321
314
 
322
315
 
316
+
317
+
318
+
323
319
  var erc1155BalanceChange = "erc1155BalanceChange";
324
320
  var erc1155BalanceChangeBuilder = (environment, config) => {
325
321
  const { tokenAddress, recipient, tokenId, balance, changeType } = config;
@@ -335,7 +331,7 @@ var erc1155BalanceChangeBuilder = (environment, config) => {
335
331
  if (tokenId < 0n) {
336
332
  throw new Error("Invalid tokenId: must be a non-negative number");
337
333
  }
338
- if (changeType !== 0 /* Increase */ && changeType !== 1 /* Decrease */) {
334
+ if (changeType !== _delegationcore.BalanceChangeType.Increase && changeType !== _delegationcore.BalanceChangeType.Decrease) {
339
335
  throw new Error("Invalid changeType: must be either Increase or Decrease");
340
336
  }
341
337
  const terms = _delegationcore.createERC1155BalanceChangeTerms.call(void 0, {
@@ -361,6 +357,9 @@ var erc1155BalanceChangeBuilder = (environment, config) => {
361
357
  // src/caveatBuilder/erc20BalanceChangeBuilder.ts
362
358
 
363
359
 
360
+
361
+
362
+
364
363
  var erc20BalanceChange = "erc20BalanceChange";
365
364
  var erc20BalanceChangeBuilder = (environment, config) => {
366
365
  const { tokenAddress, recipient, balance, changeType } = config;
@@ -370,7 +369,7 @@ var erc20BalanceChangeBuilder = (environment, config) => {
370
369
  if (balance <= 0n) {
371
370
  throw new Error("Invalid balance: must be a positive number");
372
371
  }
373
- if (changeType !== 0 /* Increase */ && changeType !== 1 /* Decrease */) {
372
+ if (changeType !== _delegationcore.BalanceChangeType.Increase && changeType !== _delegationcore.BalanceChangeType.Decrease) {
374
373
  throw new Error("Invalid changeType: must be either Increase or Decrease");
375
374
  }
376
375
  const terms = _delegationcore.createERC20BalanceChangeTerms.call(void 0, {
@@ -470,6 +469,9 @@ var erc20TransferAmountBuilder = (environment, config) => {
470
469
  // src/caveatBuilder/erc721BalanceChangeBuilder.ts
471
470
 
472
471
 
472
+
473
+
474
+
473
475
  var erc721BalanceChange = "erc721BalanceChange";
474
476
  var erc721BalanceChangeBuilder = (environment, config) => {
475
477
  const { tokenAddress, recipient, amount, changeType } = config;
@@ -482,7 +484,7 @@ var erc721BalanceChangeBuilder = (environment, config) => {
482
484
  if (amount <= 0n) {
483
485
  throw new Error("Invalid balance: must be a positive number");
484
486
  }
485
- if (changeType !== 0 /* Increase */ && changeType !== 1 /* Decrease */) {
487
+ if (changeType !== _delegationcore.BalanceChangeType.Increase && changeType !== _delegationcore.BalanceChangeType.Decrease) {
486
488
  throw new Error("Invalid changeType: must be either Increase or Decrease");
487
489
  }
488
490
  const terms = _delegationcore.createERC721BalanceChangeTerms.call(void 0, {
@@ -752,6 +754,9 @@ var multiTokenPeriodBuilder = (environment, config) => {
752
754
  // src/caveatBuilder/nativeBalanceChangeBuilder.ts
753
755
 
754
756
 
757
+
758
+
759
+
755
760
  var nativeBalanceChange = "nativeBalanceChange";
756
761
  var nativeBalanceChangeBuilder = (environment, config) => {
757
762
  const { recipient, balance, changeType } = config;
@@ -761,7 +766,7 @@ var nativeBalanceChangeBuilder = (environment, config) => {
761
766
  if (balance <= 0n) {
762
767
  throw new Error("Invalid balance: must be a positive number");
763
768
  }
764
- if (changeType !== 0 /* Increase */ && changeType !== 1 /* Decrease */) {
769
+ if (changeType !== _delegationcore.BalanceChangeType.Increase && changeType !== _delegationcore.BalanceChangeType.Decrease) {
765
770
  throw new Error("Invalid changeType: must be either Increase or Decrease");
766
771
  }
767
772
  const terms = _delegationcore.createNativeBalanceChangeTerms.call(void 0, {
@@ -1327,9 +1332,15 @@ var createCaveatBuilderFromScope = (environment, scopeConfig) => {
1327
1332
  var resolveCaveats = ({
1328
1333
  environment,
1329
1334
  scope,
1330
- caveats
1335
+ caveats,
1336
+ isScopeOptional
1331
1337
  }) => {
1332
- const scopeCaveatBuilder = createCaveatBuilderFromScope(environment, scope);
1338
+ if (!scope && !isScopeOptional) {
1339
+ throw new Error("Scope is required");
1340
+ }
1341
+ const scopeCaveatBuilder = scope ? createCaveatBuilderFromScope(environment, scope) : createCaveatBuilder(environment, {
1342
+ allowInsecureUnrestrictedDelegation: true
1343
+ });
1333
1344
  if (caveats) {
1334
1345
  if ("build" in caveats && typeof caveats.build === "function") {
1335
1346
  caveats.build().forEach((caveat) => {
@@ -1688,7 +1699,7 @@ var Sender = class {
1688
1699
  };
1689
1700
 
1690
1701
  // package.json
1691
- var version = "1.3.0";
1702
+ var version = "1.5.0";
1692
1703
 
1693
1704
  // src/analytics/index.ts
1694
1705
  function isCompleteBase(value) {
@@ -1938,14 +1949,16 @@ var hashDelegation = (input) => {
1938
1949
  const delegationStruct = toDelegationStruct(input);
1939
1950
  return _delegationcore.hashDelegation.call(void 0, delegationStruct);
1940
1951
  };
1941
- var resolveAuthority = (parentDelegation) => {
1942
- if (!parentDelegation) {
1943
- return _delegationcore.ROOT_AUTHORITY;
1952
+ var extractLeafDelegation = (permissionContext) => {
1953
+ const delegations = decodeDelegations(permissionContext);
1954
+ if (delegations.length === 0) {
1955
+ throw new Error("Permission context must contain at least one delegation");
1944
1956
  }
1945
- if (typeof parentDelegation === "string") {
1946
- return parentDelegation;
1957
+ const leafDelegation = delegations[0];
1958
+ if (!leafDelegation) {
1959
+ throw new Error("Failed to extract leaf delegation");
1947
1960
  }
1948
- return hashDelegation(parentDelegation);
1961
+ return leafDelegation;
1949
1962
  };
1950
1963
  var getCaveatNames = ({
1951
1964
  caveats,
@@ -1965,11 +1978,47 @@ var getCaveatNames = ({
1965
1978
  }
1966
1979
  return [];
1967
1980
  };
1981
+ var resolveDelegationArgs = (options) => {
1982
+ const optionsHasParentPermissionContext = "parentPermissionContext" in options && options.parentPermissionContext;
1983
+ const resolvedParentDelegation = optionsHasParentPermissionContext ? extractLeafDelegation(options.parentPermissionContext) : options.parentDelegation;
1984
+ const authority = (() => {
1985
+ if (!resolvedParentDelegation) {
1986
+ if (!options.scope) {
1987
+ throw new Error(
1988
+ "Invalid arguments - must specify either parentDelegation, parentPermissionContext, or scope"
1989
+ );
1990
+ }
1991
+ return _delegationcore.ROOT_AUTHORITY;
1992
+ }
1993
+ if (typeof resolvedParentDelegation === "string") {
1994
+ if (resolvedParentDelegation.toLowerCase() === _delegationcore.ROOT_AUTHORITY.toLowerCase()) {
1995
+ throw new Error(
1996
+ `Invalid parent delegation - cannot be ${_delegationcore.ROOT_AUTHORITY}`
1997
+ );
1998
+ }
1999
+ return resolvedParentDelegation;
2000
+ }
2001
+ return hashDelegation(resolvedParentDelegation);
2002
+ })();
2003
+ const hasInheritance = resolvedParentDelegation !== void 0;
2004
+ const caveats = resolveCaveats({
2005
+ environment: options.environment,
2006
+ scope: options.scope,
2007
+ caveats: options.caveats,
2008
+ isScopeOptional: hasInheritance
2009
+ });
2010
+ return {
2011
+ authority,
2012
+ caveats,
2013
+ hasInheritance,
2014
+ salt: _nullishCoalesce(options.salt, () => ( "0x00"))
2015
+ };
2016
+ };
1968
2017
  var createDelegation = (options) => {
1969
- const caveats = resolveCaveats(options);
2018
+ const { authority, caveats, hasInheritance, salt } = resolveDelegationArgs(options);
1970
2019
  trackSmartAccountsKitFunctionCall("createDelegation", {
1971
- hasParentDelegation: options.parentDelegation !== void 0,
1972
- scope: options.scope.type,
2020
+ hasInheritance,
2021
+ scope: _nullishCoalesce(_optionalChain([options, 'access', _112 => _112.scope, 'optionalAccess', _113 => _113.type]), () => ( null)),
1973
2022
  caveatNames: getCaveatNames({
1974
2023
  caveats,
1975
2024
  environment: options.environment
@@ -1978,17 +2027,17 @@ var createDelegation = (options) => {
1978
2027
  return {
1979
2028
  delegate: options.to,
1980
2029
  delegator: options.from,
1981
- authority: resolveAuthority(options.parentDelegation),
2030
+ authority,
1982
2031
  caveats,
1983
- salt: _nullishCoalesce(options.salt, () => ( "0x00")),
2032
+ salt,
1984
2033
  signature: "0x"
1985
2034
  };
1986
2035
  };
1987
2036
  var createOpenDelegation = (options) => {
1988
- const caveats = resolveCaveats(options);
2037
+ const { authority, caveats, hasInheritance, salt } = resolveDelegationArgs(options);
1989
2038
  trackSmartAccountsKitFunctionCall("createOpenDelegation", {
1990
- hasParentDelegation: options.parentDelegation !== void 0,
1991
- scope: options.scope.type,
2039
+ hasInheritance,
2040
+ scope: _nullishCoalesce(_optionalChain([options, 'access', _114 => _114.scope, 'optionalAccess', _115 => _115.type]), () => ( null)),
1992
2041
  caveatNames: getCaveatNames({
1993
2042
  caveats,
1994
2043
  environment: options.environment
@@ -1997,9 +2046,9 @@ var createOpenDelegation = (options) => {
1997
2046
  return {
1998
2047
  delegate: _delegationcore.ANY_BENEFICIARY,
1999
2048
  delegator: options.from,
2000
- authority: resolveAuthority(options.parentDelegation),
2049
+ authority,
2001
2050
  caveats,
2002
- salt: _nullishCoalesce(options.salt, () => ( "0x00")),
2051
+ salt,
2003
2052
  signature: "0x"
2004
2053
  };
2005
2054
  };
@@ -2086,6 +2135,5 @@ var signDelegation = async ({
2086
2135
 
2087
2136
 
2088
2137
 
2089
-
2090
- exports.__export = __export; exports.trackSmartAccountsKitFunctionCall = trackSmartAccountsKitFunctionCall; exports.Implementation = Implementation; exports.TransferWindow = TransferWindow; exports.ScopeType = ScopeType; exports.CaveatType = CaveatType; exports.CaveatBuilder = CaveatBuilder; exports.BalanceChangeType = BalanceChangeType; exports.createCaveatBuilder = createCaveatBuilder; exports.isDefined = isDefined; exports.toHexOrThrow = toHexOrThrow; exports.createCaveat = createCaveat; exports.decodeCaveat = decodeCaveat; exports.ANY_BENEFICIARY = _delegationcore.ANY_BENEFICIARY; exports.DELEGATION_TYPEHASH = _delegationcore.DELEGATION_TYPEHASH; exports.ROOT_AUTHORITY = _delegationcore.ROOT_AUTHORITY; exports.DELEGATION_ABI_TYPE_COMPONENTS = DELEGATION_ABI_TYPE_COMPONENTS; exports.toDelegationStruct = toDelegationStruct; exports.toDelegation = toDelegation; exports.encodeDelegations = encodeDelegations; exports.encodeDelegation = encodeDelegation; exports.decodeDelegations = decodeDelegations; exports.decodeDelegation = decodeDelegation; exports.SIGNABLE_DELEGATION_TYPED_DATA = SIGNABLE_DELEGATION_TYPED_DATA; exports.DELEGATION_ARRAY_ABI_TYPE = DELEGATION_ARRAY_ABI_TYPE; exports.DELEGATION_ABI_TYPE = DELEGATION_ABI_TYPE; exports.hashDelegation = hashDelegation; exports.createDelegation = createDelegation; exports.createOpenDelegation = createOpenDelegation; exports.prepareSignDelegationTypedData = prepareSignDelegationTypedData; exports.signDelegation = signDelegation;
2091
- //# sourceMappingURL=chunk-SZOX7K2V.cjs.map
2138
+ exports.__export = __export; exports.trackSmartAccountsKitFunctionCall = trackSmartAccountsKitFunctionCall; exports.Implementation = Implementation; exports.TransferWindow = TransferWindow; exports.ScopeType = ScopeType; exports.CaveatType = CaveatType; exports.CaveatBuilder = CaveatBuilder; exports.createCaveatBuilder = createCaveatBuilder; exports.isDefined = isDefined; exports.toHexOrThrow = toHexOrThrow; exports.createCaveat = createCaveat; exports.decodeCaveat = decodeCaveat; exports.ANY_BENEFICIARY = _delegationcore.ANY_BENEFICIARY; exports.DELEGATION_TYPEHASH = _delegationcore.DELEGATION_TYPEHASH; exports.ROOT_AUTHORITY = _delegationcore.ROOT_AUTHORITY; exports.DELEGATION_ABI_TYPE_COMPONENTS = DELEGATION_ABI_TYPE_COMPONENTS; exports.toDelegationStruct = toDelegationStruct; exports.toDelegation = toDelegation; exports.encodeDelegations = encodeDelegations; exports.encodeDelegation = encodeDelegation; exports.decodeDelegations = decodeDelegations; exports.decodeDelegation = decodeDelegation; exports.SIGNABLE_DELEGATION_TYPED_DATA = SIGNABLE_DELEGATION_TYPED_DATA; exports.DELEGATION_ARRAY_ABI_TYPE = DELEGATION_ARRAY_ABI_TYPE; exports.DELEGATION_ABI_TYPE = DELEGATION_ABI_TYPE; exports.hashDelegation = hashDelegation; exports.createDelegation = createDelegation; exports.createOpenDelegation = createOpenDelegation; exports.prepareSignDelegationTypedData = prepareSignDelegationTypedData; exports.signDelegation = signDelegation;
2139
+ //# sourceMappingURL=chunk-IBZSNB7D.cjs.map