Conversation
…able-solana-cct-sdk
* Better separation of concerns and abstractions * CCT: Add version dispatch + Transfer Ownership * Adjust with base * Address generic error types and doc examples * Fix linting * add example doc for op * linting fix
* Better separation of concerns and abstractions * CCT: Add version dispatch + Transfer Ownership * Adjust with base * Address generic error types and doc examples * Fix linting * feat(cct-sdk): Add deploy evm token * Address PR comments * Address PR comments by fixing chain-specific types * feat(cct-sdk): Source chainlink/contracts-ccip artifacts (#303) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * Remove outdated bytecodes * feat(cct-sdk): Add CrossChainToken deployment + token versioning (#305) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * feat(cct-sdk): Add versioned Deploy Token (CCT + ERC20) * Remove outdated bytecodes * Deploy only CrossChainToken * Recover previous type changes * Address preMint specs
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * fix: address comments * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * fix: address comments * fix: export resolveTokenMint
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * feat: add create token multisig op solana * fix: refactor validators * fix: refactor validators * fix: export pool programs and type * fix: use current module's PublicKey * fix: address comments * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * fix: change to TransactionResult * fix: address comments * fix: export resolveTokenMint * fix: merge conflicts
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * fix: address comments
* Better separation of concerns and abstractions * CCT: Add version dispatch + Transfer Ownership * Adjust with base * Address generic error types and doc examples * Fix linting * feat(cct-sdk): Add deploy evm token * Address PR comments * Address PR comments by fixing chain-specific types * feat(cct-sdk): Source chainlink/contracts-ccip artifacts (#303) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * Remove outdated bytecodes * feat(cct-sdk): Add CrossChainToken deployment + token versioning (#305) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * feat(cct-sdk): Add versioned Deploy Token (CCT + ERC20) * Remove outdated bytecodes * Deploy only CrossChainToken * Recover previous type changes * Address preMint specs * feat(cct-sdk): Add deploy evm token pool + type/version resolution * add remarks ts doc comment * Address PR comments * add lockfile to fix ci issue * Add comments
* Better separation of concerns and abstractions * CCT: Add version dispatch + Transfer Ownership * Adjust with base * Address generic error types and doc examples * Fix linting * feat(cct-sdk): Add deploy evm token * Address PR comments * Address PR comments by fixing chain-specific types * feat(cct-sdk): Source chainlink/contracts-ccip artifacts (#303) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * Remove outdated bytecodes * feat(cct-sdk): Add CrossChainToken deployment + token versioning (#305) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * feat(cct-sdk): Add versioned Deploy Token (CCT + ERC20) * Remove outdated bytecodes * Deploy only CrossChainToken * Recover previous type changes * Address preMint specs * feat(cct-sdk): Add deploy evm token pool + type/version resolution * add remarks ts doc comment * Address PR comments * add lockfile to fix ci issue * Add comments * feat(cct-sdk): Add EVM deployLockbox operation (DAPP-10738) Vendor ERC20LockBox v2.0.0 artifacts; add the cached lockbox Interface + DeployLockbox op, wire generateUnsignedDeployLockbox/deployLockbox into EVMTokenManager, and document the LockRelease deploy sequence. * Address comments and linting
* Better separation of concerns and abstractions * CCT: Add version dispatch + Transfer Ownership * Adjust with base * Address generic error types and doc examples * Fix linting * feat(cct-sdk): Add deploy evm token * Address PR comments * Address PR comments by fixing chain-specific types * feat(cct-sdk): Source chainlink/contracts-ccip artifacts (#303) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * Remove outdated bytecodes * feat(cct-sdk): Add CrossChainToken deployment + token versioning (#305) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * feat(cct-sdk): Add versioned Deploy Token (CCT + ERC20) * Remove outdated bytecodes * Deploy only CrossChainToken * Recover previous type changes * Address preMint specs * feat(cct-sdk): Add deploy evm token pool + type/version resolution * add remarks ts doc comment * Address PR comments * add lockfile to fix ci issue * Add comments * feat(cct-sdk): Add EVM deployLockbox operation (DAPP-10738) Vendor ERC20LockBox v2.0.0 artifacts; add the cached lockbox Interface + DeployLockbox op, wire generateUnsignedDeployLockbox/deployLockbox into EVMTokenManager, and document the LockRelease deploy sequence. * feat(cct-sdk): Add EVM authorizeLockboxCallers operation (DAPP-10788) Add AuthorizeLockboxCallers op (wraps ERC20LockBox applyAuthorizedCallerUpdates) + tests, and wire generateUnsignedAuthorizeLockboxCallers/authorizeLockboxCallers into EVMTokenManager to complete the LockRelease flow. * Update doc
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * fix: get pool state tests * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * fix: address comments * fix: refactor solana ops * fix: package-lock file * fix: package script * fix: remove cct exports and add script to pack package including cct * fix: address comments * fix: address comments * fix: add comment
* Better separation of concerns and abstractions * CCT: Add version dispatch + Transfer Ownership * Adjust with base * Address generic error types and doc examples * Fix linting * feat(cct-sdk): Add deploy evm token * Address PR comments * Address PR comments by fixing chain-specific types * feat(cct-sdk): Source chainlink/contracts-ccip artifacts (#303) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * Remove outdated bytecodes * feat(cct-sdk): Add CrossChainToken deployment + token versioning (#305) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * feat(cct-sdk): Add versioned Deploy Token (CCT + ERC20) * Remove outdated bytecodes * Deploy only CrossChainToken * Recover previous type changes * Address preMint specs * feat(cct-sdk): Add deploy evm token pool + type/version resolution * add remarks ts doc comment * Address PR comments * add lockfile to fix ci issue * Add comments * feat(cct-sdk): Add EVM deployLockbox operation (DAPP-10738) Vendor ERC20LockBox v2.0.0 artifacts; add the cached lockbox Interface + DeployLockbox op, wire generateUnsignedDeployLockbox/deployLockbox into EVMTokenManager, and document the LockRelease deploy sequence. * feat(cct-sdk): Add EVM authorizeLockboxCallers operation (DAPP-10788) Add AuthorizeLockboxCallers op (wraps ERC20LockBox applyAuthorizedCallerUpdates) + tests, and wire generateUnsignedAuthorizeLockboxCallers/authorizeLockboxCallers into EVMTokenManager to complete the LockRelease flow. * refactor(cct-sdk): add validateNonZeroAddress + guard single-tx submit * feat(cct-sdk): EVM deploy verification + unify deploy ops * Address PR comments * Review pass
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig * feat: add get supported tokens op solana * fix: address followup comments * fix: address comments
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig * feat: add get supported tokens op solana * fix: address followup comments * fix: address comments * fix: add validateOptionalPublicKey and refactor test files * fix: update solana lifecycle * fix: remove dev build * fix: address comments * fix: params.additionalAddresses.length with eslint rule * fix: add TODO and validation test
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig * feat: add get supported tokens op solana * fix: address followup comments * fix: address comments * fix: add validateOptionalPublicKey and refactor test files * fix: update solana lifecycle * fix: remove dev build * feat: add configure allowlist op solana * fix: assert configure allowlist functions * fix: address comments * fix: params.additionalAddresses.length with eslint rule * fix: address comments
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig * feat: add get supported tokens op solana * fix: address followup comments * fix: address comments * fix: add validateOptionalPublicKey and refactor test files * fix: update solana lifecycle * fix: remove dev build * feat: add configure allowlist op solana * fix: assert configure allowlist functions * fix: address comments * fix: params.additionalAddresses.length with eslint rule * fix: address comments * feat: add remove from allowlist op solana * fix: add validations and test coverage * fix: add additional tsdoc
* Better separation of concerns and abstractions * CCT: Add version dispatch + Transfer Ownership * Adjust with base * Address generic error types and doc examples * Fix linting * feat(cct-sdk): Add deploy evm token * Address PR comments * Address PR comments by fixing chain-specific types * feat(cct-sdk): Source chainlink/contracts-ccip artifacts (#303) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * Remove outdated bytecodes * feat(cct-sdk): Add CrossChainToken deployment + token versioning (#305) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * feat(cct-sdk): Add versioned Deploy Token (CCT + ERC20) * Remove outdated bytecodes * Deploy only CrossChainToken * Recover previous type changes * Address preMint specs * feat(cct-sdk): Add deploy evm token pool + type/version resolution * add remarks ts doc comment * Address PR comments * add lockfile to fix ci issue * Add comments * feat(cct-sdk): Add EVM deployLockbox operation (DAPP-10738) Vendor ERC20LockBox v2.0.0 artifacts; add the cached lockbox Interface + DeployLockbox op, wire generateUnsignedDeployLockbox/deployLockbox into EVMTokenManager, and document the LockRelease deploy sequence. * feat(cct-sdk): Add EVM authorizeLockboxCallers operation (DAPP-10788) Add AuthorizeLockboxCallers op (wraps ERC20LockBox applyAuthorizedCallerUpdates) + tests, and wire generateUnsignedAuthorizeLockboxCallers/authorizeLockboxCallers into EVMTokenManager to complete the LockRelease flow. * refactor(cct-sdk): add validateNonZeroAddress + guard single-tx submit * feat(cct-sdk): EVM deploy verification + unify deploy ops * Address PR comments * Review pass * feat(cct-sdk): add cross-family Query read base (DAPP-10823) Query wires validate -> read so params are rejected before any RPC, mirroring how Operation.generate gates buildUnsigned on the write side. EVMQuery binds it to an EVMChain and owns getTypedContract, the single ethers -> ethers-abitype bridge that CCT read ops decode through. * feat(cct-sdk): add pool family type guards (DAPP-10823) BurnMintTokenPoolType / LockReleaseTokenPoolType split TOKEN_POOL_TYPES by ABI family, and isLockReleaseTokenPoolType narrows to the lock/release set per getTokenPoolFamily. * feat(cct-sdk): add EVM getTokenPoolState read op (DAPP-10823) Reads a pool's admin state across v1.5.0-v2.0.0 through the getters each version has: one reader per generation, dispatched explicitly rather than floor-matched, so adding a pool version fails to compile instead of silently inheriting a reader. The result is a union discriminated by version, then by type for a lock/release pool's lockBox. v1.5.0 has no getTokenDecimals, so legacy decimals come from the token. * feat(cct-sdk): expose getTokenPoolState on EVMTokenManager (DAPP-10823) Also groups the operation fields by area (token / token admin registry / token pool / lockbox), matching SolanaTokenManager. * refactor(cct-sdk): move SolanaQuery onto the shared Query base (DAPP-10823) GetTokenPoolState gains name + validate and drops its params-conditional result: read now resolves to the union, which removes a query override that only re-typed the base's two steps, along with the two casts that conditional return required. Caller narrowing moves to SolanaTokenManager.getTokenPoolState overloads, so call sites and inferred types are unchanged. * Address PR comments * Address PR comments
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig * feat: add get supported tokens op solana * fix: address followup comments * fix: address comments * fix: add validateOptionalPublicKey and refactor test files * fix: update solana lifecycle * fix: remove dev build * feat: add configure allowlist op solana * fix: assert configure allowlist functions * fix: address comments * fix: params.additionalAddresses.length with eslint rule * fix: address comments * feat: add remove from allowlist op solana * fix: add validations and test coverage * fix: add additional tsdoc * feat: add init chain remote config op solana * fix: throw empty buffer * fix: update tsdoc * fix: address comments
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig * feat: add get supported tokens op solana * fix: address followup comments * fix: address comments * fix: add validateOptionalPublicKey and refactor test files * fix: update solana lifecycle * fix: remove dev build * feat: add configure allowlist op solana * fix: assert configure allowlist functions * fix: address comments * fix: params.additionalAddresses.length with eslint rule * fix: address comments * feat: add remove from allowlist op solana * fix: add validations and test coverage * fix: add additional tsdoc * feat: add init chain remote config op solana * fix: throw empty buffer * fix: update tsdoc * feat: add edit chain remote config op solana * fix: refactor wallet params * fix: address comments * fix: address comments
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig * feat: add get supported tokens op solana * fix: address followup comments * fix: address comments * fix: add validateOptionalPublicKey and refactor test files * fix: update solana lifecycle * fix: remove dev build * feat: add configure allowlist op solana * fix: assert configure allowlist functions * fix: address comments * fix: params.additionalAddresses.length with eslint rule * fix: address comments * feat: add remove from allowlist op solana * fix: add validations and test coverage * fix: add additional tsdoc * feat: add init chain remote config op solana * fix: throw empty buffer * fix: update tsdoc * feat: add edit chain remote config op solana * fix: refactor wallet params * feat: add delete chain remote config op solana * fix: address comments * fix: address comments * fix: address comments
* Better separation of concerns and abstractions * CCT: Add version dispatch + Transfer Ownership * Adjust with base * Address generic error types and doc examples * Fix linting * feat(cct-sdk): Add deploy evm token * Address PR comments * Address PR comments by fixing chain-specific types * feat(cct-sdk): Source chainlink/contracts-ccip artifacts (#303) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * Remove outdated bytecodes * feat(cct-sdk): Add CrossChainToken deployment + token versioning (#305) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * feat(cct-sdk): Add versioned Deploy Token (CCT + ERC20) * Remove outdated bytecodes * Deploy only CrossChainToken * Recover previous type changes * Address preMint specs * feat(cct-sdk): Add deploy evm token pool + type/version resolution * add remarks ts doc comment * Address PR comments * add lockfile to fix ci issue * Add comments * feat(cct-sdk): Add EVM deployLockbox operation (DAPP-10738) Vendor ERC20LockBox v2.0.0 artifacts; add the cached lockbox Interface + DeployLockbox op, wire generateUnsignedDeployLockbox/deployLockbox into EVMTokenManager, and document the LockRelease deploy sequence. * feat(cct-sdk): Add EVM authorizeLockboxCallers operation (DAPP-10788) Add AuthorizeLockboxCallers op (wraps ERC20LockBox applyAuthorizedCallerUpdates) + tests, and wire generateUnsignedAuthorizeLockboxCallers/authorizeLockboxCallers into EVMTokenManager to complete the LockRelease flow. * refactor(cct-sdk): add validateNonZeroAddress + guard single-tx submit * feat(cct-sdk): EVM deploy verification + unify deploy ops * Address PR comments * Review pass * feat(cct-sdk): add cross-family Query read base (DAPP-10823) Query wires validate -> read so params are rejected before any RPC, mirroring how Operation.generate gates buildUnsigned on the write side. EVMQuery binds it to an EVMChain and owns getTypedContract, the single ethers -> ethers-abitype bridge that CCT read ops decode through. * feat(cct-sdk): add pool family type guards (DAPP-10823) BurnMintTokenPoolType / LockReleaseTokenPoolType split TOKEN_POOL_TYPES by ABI family, and isLockReleaseTokenPoolType narrows to the lock/release set per getTokenPoolFamily. * feat(cct-sdk): add EVM getTokenPoolState read op (DAPP-10823) Reads a pool's admin state across v1.5.0-v2.0.0 through the getters each version has: one reader per generation, dispatched explicitly rather than floor-matched, so adding a pool version fails to compile instead of silently inheriting a reader. The result is a union discriminated by version, then by type for a lock/release pool's lockBox. v1.5.0 has no getTokenDecimals, so legacy decimals come from the token. * feat(cct-sdk): expose getTokenPoolState on EVMTokenManager (DAPP-10823) Also groups the operation fields by area (token / token admin registry / token pool / lockbox), matching SolanaTokenManager. * refactor(cct-sdk): move SolanaQuery onto the shared Query base (DAPP-10823) GetTokenPoolState gains name + validate and drops its params-conditional result: read now resolves to the union, which removes a query override that only re-typed the base's two steps, along with the two casts that conditional return required. Caller narrowing moves to SolanaTokenManager.getTokenPoolState overloads, so call sites and inferred types are unchanged. * Address PR comments * feat(cct-sdk): Add register token evm op --------- Co-authored-by: mervin-link <tvc-mervin.villaceran@smartcontract.com>
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig * feat: add get supported tokens op solana * fix: address followup comments * fix: address comments * fix: add validateOptionalPublicKey and refactor test files * fix: update solana lifecycle * fix: remove dev build * feat: add configure allowlist op solana * fix: assert configure allowlist functions * fix: address comments * fix: params.additionalAddresses.length with eslint rule * fix: address comments * feat: add remove from allowlist op solana * fix: add validations and test coverage * fix: add additional tsdoc * feat: add init chain remote config op solana * fix: throw empty buffer * fix: update tsdoc * feat: add edit chain remote config op solana * fix: refactor wallet params * feat: add delete chain remote config op solana * fix: migrate solana ops to use parse * fix: update tsdoc
* Better separation of concerns and abstractions * CCT: Add version dispatch + Transfer Ownership * Adjust with base * Address generic error types and doc examples * Fix linting * feat(cct-sdk): Add deploy evm token * Address PR comments * Address PR comments by fixing chain-specific types * feat(cct-sdk): Source chainlink/contracts-ccip artifacts (#303) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * Remove outdated bytecodes * feat(cct-sdk): Add CrossChainToken deployment + token versioning (#305) * feat(cct-sdk): Source token + pool abi/bytecode from contracts-ccip * feat(cct-sdk): Add versioned Deploy Token (CCT + ERC20) * Remove outdated bytecodes * Deploy only CrossChainToken * Recover previous type changes * Address preMint specs * feat(cct-sdk): Add deploy evm token pool + type/version resolution * add remarks ts doc comment * Address PR comments * add lockfile to fix ci issue * Add comments * feat(cct-sdk): Add EVM deployLockbox operation (DAPP-10738) Vendor ERC20LockBox v2.0.0 artifacts; add the cached lockbox Interface + DeployLockbox op, wire generateUnsignedDeployLockbox/deployLockbox into EVMTokenManager, and document the LockRelease deploy sequence. * feat(cct-sdk): Add EVM authorizeLockboxCallers operation (DAPP-10788) Add AuthorizeLockboxCallers op (wraps ERC20LockBox applyAuthorizedCallerUpdates) + tests, and wire generateUnsignedAuthorizeLockboxCallers/authorizeLockboxCallers into EVMTokenManager to complete the LockRelease flow. * refactor(cct-sdk): add validateNonZeroAddress + guard single-tx submit * feat(cct-sdk): EVM deploy verification + unify deploy ops * Address PR comments * Review pass * feat(cct-sdk): add cross-family Query read base (DAPP-10823) Query wires validate -> read so params are rejected before any RPC, mirroring how Operation.generate gates buildUnsigned on the write side. EVMQuery binds it to an EVMChain and owns getTypedContract, the single ethers -> ethers-abitype bridge that CCT read ops decode through. * feat(cct-sdk): add pool family type guards (DAPP-10823) BurnMintTokenPoolType / LockReleaseTokenPoolType split TOKEN_POOL_TYPES by ABI family, and isLockReleaseTokenPoolType narrows to the lock/release set per getTokenPoolFamily. * feat(cct-sdk): add EVM getTokenPoolState read op (DAPP-10823) Reads a pool's admin state across v1.5.0-v2.0.0 through the getters each version has: one reader per generation, dispatched explicitly rather than floor-matched, so adding a pool version fails to compile instead of silently inheriting a reader. The result is a union discriminated by version, then by type for a lock/release pool's lockBox. v1.5.0 has no getTokenDecimals, so legacy decimals come from the token. * feat(cct-sdk): expose getTokenPoolState on EVMTokenManager (DAPP-10823) Also groups the operation fields by area (token / token admin registry / token pool / lockbox), matching SolanaTokenManager. * refactor(cct-sdk): move SolanaQuery onto the shared Query base (DAPP-10823) GetTokenPoolState gains name + validate and drops its params-conditional result: read now resolves to the union, which removes a query override that only re-typed the base's two steps, along with the two casts that conditional return required. Caller narrowing moves to SolanaTokenManager.getTokenPoolState overloads, so call sites and inferred types are unchanged. * Address PR comments * feat(cct-sdk): Add register token evm op * feat(cct-sdk): Add transfer admin evm op * docs(cct-sdk): document ZeroAddress cancellation behavior and add role distinction warning to transferAdmin execute method * feat(cct-sdk): Add accept admin evm op (#328) * feat(cct-sdk): Add accept admin evm op * feat(cct-sdk): Add get token admin registry config evm query (#335) * feat(cct-sdk): Add get token admin registry config evm op * docs(cct-sdk): add ZeroAddress caveat to GetTokenAdminRegistryResult type alias Clarify that administrator may be ZeroAddress for pending-acceptance state; guide callers to test with === ZeroAddress instead of truthiness to avoid silently missing the pending-registration case. * feat(cct-sdk): Add get supported tokens evm query (#336) * feat(cct-sdk): Add get supported tokens evm query * docs+types(cct-sdk): add default page size and explicit result type to getSupportedTokens - Document that page parameter defaults to 1000 tokens per call - Add explicit GetSupportedTokensResult type export for surface parity with sibling ops and Solana variant - Makes the intent clearer and provides consistency across CCT query operations * fix: use GetSupportedTokensResult --------- Co-authored-by: aelmanaa <aelmanaa@users.noreply.github.com> Co-authored-by: mervin-link <tvc-mervin.villaceran@smartcontract.com> --------- Co-authored-by: aelmanaa <aelmanaa@users.noreply.github.com> Co-authored-by: mervin-link <tvc-mervin.villaceran@smartcontract.com> --------- Co-authored-by: aelmanaa <aelmanaa@users.noreply.github.com> Co-authored-by: mervin-link <tvc-mervin.villaceran@smartcontract.com> --------- Co-authored-by: aelmanaa <aelmanaa@users.noreply.github.com> Co-authored-by: mervin-link <tvc-mervin.villaceran@smartcontract.com>
* feat: add deploy token op solana * feat: add deploy token pool op solana * fix: add wallet and authority assertion * fix: add tsdoc * fix: add tsdoc * feat: add create token account op solana * fix: group ops in SolanaTokenManager * fix: address comments * fix: remove helper function and override execute * fix: address comments * fix: address comments * fix: refactor validators * fix: export pool programs and type * fix: add validateAuthorityMatchesWallet * fix: use validateAuthorityMatchesWallet * fix: add @remarks to deploy token pool * feat: add get token pool state op solana * fix: address comments * fix: let decodeTokenPoolState catch errors * fix: add parsePublicKey helper * fix: move getTokenPoolState declaration * fix: address comments * fix: export resolveTokenMint * feat: add register token op solana * fix: update register token tests * feat: add propose admin op solana * fix: get pool state tests * feat: add accept admin op solana * fix: address comments * fix: update tsdoc for register admin * fix: update tsdoc for register admin * fix: address comments * fix: address comments * fix: address comments * fix: update err.context.reason test * feat: add get token admin registry config op solana * fix: group tests * fix: merge conflicts * fix: remove console logs * fix: refactor test * fix: add tsdoc for decodeTokenAdminRegistryConfig * feat: add get supported tokens op solana * fix: address followup comments * fix: address comments * fix: add validateOptionalPublicKey and refactor test files * fix: update solana lifecycle * fix: remove dev build * feat: add configure allowlist op solana * fix: assert configure allowlist functions * fix: address comments * fix: params.additionalAddresses.length with eslint rule * fix: address comments * feat: add remove from allowlist op solana * fix: add validations and test coverage * fix: add additional tsdoc * feat: add init chain remote config op solana * fix: throw empty buffer * fix: update tsdoc * feat: add edit chain remote config op solana * fix: refactor wallet params * feat: add delete chain remote config op solana * fix: migrate solana ops to use parse * feat: add set rate limit op solana * fix: defaults to zeroes if enabled is false * fix: update tsdoc * feat(cct-sdk): Add set chain rate limit admin op solana (#347) feat: add set rate limit admin op solana
* fix: refactor solana parse with validations * fix: remove TODO * fix: address comments
* feat: add apply chian updates op solana * fix: add explicitly types * fix: address comments * fix: update tsdoc * fix: address comments * feat(cct-sdk): Add append remote pool addresses op solana (#352) * feat: add append remote pool addresses op solana * fix: address comments
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
-- Integration branch for CCT-SDK --