Validation
Validation ensures your widget is correctly structured and prevents runtime errors.Validation Functions
The SDK exports two main functions for validation:createMetadata(metadata: Metadata): ValidatedMetadata
Takes a Metadata object, validates it completely, and returns a processed ValidatedMetadata object.
- Validates: Structure, action types, parameters, chains, ABI compatibility
- Processes: Infers parameter types from ABI, adds validation metadata
- Throws:
RelayerValidationErrororInvalidMetadataErrorif validation fails - Returns:
ValidatedMetadatawith additional processed information
validateMetadata(metadata: Metadata): ValidationResult
Validates metadata without throwing errors, returning a detailed result object.
What Gets Validated?
Metadata Structure
Action Validation
BlockchainAction Validation
TransferAction Validation
HttpAction Validation
DynamicAction Validation
ActionFlow Validation
Parameter Validation
Chain Validation
Validation Examples
Valid Metadata
Common Validation Errors
Missing Required Fields
Parameter Mismatch
Invalid Chain Configuration
Missing BaseUrl for Dynamic Action
Error Handling Best Practices
1. Always Validate During Development
2. Use Try-Catch for Error Handling
3. Provide Detailed Error Information in Development
4. Use validateMetadata for Detailed Debugging
Integration with Development Tools
IDE Integration
Unit Testing
Proper validation ensures your widgets work reliably across all Relayer platforms and provides clear feedback during development. Always validate your metadata before deployment!
