Skip to content

Commit 5d2dd39

Browse files
committed
add supported assets to token info
1 parent f4a0fec commit 5d2dd39

4 files changed

Lines changed: 13 additions & 9 deletions

File tree

client/asset/driver.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ func Register(assetID uint32, driver Driver) {
8282
// RegisterToken should be called to register tokens. If no nets are specified
8383
// the token will be registered for all networks. The user must invoke
8484
// SetNetwork to enable net-based filtering of package function output.
85-
func RegisterToken(tokenID uint32, token *dex.Token, walletDef *WalletDefinition, nets ...dex.Network) {
85+
func RegisterToken(tokenID uint32, token *dex.Token, walletDef *WalletDefinition, supportedVersions []uint32, nets ...dex.Network) {
8686
driversMtx.Lock()
8787
defer driversMtx.Unlock()
8888
if _, exists := tokens[tokenID]; exists {
@@ -94,8 +94,9 @@ func RegisterToken(tokenID uint32, token *dex.Token, walletDef *WalletDefinition
9494
}
9595
tokens[tokenID] = &nettedToken{
9696
Token: &Token{
97-
Token: token,
98-
Definition: walletDef,
97+
Token: token,
98+
Definition: walletDef,
99+
SupportedVersions: supportedVersions,
99100
},
100101
nets: nets,
101102
}

client/asset/eth/eth.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func registerToken(tokenID uint32, desc string, nets ...dex.Network) {
5353
asset.RegisterToken(tokenID, token.Token, &asset.WalletDefinition{
5454
Type: "token",
5555
Description: desc,
56-
}, nets...)
56+
}, SupportedTokenVersions, nets...)
5757
}
5858

5959
func init() {
@@ -138,6 +138,8 @@ var (
138138
},
139139
}
140140

141+
SupportedTokenVersions = []uint32{0} // Server versions that we can handle.
142+
141143
chainIDs = map[dex.Network]int64{
142144
dex.Mainnet: 1,
143145
dex.Testnet: 5, // Görli
@@ -492,11 +494,9 @@ func (w *ETHWallet) Info() *asset.WalletInfo {
492494
// Info returns basic information about the wallet and asset.
493495
func (w *TokenWallet) Info() *asset.WalletInfo {
494496
var bestVer uint32
495-
var vers []uint32
496497
netToken := w.token.NetTokens[w.net]
497498
if netToken != nil {
498499
for ver := range netToken.SwapContracts {
499-
vers = append(vers, ver)
500500
if ver > bestVer {
501501
bestVer = ver
502502
}
@@ -506,7 +506,7 @@ func (w *TokenWallet) Info() *asset.WalletInfo {
506506
return &asset.WalletInfo{
507507
Name: w.token.Name,
508508
Version: bestVer,
509-
SupportedVersions: vers,
509+
SupportedVersions: SupportedTokenVersions,
510510
UnitInfo: w.token.UnitInfo,
511511
MaxSwapsInTx: w.maxSwapsInTx,
512512
MaxRedeemsInTx: w.maxRedeemsInTx,

client/asset/interface.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,8 @@ type WalletDefinition struct {
198198
// Token combines the generic dex.Token with a WalletDefinition.
199199
type Token struct {
200200
*dex.Token
201-
Definition *WalletDefinition `json:"definition"`
201+
Definition *WalletDefinition `json:"definition"`
202+
SupportedVersions []uint32 `json:"supportedVersions"`
202203
}
203204

204205
// WalletInfo is auxiliary information about an ExchangeWallet.

client/webserver/site/src/js/registry.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,7 @@ export interface Token {
167167
name: string
168168
unitInfo: UnitInfo
169169
definition: WalletDefinition
170+
supportedVersions: number[]
170171
}
171172

172173
export interface WalletState {
@@ -189,7 +190,8 @@ export interface WalletState {
189190

190191
export interface WalletInfo {
191192
name: string
192-
version: number
193+
version: number // deprecated
194+
versions: number[] // new field for supported server versions
193195
availablewallets: WalletDefinition[]
194196
emptyidx: number
195197
unitinfo: UnitInfo

0 commit comments

Comments
 (0)