mirror of
https://github.com/luxfi/assets.git
synced 2026-07-27 04:37:14 +00:00
* Create logo .png * Create logo.png * Create info.json * Create logo.png * Create info.json * Create info.json * Create logo.png * Create info.json * Create logo.png * Create info.json * Update info.json * Update info.json * Update info.json * Update info.json * Update info.json * Create logo.png * Delete logo .png * tokens * tokens * tokens * tokens * tokens * tokens --------- Co-authored-by: Denis <136321897+defisaur@users.noreply.github.com>
48 lines
953 B
Go
48 lines
953 B
Go
package info
|
|
|
|
import (
|
|
"github.com/trustwallet/assets-go-libs/validation"
|
|
)
|
|
|
|
func ValidateCoin(c CoinModel, allowedTags []string) error {
|
|
if err := ValidateCoinRequiredKeys(c); err != nil {
|
|
return err
|
|
}
|
|
|
|
// All fields validated for nil and can be safety used.
|
|
compErr := validation.NewErrComposite()
|
|
if err := ValidateCoinType(*c.Type); err != nil {
|
|
compErr.Append(err)
|
|
}
|
|
|
|
if err := ValidateDecimals(*c.Decimals); err != nil {
|
|
compErr.Append(err)
|
|
}
|
|
|
|
if err := ValidateStatus(*c.Status); err != nil {
|
|
compErr.Append(err)
|
|
}
|
|
|
|
if err := ValidateTags(c.Tags, allowedTags); err != nil {
|
|
compErr.Append(err)
|
|
}
|
|
|
|
if err := ValidateDescription(*c.Description); err != nil {
|
|
compErr.Append(err)
|
|
}
|
|
|
|
if err := ValidateDescriptionWebsite(*c.Description, *c.Website); err != nil {
|
|
compErr.Append(err)
|
|
}
|
|
|
|
if err := ValidateLinks(c.Links); err != nil {
|
|
compErr.Append(err)
|
|
}
|
|
|
|
if compErr.Len() > 0 {
|
|
return compErr
|
|
}
|
|
|
|
return nil
|
|
}
|