diff --git a/client/webserver/locales/en-us.go b/client/webserver/locales/en-us.go index c1bd8b2f5f..f06714266d 100644 --- a/client/webserver/locales/en-us.go +++ b/client/webserver/locales/en-us.go @@ -28,7 +28,7 @@ var EnUS = map[string]string{ "Skip Registration": "No account (view-only mode)", "Confirm Registration": "Confirm Registration and Bonding", "app_pw_reg": "Enter your app password to confirm DEX registration and bond creation.", - "reg_confirm_submit": `When you submit this form, funds will be spent from your wallet to post a fidelity bond, which is redeemable by you in the future.`, + "reg_confirm_submit": `When you submit this form, funds from your wallet will be temporarily locked into a fidelity bond contract, which is redeemable by you in the future.`, "bond_strength": "Bond Strength", "target_tier": "Target Tier", "target_tier_tooltip": "This is the target account tier you wish to maintain. Set to zero if you wish to disable tier maintenance (do not post new bonds).", @@ -205,13 +205,25 @@ var EnUS = map[string]string{ "Progress": "Progress", "remaining": "remaining", "2 Fund your Wallet": "2: Fund your Wallet", - "whatsabond": "Fidelity bonds are time-locked funds redeemable only by you, but in the future. This is meant to combat disruptive behavior like backing out on swaps.", + "bond_definition": "A fidelity bond is funds temporarily locked in an on-chain contract. After the contract expires, your wallet will reclaim the funds.", + "bonds_can_be_revoked": "Bonds can be revoked if an account engages in continued disruptive behavior, such as backing out on a swap. Revoked bonds can be re-activated with continued normal trading activity.", + "bigger_bonds_higher_limit": "You can create larger bonds to increase your trading tier, enabling trading of larger quantities at a time. Larger bonds also increase your capacity for violations before trading privileges are suspended.", + "limits_reputation": "Trading limits are also increased as you establish reputation by engaging in normal trading activity and successfully completing matches.", + "wallet_bond_reserves": "Your wallet will automatically reserve the funds necessary to keep you bonded at your selected trading tier, and will broadcast new bonds to replace expiring ones. You can lower or raise your trading tier in the exchange's settings panel. Set your trading tier to zero to disable your account (once your existing bonds expire).", + "Got it": "Got it", + "Trading Limits": "Trading Limits", + "What is a fidelity bond": "What is a fidelity bond?", + "order_form_remaining_limit": ` lots remaining in tier trading limit`, + "Parcel Size": "Parcel Size", + "Trading Limit": "Trading Limit", + "Current Usage": "Current Usage", + "score_factors": "Increase your score by successfully completing trades. Failure to act on a trade will decrease your score.", "Bond amount": "Bond amount", "Reserves for tx fees": "Funds to reserve for transaction fees to maintain your bonds", "Tx Fee Balance": "Transaction Fee Balance:", "Your Deposit Address": "Your Wallet's Deposit Address", "Send enough for bonds": `Make sure you send enough to also cover network fees. You may deposit as much as you like to your wallet, since only the bond amount will be used in the next step. The deposit must confirm to proceed.`, - "Send enough with estimate": `Deposit at least XYZ to cover network fees and overlap periods when a bond is expired (but waiting for refund) and another must be posted. You may deposit as much as you like to your wallet, since only the required amount will be used in the next step. The deposit must confirm to proceed.`, + "Send enough with estimate": `Deposit at least XYZ to cover your bond and fees. You may deposit as much as you like to your wallet, since only the required amount will be used in the next step. The wallet may require a confirmation on the new funds before proceeding.`, "Send funds for token": `Deposit at least XYZ and XYZ to also cover fees. You may deposit as much as you like to your wallet, since only the required amount will be used in the next step. The deposit must confirm to proceed.`, "add a different server": "add a different server", "Add a custom server": "Add a custom server", @@ -281,7 +293,6 @@ var EnUS = map[string]string{ "Bond Lock": "Bond Lock", "USD": "USD", "Fee Reserves": "Fee Reserves", - "Trading Limits": "Trading Limits", "Select your bond asset": "Select your bond asset", "choose a different asset": "choose a different asset", "current_bonding_asset": `Using for bonding`, diff --git a/client/webserver/site/src/html/dexsettings.tmpl b/client/webserver/site/src/html/dexsettings.tmpl index 58e0002651..360523a042 100644 --- a/client/webserver/site/src/html/dexsettings.tmpl +++ b/client/webserver/site/src/html/dexsettings.tmpl @@ -3,6 +3,9 @@ {{$passwordIsCached := .UserInfo.PasswordIsCached}}
+
+ +
{{.Exchange.Host}}
diff --git a/client/webserver/site/src/html/forms.tmpl b/client/webserver/site/src/html/forms.tmpl index 1c834913c4..9446a92281 100644 --- a/client/webserver/site/src/html/forms.tmpl +++ b/client/webserver/site/src/html/forms.tmpl @@ -227,117 +227,139 @@ {{end}} {{define "regAssetForm"}} -
-
- [[[Choose your trading tier]]] - [[[trading_tier_message]]] -
-
- - -
-
-
-
-
-
[[[current_bonding_asset]]]
-
[[[choose a different asset]]]
-
-
-
[[[Select your bond asset]]]
- - - - - - - - - - - - - + + + +
[[[Asset]]][[[Bond Lock]]]Trading Limits
-
-
- - -
-
-
-
-
-
- - -
-
- ~ - - [[[USD]]] -
-
-
-
-
- - - - +
+
[[[What is a fidelity bond]]]
+
    +
  • + [[[bond_definition]]] +
  • +
  • + [[[bonds_can_be_revoked]]] +
  • +
  • + [[[bigger_bonds_higher_limit]]] +
  • +
  • + [[[limits_reputation]]] +
  • +
  • + [[[wallet_bond_reserves]]] +
  • +
+
+
[[[Got it]]]
+
+
+
+
+
+ [[[Choose your trading tier]]] + [[[trading_tier_message]]] +
+
+ + +
+
+
+
+
+
[[[current_bonding_asset]]]
+
[[[choose a different asset]]]
+
+
+
[[[Select your bond asset]]]
+
What's a bond?
+ + + + + + + + + + + + - - -
[[[Asset]]][[[Bond Lock]]][[[Trading Limits]]]
+
+
+ + +
+
-
- +
+
+
+ + +
+
~ - + [[[USD]]] - -
-
-
[[[Other Trading Limits]]]
- - - -
-
-
-
[[[All markets at]]]
- -
-
- - - - - - - - - - - - - -
[[[Market]]][[[:title:lot_size]]]
-
- - -
-
- - - -
-
+
+
+
+
+ + + + +
+
+ + ~ + + [[[USD]]] + +
+
+
[[[Other Trading Limits]]]
+ + + +
+
+
+
[[[All markets at]]]
+ +
+
+ + + + + + + + + + + + + +
[[[Market]]][[[:title:lot_size]]]
+
+ + - +
+
+ + + +
+
+
-
-
-
- - [[[whatsabond]]] +
{{end}} @@ -405,7 +427,7 @@

-
+
[[[reg_confirm_submit]]]
@@ -612,19 +634,18 @@
- [[[Balance]]]: + [[[Available Balance]]]: XYZ
-
- - [[[whatsabond]]] -
- [[[Bond amount]]]: + Bond Lock: XYZ
+
+ Includes for your bond and for transaction fees. +
[[[Send enough with estimate]]] {{- /* NOTE: includes totalForBond */}} [[[Send funds for token]]]
@@ -746,5 +767,8 @@
+
+ [[[score_factors]]] +
{{end}} diff --git a/client/webserver/site/src/html/markets.tmpl b/client/webserver/site/src/html/markets.tmpl index 48d752a730..e519fc4291 100644 --- a/client/webserver/site/src/html/markets.tmpl +++ b/client/webserver/site/src/html/markets.tmpl @@ -380,10 +380,8 @@ {{- /* ORDER LIMITS */ -}} -
- 0 parcels - of the 0 unused parcels in your - tier 0 trading limit +
+ [[[order_form_remaining_limit]]]
@@ -426,25 +424,25 @@
{{- /* REPUTATION */ -}} -
+
- Parcel Size + [[[Parcel Size]]] - lots + [[[lots]]]
- +
- + ~ @@ -454,23 +452,23 @@
- Trading Tier + [[[Trading Tier]]]
- Trading Limit - parcels + [[[Trading Limit]]] + lots
- Current usage + [[[Current Usage]]] %
-
+
{{template "reputationMeter"}}
diff --git a/client/webserver/site/src/js/dexsettings.ts b/client/webserver/site/src/js/dexsettings.ts index 9a40867a70..0158818207 100644 --- a/client/webserver/site/src/js/dexsettings.ts +++ b/client/webserver/site/src/js/dexsettings.ts @@ -63,7 +63,7 @@ export default class DexSettingsPage extends BasePage { this.newWalletForm = new forms.NewWalletForm( page.newWalletForm, - assetID => this.newWalletCreated(assetID), + assetID => this.newWalletCreated(assetID, this.confirmRegisterForm.tier), this.pwCache, () => this.runAnimation(this.regAssetForm, page.regAssetForm) ) @@ -168,7 +168,7 @@ export default class DexSettingsPage extends BasePage { this.progressTierFormWithSyncedFundedWallet(assetID) return } - this.walletWaitForm.setWallet(wallet, fees) + this.walletWaitForm.setWallet(assetID, fees, this.confirmRegisterForm.tier) this.showForm(page.walletWait) } @@ -389,7 +389,7 @@ export default class DexSettingsPage extends BasePage { return '' } - async newWalletCreated (assetID: number) { + async newWalletCreated (assetID: number, tier: number) { this.regAssetForm.refresh() const user = await app().fetchUser() if (!user) return @@ -407,7 +407,7 @@ export default class DexSettingsPage extends BasePage { return } - this.walletWaitForm.setWallet(wallet, bondsFeeBuffer) + this.walletWaitForm.setWallet(assetID, bondsFeeBuffer, tier) await this.showForm(page.walletWait) } } diff --git a/client/webserver/site/src/js/forms.ts b/client/webserver/site/src/js/forms.ts index 2743e0ed5c..ee1ab23580 100644 --- a/client/webserver/site/src/js/forms.ts +++ b/client/webserver/site/src/js/forms.ts @@ -927,6 +927,16 @@ export class FeeAssetSelectionForm { Doc.show(page.assetSelection) }) + Doc.bind(page.whatsABond, 'click', () => { + Doc.hide(page.mainBondingForm) + Doc.show(page.whatsABondPanel) + }) + + Doc.bind(page.bondGotIt, 'click', () => { + Doc.show(page.mainBondingForm) + Doc.hide(page.whatsABondPanel) + }) + app().registerNoteFeeder({ createwallet: (note: WalletCreationNote) => { if (note.topic === 'QueuedCreationSuccess') this.walletCreated(note.assetID) @@ -984,7 +994,7 @@ export class FeeAssetSelectionForm { const r = cFactor(qui) / cFactor(bui) const quoteLot = mkt.lotsize * mkt.spot.rate / OrderUtil.RateEncodingFactor * r const s = Doc.formatCoinValue(quoteLot, qui) - marketTmpl.quoteLotSize.textContent = `(~${s} ${qui})` + marketTmpl.quoteLotSize.textContent = `(~${s} ${qui.conventional.unit})` } return n } @@ -1205,17 +1215,18 @@ export class WalletWaitForm { } /* setWallet must be called before showing the WalletWaitForm. */ - setWallet (wallet: WalletState, bondFeeBuffer: number) { - this.assetID = wallet.assetID + setWallet (assetID: number, bondFeeBuffer: number, tier: number) { + this.assetID = assetID this.progressCache = [] this.progressed = false this.funded = false this.bondFeeBuffer = bondFeeBuffer // in case we're a token, parent's balance must cover this.parentAssetSynced = false const page = this.page - const asset = app().assets[wallet.assetID] - this.parentID = asset.token?.parentID - const bondAsset = this.bondAsset = this.xc.bondAssets[asset.symbol] + const asset = app().assets[assetID] + const { symbol, unitInfo: ui, wallet: { balance: bal, address, synced, syncProgress }, token } = asset + this.parentID = token?.parentID + const bondAsset = this.bondAsset = this.xc.bondAssets[symbol] const symbolize = (el: PageElement, asset: SupportedAsset) => { Doc.empty(el) @@ -1223,26 +1234,30 @@ export class WalletWaitForm { } for (const span of Doc.applySelector(this.form, '.unit')) symbolize(span, asset) - page.logo.src = Doc.logoPath(asset.symbol) - page.depoAddr.textContent = wallet.address - page.fee.textContent = Doc.formatCoinValue(bondAsset.amount, asset.unitInfo) + page.logo.src = Doc.logoPath(symbol) + page.depoAddr.textContent = address - Doc.hide(page.syncUncheck, page.syncCheck, page.balUncheck, page.balCheck, page.syncRemainBox) + Doc.hide(page.syncUncheck, page.syncCheck, page.balUncheck, page.balCheck, page.syncRemainBox, page.bondCostBreakdown) Doc.show(page.balanceBox) + let bondLock = 2 * bondAsset.amount * tier if (bondFeeBuffer > 0) { - // overlap * increment + buffer - page.totalForBond.textContent = Doc.formatCoinValue(2 * bondAsset.amount + bondFeeBuffer, asset.unitInfo) + Doc.show(page.bondCostBreakdown) + page.bondLockNoFees.textContent = Doc.formatCoinValue(bondLock, ui) + page.bondLockFees.textContent = Doc.formatCoinValue(bondFeeBuffer, ui) + bondLock += bondFeeBuffer + const need = Math.max(bondLock - bal.available + bal.reservesDeficit, 0) + page.totalForBond.textContent = Doc.formatCoinValue(need, ui) Doc.hide(page.sendEnough) // generic msg when no fee info available when Doc.hide(page.txFeeBox, page.sendEnoughForToken, page.txFeeBalanceBox) // for tokens Doc.hide(page.sendEnoughWithEst) // non-tokens - if (asset.token) { + if (token) { Doc.show(page.txFeeBox, page.sendEnoughForToken, page.txFeeBalanceBox) - const parentAsset = app().assets[asset.token.parentID] + const parentAsset = app().assets[token.parentID] page.txFee.textContent = Doc.formatCoinValue(bondFeeBuffer, parentAsset.unitInfo) page.parentFees.textContent = Doc.formatCoinValue(bondFeeBuffer, parentAsset.unitInfo) - page.tokenFees.textContent = Doc.formatCoinValue(bondAsset.amount, asset.unitInfo) + page.tokenFees.textContent = Doc.formatCoinValue(need, ui) symbolize(page.txFeeUnit, parentAsset) symbolize(page.parentUnit, parentAsset) symbolize(page.parentBalUnit, parentAsset) @@ -1250,19 +1265,20 @@ export class WalletWaitForm { } else { Doc.show(page.sendEnoughWithEst) } + page.fee.textContent = Doc.formatCoinValue(bondLock, ui) } else { // show some generic message with no amounts, this shouldn't happen... show wallet error? Doc.show(page.sendEnough) } - Doc.show(wallet.synced ? page.syncCheck : wallet.syncProgress >= 1 ? page.syncSpinner : page.syncUncheck) - Doc.show(wallet.balance.available >= 2 * bondAsset.amount + bondFeeBuffer ? page.balCheck : page.balUncheck) + Doc.show(synced ? page.syncCheck : syncProgress >= 1 ? page.syncSpinner : page.syncUncheck) + Doc.show(bal.available >= 2 * bondAsset.amount + bondFeeBuffer ? page.balCheck : page.balUncheck) - page.progress.textContent = (wallet.syncProgress * 100).toFixed(1) + page.progress.textContent = (syncProgress * 100).toFixed(1) - if (wallet.synced) { + if (synced) { this.progressed = true } - this.reportBalance(wallet.assetID) + this.reportBalance(assetID) } /* diff --git a/client/webserver/site/src/js/markets.ts b/client/webserver/site/src/js/markets.ts index cb76348ba4..38f86b98c3 100644 --- a/client/webserver/site/src/js/markets.ts +++ b/client/webserver/site/src/js/markets.ts @@ -747,6 +747,11 @@ export default class MarketsPage extends BasePage { Doc.setVis(await showOrderForm(), page.orderForm, page.orderTypeBttns) + if (this.market) { + const { auth: { effectiveTier, pendingStrength } } = this.market.dex + Doc.setVis(effectiveTier > 0 || pendingStrength > 0, page.tradingLimits, page.reputationMeter) + } + if (app().user.experimental && this.mmRunning === undefined) { const marketMakingStatus = await app().getMarketMakingStatus() this.mmRunning = marketMakingStatus.running @@ -1129,7 +1134,6 @@ export default class MarketsPage extends BasePage { this.updateTitle() this.reputationMeter.setHost(dex.host) this.updateReputation() - this.updateTradeLimits(null) this.loadUserOrders() } @@ -1257,7 +1261,6 @@ export default class MarketsPage extends BasePage { }] } this.drawChartLines() - this.updateTradeLimits(order) if (!show || !adjusted || !order.qty) { page.orderPreview.textContent = '' this.drawChartLines() @@ -1272,24 +1275,6 @@ export default class MarketsPage extends BasePage { else this.preBuy() } - updateTradeLimits (ord: TradeForm | null) { - const { page, market: { cfg: mkt } } = this - if (!ord) { - page.orderFormParcels.textContent = '0' - return - } - const [msgRate, conversionRate] = this.anyRate() - - let parcelWeight = ord.qty / mkt.lotsize - if (!ord.isLimit && !ord.sell) { - if (conversionRate) parcelWeight = ord.qty / conversionRate / mkt.lotsize - else parcelWeight = 1 / mkt.parcelsize - } - - if (!ord.isLimit || ord.tifnow || ((ord.sell && ord.rate < msgRate) || (!ord.sell && ord.rate > msgRate))) parcelWeight *= 2 - page.orderFormParcels.textContent = (parcelWeight / mkt.parcelsize).toFixed(1) - } - /** * preSell populates the max order message for the largest available sell. */ @@ -2432,9 +2417,10 @@ export default class MarketsPage extends BasePage { const tier = strongTier(auth) page.tradingTier.textContent = String(tier) const [usedParcels, parcelLimit] = tradingLimits(host) - page.tradingLimit.textContent = parcelLimit.toFixed(1) - page.limitUsage.textContent = (usedParcels / parcelLimit * 100).toFixed(1) - page.orderParcelsRemain.textContent = (parcelLimit - usedParcels).toFixed(1) + page.tradingLimit.textContent = String(parcelLimit * mkt.parcelsize) + page.limitUsage.textContent = parcelLimit > 0 ? (usedParcels / parcelLimit * 100).toFixed(1) : '0' + + page.orderLimitRemain.textContent = ((parcelLimit - usedParcels) * mkt.parcelsize).toFixed(1) page.orderTradingTier.textContent = String(tier) this.reputationMeter.update() @@ -2462,14 +2448,18 @@ export default class MarketsPage extends BasePage { } handleMatchNote (note: MatchNote) { - this.updateReputation() const mord = this.metaOrders[note.orderID] + const match = note.match if (!mord) return this.refreshActiveOrders() - else if (mord.ord.type === OrderUtil.Market && note.match.status === OrderUtil.NewlyMatched) { // Update the average market rate display. + else if (mord.ord.type === OrderUtil.Market && match.status === OrderUtil.NewlyMatched) { // Update the average market rate display. // Fetch and use the updated order. const ord = app().order(note.orderID) if (ord) mord.details.rate.textContent = mord.header.rate.textContent = this.marketOrderRateString(ord, this.market) } + if ( + (match.side === OrderUtil.MatchSideMaker && match.status === OrderUtil.MakerRedeemed) || + (match.side === OrderUtil.MatchSideTaker && match.status === OrderUtil.MatchComplete) + ) this.updateReputation() if (app().canAccelerateOrder(mord.ord)) Doc.show(mord.details.accelerateBttn) else Doc.hide(mord.details.accelerateBttn) } @@ -2479,9 +2469,8 @@ export default class MarketsPage extends BasePage { * used to update a user's order's status. */ handleOrderNote (note: OrderNote) { - this.updateReputation() - const order = note.order - const mord = this.metaOrders[order.id] + const ord = note.order + const mord = this.metaOrders[ord.id] // - If metaOrder doesn't exist for the given order it means it was created // via dexcctl and the GUI isn't aware of it or it was an inflight order. // refreshActiveOrders must be called to grab this order. @@ -2490,19 +2479,24 @@ export default class MarketsPage extends BasePage { // and unlocked) has now become ready to tick. The active orders section // needs to be refreshed. const wasInflight = note.topic === 'AsyncOrderFailure' || note.topic === 'AsyncOrderSubmitted' - if (!mord || wasInflight || (note.topic === 'OrderLoaded' && order.readyToTick)) { + if (!mord || wasInflight || (note.topic === 'OrderLoaded' && ord.readyToTick)) { return this.refreshActiveOrders() } const oldStatus = mord.ord.status - mord.ord = order + mord.ord = ord if (note.topic === 'MissedCancel') Doc.show(mord.details.cancelBttn) - if (order.filled === order.qty) Doc.hide(mord.details.cancelBttn) - if (app().canAccelerateOrder(order)) Doc.show(mord.details.accelerateBttn) + if (ord.filled === ord.qty) Doc.hide(mord.details.cancelBttn) + if (app().canAccelerateOrder(ord)) Doc.show(mord.details.accelerateBttn) else Doc.hide(mord.details.accelerateBttn) this.updateMetaOrder(mord) // Only reset markers if there is a change, since the chart is redrawn. - if ((oldStatus === OrderUtil.StatusEpoch && order.status === OrderUtil.StatusBooked) || - (oldStatus === OrderUtil.StatusBooked && order.status > OrderUtil.StatusBooked)) this.setDepthMarkers() + if ( + (oldStatus === OrderUtil.StatusEpoch && ord.status === OrderUtil.StatusBooked) || + (oldStatus === OrderUtil.StatusBooked && ord.status > OrderUtil.StatusBooked) + ) { + this.setDepthMarkers() + this.updateReputation() + } } /* @@ -2709,7 +2703,6 @@ export default class MarketsPage extends BasePage { const page = this.page const qty = convertToAtoms(page.mktBuyField.value || '', this.market.quoteUnitInfo.conventional.conversionFactor) const gap = this.midGap() - this.updateTradeLimits(this.parseOrder()) if (!gap || !qty) { page.mktBuyLots.textContent = '0' page.mktBuyScore.textContent = '0' diff --git a/client/webserver/site/src/js/register.ts b/client/webserver/site/src/js/register.ts index b90cd42100..b8df3f17d3 100644 --- a/client/webserver/site/src/js/register.ts +++ b/client/webserver/site/src/js/register.ts @@ -77,7 +77,7 @@ export default class RegistrationPage extends BasePage { this.newWalletForm = new NewWalletForm( page.newWalletForm, - assetID => this.newWalletCreated(assetID), + assetID => this.newWalletCreated(assetID, this.confirmRegisterForm.tier), this.pwCache, () => this.animateRegAsset(page.newWalletForm) ) @@ -106,7 +106,7 @@ export default class RegistrationPage extends BasePage { this.animateConfirmForm(page.regAssetForm) return } - this.walletWaitForm.setWallet(wallet, bondsFeeBuffer) + this.walletWaitForm.setWallet(assetID, bondsFeeBuffer, tier) slideSwap(page.regAssetForm, page.walletWait) return } @@ -207,7 +207,7 @@ export default class RegistrationPage extends BasePage { await app().loadPage('markets') } - async newWalletCreated (assetID: number) { + async newWalletCreated (assetID: number, tier: number) { this.regAssetForm.refresh() const user = await app().fetchUser() if (!user) return @@ -222,7 +222,7 @@ export default class RegistrationPage extends BasePage { return } - this.walletWaitForm.setWallet(wallet, bondsFeeBuffer) + this.walletWaitForm.setWallet(assetID, bondsFeeBuffer, tier) await slideSwap(page.newWalletForm, page.walletWait) } } diff --git a/client/webserver/site/src/js/settings.ts b/client/webserver/site/src/js/settings.ts index ddc5707644..0a6221fd5e 100644 --- a/client/webserver/site/src/js/settings.ts +++ b/client/webserver/site/src/js/settings.ts @@ -86,7 +86,7 @@ export default class SettingsPage extends BasePage { this.animateConfirmForm(page.regAssetForm) return } - this.walletWaitForm.setWallet(wallet, bondsFeeBuffer) + this.walletWaitForm.setWallet(assetID, bondsFeeBuffer, tier) this.slideSwap(page.walletWait) return } @@ -106,7 +106,7 @@ export default class SettingsPage extends BasePage { // Create a new wallet this.newWalletForm = new forms.NewWalletForm( page.newWalletForm, - assetID => this.newWalletCreated(assetID), + assetID => this.newWalletCreated(assetID, this.confirmRegisterForm.tier), this.pwCache, () => this.animateRegAsset(page.newWalletForm) ) @@ -254,7 +254,7 @@ export default class SettingsPage extends BasePage { return res.feeBuffer } - async newWalletCreated (assetID: number) { + async newWalletCreated (assetID: number, tier: number) { const user = await app().fetchUser() if (!user) return const page = this.page @@ -269,7 +269,7 @@ export default class SettingsPage extends BasePage { return } - this.walletWaitForm.setWallet(wallet, bondsFeeBuffer) + this.walletWaitForm.setWallet(assetID, bondsFeeBuffer, tier) this.slideSwap(page.walletWait) }