Files
assets/internal/info/coin.go
T
2204745e34 Add Injective assets (#27191)
* 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>
2024-01-12 15:49:54 +04:00

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
}