Send token screen validation library
npm install @exodus/send-validationSend token screen validation library
```
yarn add @exodus/send-validation
`javascript
import { createValidationHook } from '@exodus/send-validation'
import INSUFFICIENT_FUNDS from '@exodus/send-validation/validations/INSUFFICIENT_FUNDS'
// generate hook with custom list from validators folder
// it needs to add getMessage or getTopComponent or getComponent function to render description content
const useSendFormValidation = createValidationHook({
validations: [
{
...INSUFFICIENT_FUNDS,
getMessage: ({ asset }) =>
Your wallet doesn't have enough ${asset.displayName} to start this transfer.,
getTopComponent: ({ asset }) =>
getComponent: ({ asset }) =>
},
],
})
const Component = () => {
// arguments list should satisfy all used validators methods
const { hasError, failedValidation } = useSendFormValidation({
asset,
availableBalance,
sendAmount,
})
// failedValidation.id === 'INSUFFICIENT_FUNDS'
// failedValidation.topValidationComponent ===
// failedValidation.message === 'Your wallet doesn't...'
// failedValidation.bottomValidationComponent ===
}
`
`
{
id: String,
type: VALIDATION_TYPES,
shouldValidate: () => Boolean,
isValid: async () => Boolean
getTopComponent?: () =>
getMessage: () => String
getComponent?: () =>
}
``