-
Notifications
You must be signed in to change notification settings - Fork 0
feat(xcm): enable xcm on paseo testnet #35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
* rewrite useChainStore * unify util explorer url resolver * update presets
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||||||||
9ab7c6c to
dd91647
Compare
User description
Description
enable xcm bridge on paseo parachains
PR Type
Enhancement, Bug fix
Description
• Enhanced XCM (Cross-Chain Message) support with comprehensive Paseo testnet integration and barrier compliance
• Added dynamic network-aware destination filtering and asset selection for safer cross-chain transfers
• Improved chain connection stability with better error handling for ChainHead disjoint errors and graceful disconnection
• Enhanced explorer URL builder with support for multiple URL types (block, extrinsic, account, runtime)
• Optimized transaction state management with batched updates using
requestAnimationFrame• Added comprehensive XCM validation functions and network-specific configuration filtering
• Improved blockchain dashboard connection management with proper provider event handling
• Fixed author email typo in package.json
Changes walkthrough 📝
5 files
presets.ts
Enhanced XCM configuration with Paseo and Westend supportsrc/components/blockchain/builder/constants/presets.ts
• Added Westend system parachains (
westend_asset_hub,westend_bridge_hub, etc.) toXCM_DESTINATIONS• Enhanced
detectNetworkTypefunction with improved pattern matching and logging• Added comprehensive helper functions for network filtering
(
getDestinationsByNetwork,getSystemParachains,getParachains)•
Updated
XCM_NETWORK_CONFIGto enable full support for Paseo testnetwith strict filtering
• Added extensive XCM validation and suggestion
functions for safer cross-chain transfers
explorer.ts
Enhanced explorer URL builder with multiple types supportsrc/lib/utils/explorer.ts
• Enhanced
buildSubscanUrlfunction to support multiple URL types(
block,extrinsic,account,runtime)• Added robust fallback
mechanisms for invalid or missing explorer URLs
• Improved URL
validation and network name extraction for better explorer link
generation
useTransactionState.ts
Optimized transaction state management with batched updatessrc/components/blockchain/builder/hooks/useTransactionState.ts
• Improved batched state updates with
requestAnimationFramefor betterperformance
• Added proper cleanup and queue management for state
updates
• Enhanced state synchronization with refs to prevent stale
closures
ArgumentInput.tsx
Enhanced argument input with dynamic network-aware featuressrc/components/blockchain/builder/components/ArgumentInput.tsx
• Added dynamic XCM destination filtering based on selected network
compatibility
• Implemented network-specific asset selection with
proper symbol mapping
• Added network status indicators and enhanced
UI context for better user experience
• Integrated with
networkManagerfor dynamic network configuration
TransactionBuilder.tsx
Enhanced XCM Cross-Chain Transaction Support with Barrier Compliancesrc/components/blockchain/components/TransactionBuilder.tsx
• Added comprehensive XCM (Cross-Chain Message) support with barrier
compliance and network-specific validation
• Implemented
XcmTypeDetector class for network type detection, trust relationships,
and destination validation
• Enhanced transaction building with proper
XCM type handling and error messages with troubleshooting guidance
•
Replaced WalletConnector singleton with direct
web3Enable/web3FromAddress usage for wallet integration
2 files
useChainStore.ts
Improved chain connection stability and error handlingsrc/store/useChainStore.ts
• Added comprehensive error handling for ChainHead disjoint errors
with
isDisjointErrorhelper• Implemented proper cleanup mechanisms
with
destroy$subject andtakeUntiloperators• Enhanced connection
management with better error recovery and graceful disconnection
•
Added global unhandled rejection handler for disjoint errors to
prevent console spam
BlockchainDashboard.tsx
Improved blockchain dashboard connection managementsrc/components/blockchain/BlockchainDashboard.tsx
• Improved provider event handling with proper type checking before
attaching listeners
• Enhanced cleanup procedures for API connections
and providers
• Refactored status indicator component with better
configuration mapping
4 files
BlockExplorer.tsx
Added explorer URL utility importsrc/components/blockchain/components/BlockExplorer.tsx
• Added import for
buildSubscanUrlutility functionEventMonitor.tsx
Added explorer URL utility importsrc/components/blockchain/EventMonitor.tsx
• Added import for
buildSubscanUrlutility functionAccountBalance.tsx
Added explorer URL utility importsrc/components/blockchain/components/AccountBalance.tsx
• Added import for
buildSubscanUrlutility functionpackage.json
Fixed author email typopackage.json
• Fixed typo in author email from "codinsh@pm.me" to "codingsh@pm.me"