added a mapping to replace invalid characters on voucher symbols
This commit is contained in:
parent
2cd875eb4d
commit
8585203c0a
@ -15,6 +15,11 @@ var (
|
|||||||
logg = logging.NewVanilla().WithDomain("vouchers").WithContextKey("SessionId")
|
logg = logging.NewVanilla().WithDomain("vouchers").WithContextKey("SessionId")
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// symbolReplacements holds mappings of invalid symbols → valid ones
|
||||||
|
var symbolReplacements = map[string]string{
|
||||||
|
"USD₮": "USDT",
|
||||||
|
}
|
||||||
|
|
||||||
// VoucherMetadata helps organize data fields
|
// VoucherMetadata helps organize data fields
|
||||||
type VoucherMetadata struct {
|
type VoucherMetadata struct {
|
||||||
Symbols string
|
Symbols string
|
||||||
@ -23,13 +28,24 @@ type VoucherMetadata struct {
|
|||||||
Addresses string
|
Addresses string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// sanitizeSymbol replaces known invalid token symbols with normalized ones
|
||||||
|
func sanitizeSymbol(symbol string) string {
|
||||||
|
if replacement, ok := symbolReplacements[symbol]; ok {
|
||||||
|
return replacement
|
||||||
|
}
|
||||||
|
return symbol
|
||||||
|
}
|
||||||
|
|
||||||
// ProcessVouchers converts holdings into formatted strings
|
// ProcessVouchers converts holdings into formatted strings
|
||||||
func ProcessVouchers(holdings []dataserviceapi.TokenHoldings) VoucherMetadata {
|
func ProcessVouchers(holdings []dataserviceapi.TokenHoldings) VoucherMetadata {
|
||||||
var data VoucherMetadata
|
var data VoucherMetadata
|
||||||
var symbols, balances, decimals, addresses []string
|
var symbols, balances, decimals, addresses []string
|
||||||
|
|
||||||
for i, h := range holdings {
|
for i, h := range holdings {
|
||||||
symbols = append(symbols, fmt.Sprintf("%d:%s", i+1, h.TokenSymbol))
|
// normalize token symbol before use
|
||||||
|
cleanSymbol := sanitizeSymbol(h.TokenSymbol)
|
||||||
|
|
||||||
|
symbols = append(symbols, fmt.Sprintf("%d:%s", i+1, cleanSymbol))
|
||||||
|
|
||||||
// Scale down the balance
|
// Scale down the balance
|
||||||
scaledBalance := ScaleDownBalance(h.Balance, h.TokenDecimals)
|
scaledBalance := ScaleDownBalance(h.Balance, h.TokenDecimals)
|
||||||
|
Loading…
Reference in New Issue
Block a user