@coinbase/cdp-sdk 1.44.1 → 1.46.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.
- package/CHANGELOG.md +28 -2
- package/README.md +164 -43
- package/_cjs/accounts/evm/eip6492.js +49 -0
- package/_cjs/accounts/evm/eip6492.js.map +1 -0
- package/_cjs/accounts/evm/toEvmDelegatedAccount.js +27 -0
- package/_cjs/accounts/evm/toEvmDelegatedAccount.js.map +1 -0
- package/_cjs/accounts/evm/toEvmServerAccount.js +127 -55
- package/_cjs/accounts/evm/toEvmServerAccount.js.map +1 -1
- package/_cjs/accounts/evm/toEvmSmartAccount.js +115 -45
- package/_cjs/accounts/evm/toEvmSmartAccount.js.map +1 -1
- package/_cjs/accounts/evm/toNetworkScopedEvmSmartAccount.js +31 -0
- package/_cjs/accounts/evm/toNetworkScopedEvmSmartAccount.js.map +1 -1
- package/_cjs/accounts/solana/toSolanaAccount.js +49 -19
- package/_cjs/accounts/solana/toSolanaAccount.js.map +1 -1
- package/_cjs/actions/evm/waitForEvmEip7702DelegationStatus.js +37 -0
- package/_cjs/actions/evm/waitForEvmEip7702DelegationStatus.js.map +1 -0
- package/_cjs/actions/solana/transfer.js.map +1 -1
- package/_cjs/actions/solana/utils.js +9 -9
- package/_cjs/actions/solana/utils.js.map +1 -1
- package/_cjs/analytics.js +10 -228
- package/_cjs/analytics.js.map +1 -1
- package/_cjs/auth/utils/http.js +1 -0
- package/_cjs/auth/utils/http.js.map +1 -1
- package/_cjs/client/cdp.js +4 -7
- package/_cjs/client/cdp.js.map +1 -1
- package/_cjs/client/end-user/endUser.js +385 -4
- package/_cjs/client/end-user/endUser.js.map +1 -1
- package/_cjs/client/end-user/toEndUserAccount.js +201 -23
- package/_cjs/client/end-user/toEndUserAccount.js.map +1 -1
- package/_cjs/client/evm/evm.js +482 -227
- package/_cjs/client/evm/evm.js.map +1 -1
- package/_cjs/client/policies/policies.js +41 -11
- package/_cjs/client/policies/policies.js.map +1 -1
- package/_cjs/client/solana/solana.js +215 -118
- package/_cjs/client/solana/solana.js.map +1 -1
- package/_cjs/index.js +3 -1
- package/_cjs/index.js.map +1 -1
- package/_cjs/openapi-client/cdpApiClient.js +32 -0
- package/_cjs/openapi-client/cdpApiClient.js.map +1 -1
- package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +178 -9
- package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
- package/_cjs/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.js +261 -0
- package/_cjs/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.js.map +1 -0
- package/_cjs/openapi-client/generated/end-user-accounts/end-user-accounts.js.map +1 -1
- package/_cjs/openapi-client/generated/evm-accounts/evm-accounts.js +30 -1
- package/_cjs/openapi-client/generated/evm-accounts/evm-accounts.js.map +1 -1
- package/_cjs/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.js +2 -2
- package/_cjs/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.js.map +1 -1
- package/_cjs/openapi-client/generated/evm-swaps/evm-swaps.js.map +1 -1
- package/_cjs/openapi-client/generated/evm-token-balances/evm-token-balances.js.map +1 -1
- package/_cjs/openapi-client/generated/faucets/faucets.js +6 -5
- package/_cjs/openapi-client/generated/faucets/faucets.js.map +1 -1
- package/_cjs/openapi-client/generated/onchain-data/onchain-data.js.map +1 -1
- package/_cjs/openapi-client/generated/onramp/onramp.js +15 -1
- package/_cjs/openapi-client/generated/onramp/onramp.js.map +1 -1
- package/_cjs/openapi-client/generated/policy-engine/policy-engine.js.map +1 -1
- package/_cjs/openapi-client/generated/solana-accounts/solana-accounts.js.map +1 -1
- package/_cjs/openapi-client/generated/solana-token-balances/solana-token-balances.js.map +1 -1
- package/_cjs/openapi-client/generated/sql-api/sql-api.js +75 -0
- package/_cjs/openapi-client/generated/sql-api/sql-api.js.map +1 -0
- package/_cjs/openapi-client/generated/webhooks/webhooks.js.map +1 -1
- package/_cjs/openapi-client/generated/x402-facilitator/x402-facilitator.js.map +1 -1
- package/_cjs/openapi-client/index.js +4 -1
- package/_cjs/openapi-client/index.js.map +1 -1
- package/_cjs/policies/evmSchema.js +127 -1
- package/_cjs/policies/evmSchema.js.map +1 -1
- package/_cjs/policies/solanaSchema.js +102 -1
- package/_cjs/policies/solanaSchema.js.map +1 -1
- package/_cjs/policies/types.js +7 -0
- package/_cjs/policies/types.js.map +1 -1
- package/_cjs/utils/export.js +6 -5
- package/_cjs/utils/export.js.map +1 -1
- package/_cjs/version.js +1 -1
- package/_esm/accounts/evm/eip6492.js +46 -0
- package/_esm/accounts/evm/eip6492.js.map +1 -0
- package/_esm/accounts/evm/toEvmDelegatedAccount.js +24 -0
- package/_esm/accounts/evm/toEvmDelegatedAccount.js.map +1 -0
- package/_esm/accounts/evm/toEvmServerAccount.js +127 -55
- package/_esm/accounts/evm/toEvmServerAccount.js.map +1 -1
- package/_esm/accounts/evm/toEvmSmartAccount.js +115 -45
- package/_esm/accounts/evm/toEvmSmartAccount.js.map +1 -1
- package/_esm/accounts/evm/toNetworkScopedEvmSmartAccount.js +31 -0
- package/_esm/accounts/evm/toNetworkScopedEvmSmartAccount.js.map +1 -1
- package/_esm/accounts/solana/toSolanaAccount.js +49 -19
- package/_esm/accounts/solana/toSolanaAccount.js.map +1 -1
- package/_esm/actions/evm/waitForEvmEip7702DelegationStatus.js +34 -0
- package/_esm/actions/evm/waitForEvmEip7702DelegationStatus.js.map +1 -0
- package/_esm/actions/solana/transfer.js.map +1 -1
- package/_esm/actions/solana/utils.js +9 -9
- package/_esm/actions/solana/utils.js.map +1 -1
- package/_esm/analytics.js +9 -227
- package/_esm/analytics.js.map +1 -1
- package/_esm/auth/utils/http.js +1 -0
- package/_esm/auth/utils/http.js.map +1 -1
- package/_esm/client/cdp.js +4 -7
- package/_esm/client/cdp.js.map +1 -1
- package/_esm/client/end-user/endUser.js +385 -4
- package/_esm/client/end-user/endUser.js.map +1 -1
- package/_esm/client/end-user/toEndUserAccount.js +201 -23
- package/_esm/client/end-user/toEndUserAccount.js.map +1 -1
- package/_esm/client/evm/evm.js +482 -227
- package/_esm/client/evm/evm.js.map +1 -1
- package/_esm/client/policies/policies.js +41 -11
- package/_esm/client/policies/policies.js.map +1 -1
- package/_esm/client/solana/solana.js +215 -118
- package/_esm/client/solana/solana.js.map +1 -1
- package/_esm/index.js +1 -0
- package/_esm/index.js.map +1 -1
- package/_esm/openapi-client/cdpApiClient.js +32 -0
- package/_esm/openapi-client/cdpApiClient.js.map +1 -1
- package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +175 -7
- package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
- package/_esm/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.js +243 -0
- package/_esm/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.js.map +1 -0
- package/_esm/openapi-client/generated/end-user-accounts/end-user-accounts.js.map +1 -1
- package/_esm/openapi-client/generated/evm-accounts/evm-accounts.js +27 -0
- package/_esm/openapi-client/generated/evm-accounts/evm-accounts.js.map +1 -1
- package/_esm/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.js +2 -2
- package/_esm/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.js.map +1 -1
- package/_esm/openapi-client/generated/evm-swaps/evm-swaps.js.map +1 -1
- package/_esm/openapi-client/generated/evm-token-balances/evm-token-balances.js.map +1 -1
- package/_esm/openapi-client/generated/faucets/faucets.js +6 -5
- package/_esm/openapi-client/generated/faucets/faucets.js.map +1 -1
- package/_esm/openapi-client/generated/onchain-data/onchain-data.js.map +1 -1
- package/_esm/openapi-client/generated/onramp/onramp.js +13 -0
- package/_esm/openapi-client/generated/onramp/onramp.js.map +1 -1
- package/_esm/openapi-client/generated/policy-engine/policy-engine.js.map +1 -1
- package/_esm/openapi-client/generated/solana-accounts/solana-accounts.js.map +1 -1
- package/_esm/openapi-client/generated/solana-token-balances/solana-token-balances.js.map +1 -1
- package/_esm/openapi-client/generated/sql-api/sql-api.js +70 -0
- package/_esm/openapi-client/generated/sql-api/sql-api.js.map +1 -0
- package/_esm/openapi-client/generated/webhooks/webhooks.js.map +1 -1
- package/_esm/openapi-client/generated/x402-facilitator/x402-facilitator.js.map +1 -1
- package/_esm/openapi-client/index.js +4 -1
- package/_esm/openapi-client/index.js.map +1 -1
- package/_esm/policies/evmSchema.js +126 -0
- package/_esm/policies/evmSchema.js.map +1 -1
- package/_esm/policies/solanaSchema.js +101 -0
- package/_esm/policies/solanaSchema.js.map +1 -1
- package/_esm/policies/types.js +9 -2
- package/_esm/policies/types.js.map +1 -1
- package/_esm/utils/export.js +6 -5
- package/_esm/utils/export.js.map +1 -1
- package/_esm/version.js +1 -1
- package/_types/accounts/evm/eip6492.d.ts +17 -0
- package/_types/accounts/evm/eip6492.d.ts.map +1 -0
- package/_types/accounts/evm/toEvmDelegatedAccount.d.ts +13 -0
- package/_types/accounts/evm/toEvmDelegatedAccount.d.ts.map +1 -0
- package/_types/accounts/evm/toEvmServerAccount.d.ts.map +1 -1
- package/_types/accounts/evm/toEvmSmartAccount.d.ts.map +1 -1
- package/_types/accounts/evm/toNetworkScopedEvmSmartAccount.d.ts +4 -4
- package/_types/accounts/evm/toNetworkScopedEvmSmartAccount.d.ts.map +1 -1
- package/_types/accounts/evm/types.d.ts +3 -2
- package/_types/accounts/evm/types.d.ts.map +1 -1
- package/_types/accounts/solana/toSolanaAccount.d.ts.map +1 -1
- package/_types/actions/evm/waitForEvmEip7702DelegationStatus.d.ts +32 -0
- package/_types/actions/evm/waitForEvmEip7702DelegationStatus.d.ts.map +1 -0
- package/_types/actions/solana/transfer.d.ts +3 -4
- package/_types/actions/solana/transfer.d.ts.map +1 -1
- package/_types/actions/solana/types.d.ts +79 -29
- package/_types/actions/solana/types.d.ts.map +1 -1
- package/_types/actions/solana/utils.d.ts +10 -9
- package/_types/actions/solana/utils.d.ts.map +1 -1
- package/_types/analytics.d.ts +5 -38
- package/_types/analytics.d.ts.map +1 -1
- package/_types/auth/utils/http.d.ts.map +1 -1
- package/_types/client/cdp.d.ts +4 -0
- package/_types/client/cdp.d.ts.map +1 -1
- package/_types/client/end-user/endUser.d.ts +272 -1
- package/_types/client/end-user/endUser.d.ts.map +1 -1
- package/_types/client/end-user/endUser.types.d.ts +491 -1
- package/_types/client/end-user/endUser.types.d.ts.map +1 -1
- package/_types/client/end-user/toEndUserAccount.d.ts +4 -1
- package/_types/client/end-user/toEndUserAccount.d.ts.map +1 -1
- package/_types/client/evm/evm.d.ts +54 -1
- package/_types/client/evm/evm.d.ts.map +1 -1
- package/_types/client/evm/evm.types.d.ts +29 -2
- package/_types/client/evm/evm.types.d.ts.map +1 -1
- package/_types/client/policies/policies.d.ts.map +1 -1
- package/_types/client/solana/solana.d.ts +38 -12
- package/_types/client/solana/solana.d.ts.map +1 -1
- package/_types/index.d.ts +3 -1
- package/_types/index.d.ts.map +1 -1
- package/_types/openapi-client/cdpApiClient.d.ts.map +1 -1
- package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts +884 -90
- package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts.map +1 -1
- package/_types/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.d.ts +163 -0
- package/_types/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.d.ts.map +1 -0
- package/_types/openapi-client/generated/end-user-accounts/end-user-accounts.d.ts +9 -9
- package/_types/openapi-client/generated/end-user-accounts/end-user-accounts.d.ts.map +1 -1
- package/_types/openapi-client/generated/evm-accounts/evm-accounts.d.ts +35 -15
- package/_types/openapi-client/generated/evm-accounts/evm-accounts.d.ts.map +1 -1
- package/_types/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.d.ts +14 -14
- package/_types/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.d.ts.map +1 -1
- package/_types/openapi-client/generated/evm-swaps/evm-swaps.d.ts +3 -3
- package/_types/openapi-client/generated/evm-swaps/evm-swaps.d.ts.map +1 -1
- package/_types/openapi-client/generated/evm-token-balances/evm-token-balances.d.ts +2 -2
- package/_types/openapi-client/generated/evm-token-balances/evm-token-balances.d.ts.map +1 -1
- package/_types/openapi-client/generated/faucets/faucets.d.ts +9 -8
- package/_types/openapi-client/generated/faucets/faucets.d.ts.map +1 -1
- package/_types/openapi-client/generated/onchain-data/onchain-data.d.ts +3 -3
- package/_types/openapi-client/generated/onchain-data/onchain-data.d.ts.map +1 -1
- package/_types/openapi-client/generated/onramp/onramp.d.ts +12 -5
- package/_types/openapi-client/generated/onramp/onramp.d.ts.map +1 -1
- package/_types/openapi-client/generated/policy-engine/policy-engine.d.ts +6 -6
- package/_types/openapi-client/generated/policy-engine/policy-engine.d.ts.map +1 -1
- package/_types/openapi-client/generated/solana-accounts/solana-accounts.d.ts +12 -12
- package/_types/openapi-client/generated/solana-accounts/solana-accounts.d.ts.map +1 -1
- package/_types/openapi-client/generated/solana-token-balances/solana-token-balances.d.ts +2 -2
- package/_types/openapi-client/generated/solana-token-balances/solana-token-balances.d.ts.map +1 -1
- package/_types/openapi-client/generated/sql-api/sql-api.d.ts +73 -0
- package/_types/openapi-client/generated/sql-api/sql-api.d.ts.map +1 -0
- package/_types/openapi-client/generated/webhooks/webhooks.d.ts +6 -6
- package/_types/openapi-client/generated/webhooks/webhooks.d.ts.map +1 -1
- package/_types/openapi-client/generated/x402-facilitator/x402-facilitator.d.ts +4 -4
- package/_types/openapi-client/generated/x402-facilitator/x402-facilitator.d.ts.map +1 -1
- package/_types/openapi-client/index.d.ts +23 -3
- package/_types/openapi-client/index.d.ts.map +1 -1
- package/_types/policies/evmSchema.d.ts +3128 -1064
- package/_types/policies/evmSchema.d.ts.map +1 -1
- package/_types/policies/solanaSchema.d.ts +1411 -47
- package/_types/policies/solanaSchema.d.ts.map +1 -1
- package/_types/policies/types.d.ts +8427 -2942
- package/_types/policies/types.d.ts.map +1 -1
- package/_types/types/contract.d.ts.map +1 -1
- package/_types/utils/export.d.ts +1 -1
- package/_types/utils/export.d.ts.map +1 -1
- package/_types/version.d.ts +1 -1
- package/accounts/evm/eip6492.ts +60 -0
- package/accounts/evm/toEvmDelegatedAccount.ts +26 -0
- package/accounts/evm/toEvmServerAccount.ts +115 -67
- package/accounts/evm/toEvmSmartAccount.ts +114 -57
- package/accounts/evm/toNetworkScopedEvmSmartAccount.ts +44 -5
- package/accounts/evm/types.ts +8 -3
- package/accounts/solana/toSolanaAccount.ts +44 -24
- package/actions/evm/waitForEvmEip7702DelegationStatus.ts +57 -0
- package/actions/solana/transfer.ts +3 -3
- package/actions/solana/types.ts +79 -29
- package/actions/solana/utils.ts +13 -11
- package/analytics.ts +8 -294
- package/auth/utils/http.ts +1 -0
- package/client/cdp.ts +6 -8
- package/client/end-user/endUser.ts +513 -4
- package/client/end-user/endUser.types.ts +598 -0
- package/client/end-user/toEndUserAccount.ts +330 -26
- package/client/evm/evm.ts +517 -282
- package/client/evm/evm.types.ts +45 -2
- package/client/policies/policies.ts +41 -16
- package/client/solana/solana.ts +233 -153
- package/index.ts +36 -1
- package/openapi-client/cdpApiClient.ts +34 -0
- package/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.ts +1155 -172
- package/openapi-client/generated/embedded-wallets-core-functionality/embedded-wallets-core-functionality.ts +455 -0
- package/openapi-client/generated/end-user-accounts/end-user-accounts.ts +12 -9
- package/openapi-client/generated/evm-accounts/evm-accounts.ts +66 -14
- package/openapi-client/generated/evm-smart-accounts/evm-smart-accounts.ts +16 -16
- package/openapi-client/generated/evm-swaps/evm-swaps.ts +3 -3
- package/openapi-client/generated/evm-token-balances/evm-token-balances.ts +2 -2
- package/openapi-client/generated/faucets/faucets.ts +9 -8
- package/openapi-client/generated/onchain-data/onchain-data.ts +3 -3
- package/openapi-client/generated/onramp/onramp.ts +28 -4
- package/openapi-client/generated/policy-engine/policy-engine.ts +12 -6
- package/openapi-client/generated/solana-accounts/solana-accounts.ts +12 -12
- package/openapi-client/generated/solana-token-balances/solana-token-balances.ts +2 -2
- package/openapi-client/generated/sql-api/sql-api.ts +92 -0
- package/openapi-client/generated/webhooks/webhooks.ts +6 -6
- package/openapi-client/generated/x402-facilitator/x402-facilitator.ts +6 -4
- package/openapi-client/index.ts +4 -1
- package/package.json +7 -8
- package/policies/evmSchema.ts +164 -0
- package/policies/solanaSchema.ts +130 -0
- package/policies/types.ts +14 -0
- package/types/contract.ts +2 -4
- package/utils/export.ts +6 -5
- package/version.ts +1 -1
- package/_cjs/openapi-client/generated/sql-api-alpha/sql-api-alpha.js +0 -55
- package/_cjs/openapi-client/generated/sql-api-alpha/sql-api-alpha.js.map +0 -1
- package/_esm/openapi-client/generated/sql-api-alpha/sql-api-alpha.js +0 -50
- package/_esm/openapi-client/generated/sql-api-alpha/sql-api-alpha.js.map +0 -1
- package/_types/openapi-client/generated/sql-api-alpha/sql-api-alpha.d.ts +0 -53
- package/_types/openapi-client/generated/sql-api-alpha/sql-api-alpha.d.ts.map +0 -1
- package/openapi-client/generated/sql-api-alpha/sql-api-alpha.ts +0 -72
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
# CDP SDK Changelog
|
|
2
2
|
|
|
3
|
+
## 1.46.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#624](https://github.com/coinbase/cdp-sdk/pull/624) [`0c0c1c8`](https://github.com/coinbase/cdp-sdk/commit/0c0c1c8d4202dc24bd07b926de2d81144fba8599) Thanks [@sammccord](https://github.com/sammccord)! - Add revokeDelegation, and delegated signing operations to end user client
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- [#627](https://github.com/coinbase/cdp-sdk/pull/627) [`4a10b49`](https://github.com/coinbase/cdp-sdk/commit/4a10b4940c825a77e7af2378e1cb9f8e6d4db956) Thanks [@0xRAG](https://github.com/0xRAG)! - Removed @solana/web3.js dependency to avoid transitive LGPL license
|
|
12
|
+
|
|
13
|
+
- [#622](https://github.com/coinbase/cdp-sdk/pull/622) [`03d0b68`](https://github.com/coinbase/cdp-sdk/commit/03d0b680b0a5d3758a9092a8cf9abaeb2ae4790a) Thanks [@0xRAG](https://github.com/0xRAG)! - Patched security vulnerabilities across several dependencies.
|
|
14
|
+
|
|
15
|
+
- [#623](https://github.com/coinbase/cdp-sdk/pull/623) [`ec2866f`](https://github.com/coinbase/cdp-sdk/commit/ec2866ff0423130a3a6ed948ab7e3c741e376b90) Thanks [@milan-cb](https://github.com/milan-cb)! - Added EIP-6492 signature wrapping for undeployed smart accounts
|
|
16
|
+
|
|
17
|
+
## 1.45.0
|
|
18
|
+
|
|
19
|
+
### Minor Changes
|
|
20
|
+
|
|
21
|
+
- [#606](https://github.com/coinbase/cdp-sdk/pull/606) [`3fef84a`](https://github.com/coinbase/cdp-sdk/commit/3fef84a828ee897fcbdc9bb920fcc3641eac8641) Thanks [@milan-cb](https://github.com/milan-cb)! - Added createEvmEip7702Delegation to upgrade EOAs with smart account capabilities
|
|
22
|
+
|
|
23
|
+
- [#612](https://github.com/coinbase/cdp-sdk/pull/612) [`7ed8a11`](https://github.com/coinbase/cdp-sdk/commit/7ed8a1177e5fddc70929ee7ec339887c780657b1) Thanks [@milan-cb](https://github.com/milan-cb)! - Added getEvmEip7702DelegationOperationById and waitForEvmEip7702DelegationOperationStatus
|
|
24
|
+
|
|
25
|
+
- [#608](https://github.com/coinbase/cdp-sdk/pull/608) [`8fcfac3`](https://github.com/coinbase/cdp-sdk/commit/8fcfac348487f586b224b77074f52594ad44198b) Thanks [@sammccord](https://github.com/sammccord)! - Added support for new end user embedded wallet policy rules, reusing existing criteria - signEndUserEvmTransaction, sendEndUserEvmTransaction, signEndUserEvmMessage, signEndUserEvmTypedData, signEndUserSolTransaction, sendEndUserSolTransaction, and signEndUserSolMessage.
|
|
26
|
+
|
|
27
|
+
### Patch Changes
|
|
28
|
+
|
|
29
|
+
- [#607](https://github.com/coinbase/cdp-sdk/pull/607) [`21244e3`](https://github.com/coinbase/cdp-sdk/commit/21244e32384fb189facbea96668087d24ded035a) Thanks [@0xRAG](https://github.com/0xRAG)! - Simplify analytics
|
|
30
|
+
|
|
3
31
|
## 1.44.1
|
|
4
32
|
|
|
5
33
|
### Patch Changes
|
|
@@ -414,7 +442,6 @@
|
|
|
414
442
|
- [#122](https://github.com/coinbase/cdp-sdk/pull/122) [`ee41d98`](https://github.com/coinbase/cdp-sdk/commit/ee41d986406e3e8666d1d1a1b1525e7ff7435a2b) Thanks [@sddioulde](https://github.com/sddioulde)! - Added account actions to Solana
|
|
415
443
|
|
|
416
444
|
- [#103](https://github.com/coinbase/cdp-sdk/pull/103) [`2777cde`](https://github.com/coinbase/cdp-sdk/commit/2777cde93e4f10579a4ca31e140720067799cf66) Thanks [@0xRAG](https://github.com/0xRAG)! - Added additional options to transfer methods:
|
|
417
|
-
|
|
418
445
|
- Added `paymasterUrl` and `waitOptions` to EvmSmartAccount.transfer
|
|
419
446
|
- Added `waitOptions` to EvmAccount.transfer
|
|
420
447
|
|
|
@@ -423,7 +450,6 @@
|
|
|
423
450
|
### Minor Changes
|
|
424
451
|
|
|
425
452
|
- [#99](https://github.com/coinbase/cdp-sdk/pull/99) [`0fd6d2b`](https://github.com/coinbase/cdp-sdk/commit/0fd6d2ba56b2da52c96eb19278dc782560b7680b) Thanks [@0xRAG](https://github.com/0xRAG)! - Added actions to EvmAccount and EvmSmartAccount:
|
|
426
|
-
|
|
427
453
|
- listTokenBalances
|
|
428
454
|
- requestFaucet
|
|
429
455
|
- sendTransaction (EvmAccount only)
|
package/README.md
CHANGED
|
@@ -12,11 +12,13 @@
|
|
|
12
12
|
- [Updating Accounts](#updating-evm-or-solana-accounts)
|
|
13
13
|
- [Testnet Faucet](#testnet-faucet)
|
|
14
14
|
- [Sending Transactions](#sending-transactions)
|
|
15
|
+
- [EIP-7702 delegation](#eip-7702-delegation)
|
|
15
16
|
- [EVM Smart Accounts](#evm-smart-accounts)
|
|
16
17
|
- [EVM Swaps](#evm-swaps)
|
|
17
18
|
- [Transferring Tokens](#transferring-tokens)
|
|
18
19
|
- [Account Actions](#account-actions)
|
|
19
20
|
- [Policy Management](#policy-management)
|
|
21
|
+
- [End User Policies](#end-user-policies)
|
|
20
22
|
- [End-user Management](#end-user-management)
|
|
21
23
|
- [Create End User](#create-end-user)
|
|
22
24
|
- [Import End User](#import-end-user)
|
|
@@ -376,37 +378,49 @@ import { CdpClient } from "@coinbase/cdp-sdk";
|
|
|
376
378
|
import "dotenv/config";
|
|
377
379
|
|
|
378
380
|
import {
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
381
|
+
address as solanaAddress,
|
|
382
|
+
appendTransactionMessageInstructions,
|
|
383
|
+
compileTransaction,
|
|
384
|
+
createNoopSigner,
|
|
385
|
+
createSolanaRpc,
|
|
386
|
+
createTransactionMessage,
|
|
387
|
+
getBase64EncodedWireTransaction,
|
|
388
|
+
pipe,
|
|
389
|
+
setTransactionMessageFeePayer,
|
|
390
|
+
setTransactionMessageLifetimeUsingBlockhash,
|
|
391
|
+
} from "@solana/kit";
|
|
392
|
+
import { getTransferSolInstruction } from "@solana-program/system";
|
|
384
393
|
|
|
385
394
|
const cdp = new CdpClient();
|
|
386
395
|
|
|
387
396
|
const account = await cdp.solana.createAccount();
|
|
388
397
|
|
|
389
|
-
|
|
398
|
+
await cdp.solana.requestFaucet({
|
|
390
399
|
address: account.address,
|
|
391
400
|
token: "sol",
|
|
392
401
|
});
|
|
393
402
|
|
|
394
|
-
const
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
);
|
|
403
|
+
const rpc = createSolanaRpc("https://api.devnet.solana.com");
|
|
404
|
+
const { value: { blockhash, lastValidBlockHeight } } = await rpc.getLatestBlockhash().send();
|
|
405
|
+
|
|
406
|
+
const instruction = getTransferSolInstruction({
|
|
407
|
+
source: createNoopSigner(solanaAddress(account.address)),
|
|
408
|
+
destination: solanaAddress("3KzDtddx4i53FBkvCzuDmRbaMozTZoJBb1TToWhz3JfE"),
|
|
409
|
+
amount: 10000n,
|
|
410
|
+
});
|
|
402
411
|
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
412
|
+
const txMsg = pipe(
|
|
413
|
+
createTransactionMessage({ version: 0 }),
|
|
414
|
+
(tx) => setTransactionMessageFeePayer(solanaAddress(account.address), tx),
|
|
415
|
+
(tx) =>
|
|
416
|
+
setTransactionMessageLifetimeUsingBlockhash(
|
|
417
|
+
{ blockhash, lastValidBlockHeight },
|
|
418
|
+
tx,
|
|
419
|
+
),
|
|
420
|
+
(tx) => appendTransactionMessageInstructions([instruction], tx),
|
|
421
|
+
);
|
|
406
422
|
|
|
407
|
-
const serializedTx =
|
|
408
|
-
transaction.serialize({ requireAllSignatures: false })
|
|
409
|
-
).toString("base64");
|
|
423
|
+
const serializedTx = getBase64EncodedWireTransaction(compileTransaction(txMsg));
|
|
410
424
|
|
|
411
425
|
console.log("Transaction serialized successfully");
|
|
412
426
|
|
|
@@ -416,10 +430,43 @@ const txResult = await cdp.solana.sendTransaction({
|
|
|
416
430
|
});
|
|
417
431
|
|
|
418
432
|
console.log(
|
|
419
|
-
`Transaction confirmed! Explorer link: https://explorer.solana.com/tx/${txResult.signature}?cluster=devnet
|
|
433
|
+
`Transaction confirmed! Explorer link: https://explorer.solana.com/tx/${txResult.signature}?cluster=devnet`,
|
|
420
434
|
);
|
|
421
435
|
```
|
|
422
436
|
|
|
437
|
+
### EIP-7702 delegation
|
|
438
|
+
|
|
439
|
+
You can create an [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) delegation for an existing EOA, upgrading it with smart account capabilities on supported networks. The delegated EOA can then use batched transactions and gas sponsorship via paymaster.
|
|
440
|
+
|
|
441
|
+
```typescript
|
|
442
|
+
import { CdpClient } from "@coinbase/cdp-sdk";
|
|
443
|
+
import { createPublicClient, http } from "viem";
|
|
444
|
+
import { baseSepolia } from "viem/chains";
|
|
445
|
+
|
|
446
|
+
const cdp = new CdpClient();
|
|
447
|
+
const publicClient = createPublicClient({
|
|
448
|
+
chain: baseSepolia,
|
|
449
|
+
transport: http(),
|
|
450
|
+
});
|
|
451
|
+
|
|
452
|
+
const account = await cdp.evm.getOrCreateAccount({ name: "MyAccount" });
|
|
453
|
+
|
|
454
|
+
const { delegationOperationId } = await cdp.evm.createEvmEip7702Delegation({
|
|
455
|
+
address: account.address,
|
|
456
|
+
network: "base-sepolia",
|
|
457
|
+
enableSpendPermissions: false, // optional, defaults to false
|
|
458
|
+
idempotencyKey: "optional-uuid", // optional
|
|
459
|
+
});
|
|
460
|
+
|
|
461
|
+
// Wait for the delegation operation to complete
|
|
462
|
+
const delegationOperation = await cdp.evm.waitForEvmEip7702DelegationOperationStatus({
|
|
463
|
+
delegationOperationId,
|
|
464
|
+
});
|
|
465
|
+
console.log(`Delegation confirmed (status: ${delegationOperation.status})`);
|
|
466
|
+
```
|
|
467
|
+
|
|
468
|
+
For a runnable example that includes faucet and receipt waiting, see [examples/typescript/evm/eip7702/createEip7702Delegation.ts](https://github.com/coinbase/cdp-sdk/blob/main/examples/typescript/evm/eip7702/createEip7702Delegation.ts).
|
|
469
|
+
|
|
423
470
|
### EVM Smart Accounts
|
|
424
471
|
|
|
425
472
|
For EVM, we support Smart Accounts which are account-abstraction (ERC-4337) accounts. Currently there is only support for Base Sepolia and Base Mainnet for Smart Accounts.
|
|
@@ -754,35 +801,27 @@ await sender.transfer({
|
|
|
754
801
|
|
|
755
802
|
For complete examples, check out [solana/account.transfer.ts](https://github.com/coinbase/cdp-sdk/blob/main/examples/typescript/solana/account.transfer.ts).
|
|
756
803
|
|
|
757
|
-
You can transfer tokens between accounts using the `transfer` function
|
|
804
|
+
You can transfer tokens between accounts using the `transfer` function:
|
|
758
805
|
|
|
759
806
|
```typescript
|
|
760
|
-
import {
|
|
807
|
+
import { createSolanaRpc, type Signature } from "@solana/kit";
|
|
761
808
|
|
|
762
809
|
const sender = await cdp.solana.createAccount();
|
|
763
810
|
|
|
764
|
-
const connection = new Connection("https://api.devnet.solana.com");
|
|
765
|
-
|
|
766
811
|
const { signature } = await sender.transfer({
|
|
767
812
|
to: "3KzDtddx4i53FBkvCzuDmRbaMozTZoJBb1TToWhz3JfE",
|
|
768
|
-
amount: 0.01
|
|
813
|
+
amount: 10_000_000n, // 0.01 SOL in lamports
|
|
769
814
|
token: "sol",
|
|
770
|
-
network:
|
|
815
|
+
network: "devnet",
|
|
771
816
|
});
|
|
772
817
|
|
|
773
|
-
|
|
818
|
+
// Poll for confirmation using @solana/kit
|
|
819
|
+
const rpc = createSolanaRpc("https://api.devnet.solana.com");
|
|
820
|
+
const result = await rpc.getSignatureStatuses([signature as Signature]).send();
|
|
821
|
+
const status = result.value[0];
|
|
774
822
|
|
|
775
|
-
|
|
776
|
-
{
|
|
777
|
-
signature,
|
|
778
|
-
blockhash,
|
|
779
|
-
lastValidBlockHeight,
|
|
780
|
-
},
|
|
781
|
-
"confirmed",
|
|
782
|
-
);
|
|
783
|
-
|
|
784
|
-
if (confirmation.value.err) {
|
|
785
|
-
console.log(`Something went wrong! Error: ${confirmation.value.err.toString()}`);
|
|
823
|
+
if (status?.err) {
|
|
824
|
+
console.log(`Something went wrong! Error: ${JSON.stringify(status.err)}`);
|
|
786
825
|
} else {
|
|
787
826
|
console.log(
|
|
788
827
|
`Transaction confirmed: Link: https://explorer.solana.com/tx/${signature}?cluster=devnet`,
|
|
@@ -801,18 +840,18 @@ const { signature } = await sender.transfer({
|
|
|
801
840
|
});
|
|
802
841
|
```
|
|
803
842
|
|
|
804
|
-
If you want to use your own
|
|
843
|
+
If you want to use your own RPC client, you can pass one to the `network` parameter:
|
|
805
844
|
|
|
806
845
|
```typescript
|
|
807
|
-
import {
|
|
846
|
+
import { createSolanaRpc } from "@solana/kit";
|
|
808
847
|
|
|
809
|
-
const
|
|
848
|
+
const rpc = createSolanaRpc("YOUR_RPC_URL");
|
|
810
849
|
|
|
811
850
|
const { signature } = await sender.transfer({
|
|
812
851
|
to: "3KzDtddx4i53FBkvCzuDmRbaMozTZoJBb1TToWhz3JfE",
|
|
813
852
|
amount: "0.01",
|
|
814
853
|
token: "usdc",
|
|
815
|
-
network:
|
|
854
|
+
network: rpc,
|
|
816
855
|
});
|
|
817
856
|
```
|
|
818
857
|
|
|
@@ -1079,6 +1118,8 @@ try {
|
|
|
1079
1118
|
|
|
1080
1119
|
We currently support the following policy rules:
|
|
1081
1120
|
|
|
1121
|
+
**Server wallet rules:**
|
|
1122
|
+
|
|
1082
1123
|
- [SignEvmTransactionRule](https://docs.cdp.coinbase.com/api-reference/v2/rest-api/policy-engine/create-a-policy#signevmtransactionrule)
|
|
1083
1124
|
- [SendEvmTransactionRule](https://docs.cdp.coinbase.com/api-reference/v2/rest-api/policy-engine/create-a-policy#sendevmtransactionrule)
|
|
1084
1125
|
- [SignEvmMessageRule](https://docs.cdp.coinbase.com/api-reference/v2/rest-api/policy-engine/create-a-policy#signevmmessagerule)
|
|
@@ -1089,6 +1130,86 @@ We currently support the following policy rules:
|
|
|
1089
1130
|
- [PrepareUserOperationRule](https://docs.cdp.coinbase.com/api-reference/v2/rest-api/policy-engine/create-a-policy#prepareuseroperationrule)
|
|
1090
1131
|
- [SendUserOperationRule](https://docs.cdp.coinbase.com/api-reference/v2/rest-api/policy-engine/create-a-policy#senduseroperationrule)
|
|
1091
1132
|
|
|
1133
|
+
**End user rules:**
|
|
1134
|
+
|
|
1135
|
+
- `SignEndUserEvmTransactionRule` — operation: `signEndUserEvmTransaction` (criteria: `ethValue`, `evmAddress`, `evmData`, `netUSDChange`)
|
|
1136
|
+
- `SendEndUserEvmTransactionRule` — operation: `sendEndUserEvmTransaction` (criteria: `ethValue`, `evmAddress`, `evmNetwork`, `evmData`, `netUSDChange`)
|
|
1137
|
+
- `SignEndUserEvmMessageRule` — operation: `signEndUserEvmMessage` (criteria: `evmMessage`)
|
|
1138
|
+
- `SignEndUserEvmTypedDataRule` — operation: `signEndUserEvmTypedData` (criteria: `evmTypedDataField`, `evmTypedDataVerifyingContract`)
|
|
1139
|
+
- `SignEndUserSolTransactionRule` — operation: `signEndUserSolTransaction` (criteria: `solAddress`, `solValue`, `splAddress`, `splValue`, `mintAddress`, `solData`, `programId`)
|
|
1140
|
+
- `SendEndUserSolTransactionRule` — operation: `sendEndUserSolTransaction` (criteria: `solAddress`, `solValue`, `splAddress`, `splValue`, `mintAddress`, `solData`, `programId`, `solNetwork`)
|
|
1141
|
+
- `SignEndUserSolMessageRule` — operation: `signEndUserSolMessage` (criteria: `solMessage`)
|
|
1142
|
+
|
|
1143
|
+
End user rules use the same criteria types as their server wallet counterparts. For example, `signEndUserEvmTransaction` supports the same `ethValue`, `evmAddress`, and `evmData` criteria as `signEvmTransaction`.
|
|
1144
|
+
|
|
1145
|
+
### End User Policies
|
|
1146
|
+
|
|
1147
|
+
You can create policies that govern end-user operations using the same criteria types available for server wallet policies. The only difference is the `operation` value, which targets end-user-specific actions.
|
|
1148
|
+
|
|
1149
|
+
#### End User EVM Policy
|
|
1150
|
+
|
|
1151
|
+
This policy restricts end-user EVM transaction signing to a max value and allowlisted recipients — the same criteria used in `signEvmTransaction`:
|
|
1152
|
+
|
|
1153
|
+
```typescript
|
|
1154
|
+
const policy = await cdp.policies.createPolicy({
|
|
1155
|
+
policy: {
|
|
1156
|
+
scope: "project",
|
|
1157
|
+
description: "End User EVM Policy",
|
|
1158
|
+
rules: [
|
|
1159
|
+
{
|
|
1160
|
+
action: "accept",
|
|
1161
|
+
operation: "signEndUserEvmTransaction",
|
|
1162
|
+
criteria: [
|
|
1163
|
+
{
|
|
1164
|
+
type: "ethValue",
|
|
1165
|
+
ethValue: "1000000000000000000", // 1 ETH in wei
|
|
1166
|
+
operator: "<=",
|
|
1167
|
+
},
|
|
1168
|
+
{
|
|
1169
|
+
type: "evmAddress",
|
|
1170
|
+
addresses: ["0x000000000000000000000000000000000000dEaD"],
|
|
1171
|
+
operator: "in",
|
|
1172
|
+
},
|
|
1173
|
+
],
|
|
1174
|
+
},
|
|
1175
|
+
],
|
|
1176
|
+
},
|
|
1177
|
+
});
|
|
1178
|
+
```
|
|
1179
|
+
|
|
1180
|
+
#### End User Solana Policy
|
|
1181
|
+
|
|
1182
|
+
This policy restricts end-user Solana transaction signing to allowlisted recipients under a SOL value threshold — the same criteria used in `signSolTransaction`:
|
|
1183
|
+
|
|
1184
|
+
```typescript
|
|
1185
|
+
const policy = await cdp.policies.createPolicy({
|
|
1186
|
+
policy: {
|
|
1187
|
+
scope: "project",
|
|
1188
|
+
description: "End User Solana Policy",
|
|
1189
|
+
rules: [
|
|
1190
|
+
{
|
|
1191
|
+
action: "accept",
|
|
1192
|
+
operation: "signEndUserSolTransaction",
|
|
1193
|
+
criteria: [
|
|
1194
|
+
{
|
|
1195
|
+
type: "solAddress",
|
|
1196
|
+
addresses: ["11111111111111111111111111111111"],
|
|
1197
|
+
operator: "in",
|
|
1198
|
+
},
|
|
1199
|
+
{
|
|
1200
|
+
type: "solValue",
|
|
1201
|
+
solValue: "1000000000", // 1 SOL in lamports
|
|
1202
|
+
operator: "<=",
|
|
1203
|
+
},
|
|
1204
|
+
],
|
|
1205
|
+
},
|
|
1206
|
+
],
|
|
1207
|
+
},
|
|
1208
|
+
});
|
|
1209
|
+
```
|
|
1210
|
+
|
|
1211
|
+
> For a comprehensive example demonstrating all 7 end-user operations, see [createEndUserPolicy.ts](https://github.com/coinbase/cdp-sdk/blob/main/examples/typescript/end-users/createEndUserPolicy.ts).
|
|
1212
|
+
|
|
1092
1213
|
### End-user Management
|
|
1093
1214
|
|
|
1094
1215
|
You can use the End User SDK to manage the users of your applications.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.wrapSignatureWithEip6492IfUndeployed = wrapSignatureWithEip6492IfUndeployed;
|
|
4
|
+
const viem_1 = require("viem");
|
|
5
|
+
const COINBASE_SMART_WALLET_FACTORY = "0xBA5ED110eFDBa3D005bfC882d75358ACBbB85842";
|
|
6
|
+
const COINBASE_SMART_WALLET_FACTORY_ABI = [
|
|
7
|
+
{
|
|
8
|
+
name: "createAccount",
|
|
9
|
+
type: "function",
|
|
10
|
+
inputs: [
|
|
11
|
+
{ name: "owners", type: "bytes[]" },
|
|
12
|
+
{ name: "nonce", type: "uint256" },
|
|
13
|
+
],
|
|
14
|
+
outputs: [{ name: "account", type: "address" }],
|
|
15
|
+
stateMutability: "payable",
|
|
16
|
+
},
|
|
17
|
+
];
|
|
18
|
+
/**
|
|
19
|
+
* Wraps a smart account signature with EIP-6492 deployment data if the account is not yet deployed.
|
|
20
|
+
*
|
|
21
|
+
* For undeployed (counterfactual) Coinbase Smart Wallet accounts, validators cannot call
|
|
22
|
+
* `isValidSignature` on-chain. EIP-6492 embeds the factory address and calldata so that
|
|
23
|
+
* validators can simulate deployment before verifying the signature.
|
|
24
|
+
*
|
|
25
|
+
* @param publicClient - A viem public client used to check the account bytecode.
|
|
26
|
+
* @param accountAddress - The smart account address to check deployment status.
|
|
27
|
+
* @param ownerAddress - The owner address used as the factory `createAccount` argument.
|
|
28
|
+
* @param signature - The inner ERC-1271 signature to wrap.
|
|
29
|
+
* @returns The original signature if the account is deployed, or an EIP-6492 wrapped signature otherwise.
|
|
30
|
+
*/
|
|
31
|
+
async function wrapSignatureWithEip6492IfUndeployed(publicClient, accountAddress, ownerAddress, signature) {
|
|
32
|
+
const bytecode = await publicClient.getCode({ address: accountAddress });
|
|
33
|
+
const isDeployed = bytecode !== undefined && bytecode !== "0x";
|
|
34
|
+
if (!isDeployed) {
|
|
35
|
+
const ownerBytes = (0, viem_1.encodeAbiParameters)([{ type: "address" }], [ownerAddress]);
|
|
36
|
+
const factoryCalldata = (0, viem_1.encodeFunctionData)({
|
|
37
|
+
abi: COINBASE_SMART_WALLET_FACTORY_ABI,
|
|
38
|
+
functionName: "createAccount",
|
|
39
|
+
args: [[ownerBytes], 0n],
|
|
40
|
+
});
|
|
41
|
+
return (0, viem_1.serializeErc6492Signature)({
|
|
42
|
+
address: COINBASE_SMART_WALLET_FACTORY,
|
|
43
|
+
data: factoryCalldata,
|
|
44
|
+
signature,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
return signature;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=eip6492.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eip6492.js","sourceRoot":"","sources":["../../../accounts/evm/eip6492.ts"],"names":[],"mappings":";;AAiCA,oFA0BC;AA3DD,+BAA0F;AAK1F,MAAM,6BAA6B,GAAG,4CAA4C,CAAC;AAEnF,MAAM,iCAAiC,GAAG;IACxC;QACE,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;SACnC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,eAAe,EAAE,SAAS;KAC3B;CACO,CAAC;AAEX;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,oCAAoC,CACxD,YAA0B,EAC1B,cAAuB,EACvB,YAAqB,EACrB,SAAc;IAEd,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,CAAC;IAE/D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,UAAU,GAAG,IAAA,0BAAmB,EAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;QAE9E,MAAM,eAAe,GAAG,IAAA,yBAAkB,EAAC;YACzC,GAAG,EAAE,iCAAiC;YACtC,YAAY,EAAE,eAAe;YAC7B,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;SACzB,CAAC,CAAC;QAEH,OAAO,IAAA,gCAAyB,EAAC;YAC/B,OAAO,EAAE,6BAA6B;YACtC,IAAI,EAAE,eAAe;YACrB,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toEvmDelegatedAccount = toEvmDelegatedAccount;
|
|
4
|
+
const toEvmSmartAccount_js_1 = require("./toEvmSmartAccount.js");
|
|
5
|
+
const index_js_1 = require("../../openapi-client/index.js");
|
|
6
|
+
/**
|
|
7
|
+
* Creates an EvmSmartAccount view of a server account for use after EIP-7702 delegation.
|
|
8
|
+
* Uses the API client configured by your CdpClient instance.
|
|
9
|
+
*
|
|
10
|
+
* The returned account has the same address as the EOA and uses the server account as owner,
|
|
11
|
+
* so you can call sendUserOperation, waitForUserOperation, etc.
|
|
12
|
+
*
|
|
13
|
+
* @param account - The server account (EOA) that has been delegated via EIP-7702.
|
|
14
|
+
* @returns An EvmSmartAccount view ready for user operation submission.
|
|
15
|
+
*/
|
|
16
|
+
function toEvmDelegatedAccount(account) {
|
|
17
|
+
return (0, toEvmSmartAccount_js_1.toEvmSmartAccount)(index_js_1.CdpOpenApiClient, {
|
|
18
|
+
smartAccount: {
|
|
19
|
+
address: account.address,
|
|
20
|
+
owners: [account.address],
|
|
21
|
+
name: account.name,
|
|
22
|
+
policies: account.policies,
|
|
23
|
+
},
|
|
24
|
+
owner: account,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=toEvmDelegatedAccount.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toEvmDelegatedAccount.js","sourceRoot":"","sources":["../../../accounts/evm/toEvmDelegatedAccount.ts"],"names":[],"mappings":";;AAeA,sDAUC;AAzBD,iEAA2D;AAC3D,4DAAiE;AAIjE;;;;;;;;;GASG;AACH,SAAgB,qBAAqB,CAAC,OAAyB;IAC7D,OAAO,IAAA,wCAAiB,EAAC,2BAAgB,EAAE;QACzC,YAAY,EAAE;YACZ,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;YACzB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B;QACD,KAAK,EAAE,OAAO;KACf,CAAC,CAAC;AACL,CAAC"}
|