Skip to content

Commit

Permalink
add static strings to translation
Browse files Browse the repository at this point in the history
  • Loading branch information
ukane-philemon authored and chappjc committed Feb 6, 2023
1 parent f9c55ec commit ad4cfff
Show file tree
Hide file tree
Showing 7 changed files with 51 additions and 30 deletions.
7 changes: 4 additions & 3 deletions client/webserver/site/src/js/dexsettings.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import BasePage from './basepage'
import State from './state'
import { postJSON } from './http'
import * as forms from './forms'
import * as intl from './locales'

import {
app,
Expand Down Expand Up @@ -194,15 +195,15 @@ export default class DexSettingsPage extends BasePage {
switch (exchange.connectionStatus) {
case ConnectionStatus.Connected:
displayIcons(true)
page.connectionStatus.textContent = 'Connected'
page.connectionStatus.textContent = intl.prep(intl.ID_CONNECTED)
break
case ConnectionStatus.Disconnected:
displayIcons(false)
page.connectionStatus.textContent = 'Disconnected'
page.connectionStatus.textContent = intl.prep(intl.ID_DISCONNECTED)
break
case ConnectionStatus.InvalidCert:
displayIcons(false)
page.connectionStatus.textContent = 'Disconnected - Invalid Certificate'
page.connectionStatus.textContent = `${intl.prep(intl.ID_DISCONNECTED)} - ${intl.prep(intl.ID_INVALID_CERTIFICATE)}`
}
}
}
Expand Down
4 changes: 2 additions & 2 deletions client/webserver/site/src/js/doc.ts
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,7 @@ export default class Doc {
* conventional units and returns the fiat value as a string.
*/
static formatFiatConversion (vAtomic: number, rate: number, unitInfo?: UnitInfo): string {
if (!rate || rate === 0) return 'unavailable'
if (!rate || rate === 0) return intl.prep(intl.ID_UNAVAILABLE)
const prec = 2
const [v] = convertToConventional(vAtomic, unitInfo)
const value = v * rate
Expand Down Expand Up @@ -553,7 +553,7 @@ export class WalletIcons {
const i = this.icons
Doc.hide(i.locked, i.unlocked, i.sleeping, i.syncing, i.disabled)
Doc.show(i.nowallet)
if (this.status) this.status.textContent = intl.prep(intl.ID_NOWALLET)
if (this.status) this.status.textContent = intl.prep(intl.ID_NO_WALLET)
}

/* set the icons to indicate that the wallet is disabled */
Expand Down
18 changes: 8 additions & 10 deletions client/webserver/site/src/js/forms.ts
Original file line number Diff line number Diff line change
Expand Up @@ -780,7 +780,7 @@ export class ConfirmRegistrationForm {
return
}
if (this.feeAssetID === null) {
page.regErr.innerText = 'You must select a valid wallet for the fee payment'
page.regErr.innerText = intl.prep(intl.ID_SELECT_WALLET_FOR_FEE_PAYMENT)
Doc.show(page.regErr)
return
}
Expand Down Expand Up @@ -1316,7 +1316,7 @@ export class AccelerateOrderForm {
Doc.show(page.accelerateMsgDiv, page.accelerateSuccess)
this.success()
} else {
page.accelerateErr.textContent = `Error accelerating order: ${res.msg}`
page.accelerateErr.textContent = intl.prep(intl.ID_ORDER_ACCELERATION_ERR_MSG, { msg: res.msg })
Doc.hide(page.earlyAccelerationDiv)
Doc.show(page.accelerateErr, page.configureAccelerationDiv)
}
Expand All @@ -1339,7 +1339,7 @@ export class AccelerateOrderForm {
this.order = order
const res = await postJSON('/api/preaccelerate', order.id)
if (!app().checkResponse(res)) {
page.preAccelerateErr.textContent = `Error accelerating order: ${res.msg}`
page.preAccelerateErr.textContent = intl.prep(intl.ID_ORDER_ACCELERATION_ERR_MSG, { msg: res.msg })
Doc.hide(page.accelerateMainDiv, page.accelerateSuccess)
Doc.show(page.accelerateMsgDiv, page.preAccelerateErr)
return
Expand Down Expand Up @@ -1376,7 +1376,7 @@ export class AccelerateOrderForm {
const res = await postJSON('/api/accelerationestimate', req)
loaded()
if (!app().checkResponse(res)) {
page.accelerateErr.textContent = `Error estimating acceleration fee: ${res.msg}`
page.accelerateErr.textContent = intl.prep(intl.ID_ORDER_ACCELERATION_FEE_ERR_MSG, { msg: res.msg })
Doc.show(page.accelerateErr)
return
}
Expand All @@ -1401,7 +1401,6 @@ export class DEXAddressForm {
form: HTMLElement
success: (xc: Exchange, cert: string) => void
pwCache: PasswordCache | null
defaultTLSText: string
page: Record<string, PageElement>
knownExchanges: HTMLElement[]
dexToUpdate?: string
Expand All @@ -1410,11 +1409,10 @@ export class DEXAddressForm {
this.form = form
this.success = success
this.pwCache = pwCache || null
this.defaultTLSText = 'none selected'

const page = this.page = Doc.parseTemplate(form)

page.selectedCert.textContent = this.defaultTLSText
page.selectedCert.textContent = intl.prep(intl.ID_NONE_SELECTED)
Doc.bind(page.certFile, 'change', () => this.onCertFileChange())
Doc.bind(page.removeCert, 'click', () => this.clearCertFile())
Doc.bind(page.addCert, 'click', () => page.certFile.click())
Expand Down Expand Up @@ -1482,7 +1480,7 @@ export class DEXAddressForm {
Doc.hide(page.err)
addr = addr || page.addr.value
if (addr === '') {
page.err.textContent = 'DEX address cannot be empty'
page.err.textContent = intl.prep(intl.ID_EMPTY_DEX_ADDRESS_MSG)
Doc.show(page.err)
return
}
Expand Down Expand Up @@ -1518,7 +1516,7 @@ export class DEXAddressForm {
const res = await postJSON(endpoint, req)
loaded()
if (!app().checkResponse(res)) {
if (res.msg === 'certificate required') {
if (String(res.msg).includes('certificate required')) {
Doc.show(page.needCert)
} else {
page.err.textContent = res.msg
Expand Down Expand Up @@ -1552,7 +1550,7 @@ export class DEXAddressForm {
clearCertFile () {
const page = this.page
page.certFile.value = ''
page.selectedCert.textContent = this.defaultTLSText
page.selectedCert.textContent = intl.prep(intl.ID_NONE_SELECTED)
Doc.hide(page.removeCert)
Doc.show(page.addCert)
}
Expand Down
40 changes: 32 additions & 8 deletions client/webserver/site/src/js/locales.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export const ID_SET_BUTTON_BUY = 'ID_SET_BUTTON_BUY'
export const ID_SET_BUTTON_SELL = 'ID_SET_BUTTON_SELL'
export const ID_OFF = 'ID_OFF'
export const ID_READY = 'ID_READY'
export const ID_NOWALLET = 'ID_NOWALLET'
export const ID_NO_WALLET = 'ID_NO_WALLET'
export const ID_DISABLED_MSG = 'ID_DISABLED_MSG'
export const ID_WALLET_SYNC_PROGRESS = 'ID_WALLET_SYNC_PROGRESS'
export const ID_HIDE_ADDITIONAL_SETTINGS = 'ID_HIDE_ADDITIONAL_SETTINGS'
Expand Down Expand Up @@ -94,6 +94,18 @@ export const ID_MATCH_STATUS_REFUND_PENDING = 'MATCH_STATUS_REFUND_PENDING'
export const ID_MATCH_STATUS_REDEEM_PENDING = 'MATCH_STATUS_REDEEM_PENDING'
export const ID_MATCH_STATUS_COMPLETE = 'MATCH_STATUS_COMPLETE'
export const ID_TAKER_FOUND_MAKER_REDEMPTION = 'TAKER_FOUND_MAKER_REDEMPTION'
export const ID_OPEN_WALLET_ERR_MSG = 'OPEN_WALLET_ERR_MSG'
export const ID_ORDER_ACCELERATION_FEE_ERR_MSG = 'ORDER_ACCELERATION_FEE_ERR_MSG'
export const ID_ORDER_ACCELERATION_ERR_MSG = 'ORDER_ACCELERATION_FEE_ERR_MSG'
export const ID_CONNECTED = 'CONNECTED'
export const ID_DISCONNECTED = 'DISCONNECTED'
export const ID_INVALID_CERTIFICATE = 'INVALID_CERTIFICATE'
export const ID_CONFIRMATIONS = 'ID_CONFIRMATIONS'
export const ID_TAKER = 'TAKER'
export const ID_MAKER = 'MAKER'
export const ID_EMPTY_DEX_ADDRESS_MSG = 'EMPTY_DEX_ADDRESS_MSG'
export const ID_SELECT_WALLET_FOR_FEE_PAYMENT = 'SELECT_WALLET_FOR_FEE_PAYMENT'
export const ID_UNAVAILABLE = 'UNAVAILABLE'

export const enUS: Locale = {
[ID_NO_PASS_ERROR_MSG]: 'password cannot be empty',
Expand All @@ -104,7 +116,7 @@ export const enUS: Locale = {
[ID_OFF]: 'off',
[ID_READY]: 'ready',
[ID_LOCKED]: 'locked',
[ID_NOWALLET]: 'no wallet',
[ID_NO_WALLET]: 'no wallet',
[ID_WALLET_SYNC_PROGRESS]: 'wallet is {{ syncProgress }}% synced',
[ID_HIDE_ADDITIONAL_SETTINGS]: 'hide additional settings',
[ID_SHOW_ADDITIONAL_SETTINGS]: 'show additional settings',
Expand Down Expand Up @@ -189,7 +201,19 @@ export const enUS: Locale = {
[ID_MATCH_STATUS_REDEEM_PENDING]: 'Redeem PENDING',
[ID_MATCH_STATUS_REDEMPTION_CONFIRMED]: 'Redemption Confirmed',
[ID_MATCH_STATUS_COMPLETE]: 'Complete',
[ID_TAKER_FOUND_MAKER_REDEMPTION]: 'redeemed by {{ makerAddr }}'
[ID_TAKER_FOUND_MAKER_REDEMPTION]: 'redeemed by {{ makerAddr }}',
[ID_OPEN_WALLET_ERR_MSG]: 'Error opening wallet: {{ msg }}',
[ID_ORDER_ACCELERATION_FEE_ERR_MSG]: 'Error estimating acceleration fee: {{ msg }}',
[ID_ORDER_ACCELERATION_ERR_MSG]: 'Error accelerating order: {{ msg }}',
[ID_CONNECTED]: 'Connected',
[ID_DISCONNECTED]: 'Disconnected',
[ID_INVALID_CERTIFICATE]: 'Invalid Certificate',
[ID_CONFIRMATIONS]: 'confirmations',
[ID_TAKER]: 'Taker',
[ID_MAKER]: 'Maker',
[ID_UNAVAILABLE]: 'unavailable',
[ID_EMPTY_DEX_ADDRESS_MSG]: 'DEX address cannot be empty',
[ID_SELECT_WALLET_FOR_FEE_PAYMENT]: 'You must select a valid wallet for fee payment'
}

export const ptBR: Locale = {
Expand All @@ -201,7 +225,7 @@ export const ptBR: Locale = {
[ID_OFF]: 'desligar',
[ID_READY]: 'pronto',
[ID_LOCKED]: 'trancado',
[ID_NOWALLET]: 'sem carteira',
[ID_NO_WALLET]: 'sem carteira',
[ID_WALLET_SYNC_PROGRESS]: 'carteira está {{ syncProgress }}% sincronizada',
[ID_HIDE_ADDITIONAL_SETTINGS]: 'esconder configurações adicionais',
[ID_SHOW_ADDITIONAL_SETTINGS]: 'mostrar configurações adicionais',
Expand Down Expand Up @@ -255,7 +279,7 @@ export const zhCN: Locale = {
[ID_OFF]: '关闭',
[ID_READY]: '准备就绪', // alt. 准备好
[ID_LOCKED]: '锁',
[ID_NOWALLET]: '未连接钱包', // alt. 没有钱包
[ID_NO_WALLET]: '未连接钱包', // alt. 没有钱包
[ID_WALLET_SYNC_PROGRESS]: '钱包同步进度{{ syncProgress }}%',
[ID_HIDE_ADDITIONAL_SETTINGS]: '隐藏其它设置',
[ID_SHOW_ADDITIONAL_SETTINGS]: '显示其它设置',
Expand Down Expand Up @@ -295,7 +319,7 @@ export const plPL: Locale = {
[ID_OFF]: 'wyłączony',
[ID_READY]: 'gotowy',
[ID_LOCKED]: 'zablokowany',
[ID_NOWALLET]: 'brak portfela',
[ID_NO_WALLET]: 'brak portfela',
[ID_WALLET_SYNC_PROGRESS]: 'portfel zsynchronizowany w {{ syncProgress }}%',
[ID_HIDE_ADDITIONAL_SETTINGS]: 'ukryj dodatkowe ustawienia',
[ID_SHOW_ADDITIONAL_SETTINGS]: 'pokaż dodatkowe ustawienia',
Expand Down Expand Up @@ -349,7 +373,7 @@ export const deDE: Locale = {
[ID_OFF]: 'aus',
[ID_READY]: 'bereit',
[ID_LOCKED]: 'gesperrt',
[ID_NOWALLET]: 'kein Wallet',
[ID_NO_WALLET]: 'kein Wallet',
[ID_WALLET_SYNC_PROGRESS]: 'Wallet ist zu {{ syncProgress }}% synchronisiert',
[ID_HIDE_ADDITIONAL_SETTINGS]: 'zusätzliche Einstellungen ausblenden',
[ID_SHOW_ADDITIONAL_SETTINGS]: 'zusätzliche Einstellungen anzeigen',
Expand Down Expand Up @@ -407,7 +431,7 @@ export const ar: Locale = {
[ID_OFF]: 'إيقاف',
[ID_READY]: 'متوقف',
[ID_LOCKED]: 'مقفل',
[ID_NOWALLET]: 'لا توجد أي محفظة',
[ID_NO_WALLET]: 'لا توجد أي محفظة',
[ID_WALLET_SYNC_PROGRESS]: 'تمت مزامنة {{ syncProgress }}% المحفظة',
[ID_HIDE_ADDITIONAL_SETTINGS]: 'إخفاء الإعدادات الإضافية',
[ID_SHOW_ADDITIONAL_SETTINGS]: 'عرض الإعدادات الإضافية',
Expand Down
6 changes: 3 additions & 3 deletions client/webserver/site/src/js/order.ts
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ export default class OrderPage extends BasePage {
tmpl.orderPortion.textContent = orderPortion

if (match.side === OrderUtil.Maker) {
tmpl.side.textContent = 'Maker'
tmpl.side.textContent = intl.prep(intl.ID_MAKER)
Doc.show(
tmpl.makerSwapYou,
tmpl.makerRedeemYou,
Expand All @@ -200,7 +200,7 @@ export default class OrderPage extends BasePage {
tmpl.makerRedeemThem
)
} else {
tmpl.side.textContent = 'Taker'
tmpl.side.textContent = intl.prep(intl.ID_TAKER)
Doc.hide(
tmpl.makerSwapYou,
tmpl.makerRedeemYou,
Expand Down Expand Up @@ -453,7 +453,7 @@ export default class OrderPage extends BasePage {
* */
function confirmationString (coin: Coin) {
if (!coin.confs || coin.confs.required === 0) return ''
return `${coin.confs.count} / ${coin.confs.required} confirmations`
return `${coin.confs.count} / ${coin.confs.required} ${intl.prep(intl.ID_CONFIRMATIONS)}`
}

// makerSwapCoin return's the maker's swap coin.
Expand Down
4 changes: 1 addition & 3 deletions client/webserver/site/src/js/settings.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,11 @@ export default class SettingsPage extends BasePage {
dexAddrForm: forms.DEXAddressForm
currentForm: PageElement
pwCache: PasswordCache
defaultTLSText: string
keyup: (e: KeyboardEvent) => void

constructor (body: HTMLElement) {
super()
this.body = body
this.defaultTLSText = 'none selected'
const page = this.page = Doc.idDescendants(body)

this.forms = Doc.applySelector(page.forms, ':scope > form')
Expand Down Expand Up @@ -208,7 +206,7 @@ export default class SettingsPage extends BasePage {
clearAccountFile () {
const page = this.page
page.accountFile.value = ''
page.selectedAccount.textContent = 'none selected'
page.selectedAccount.textContent = intl.prep(intl.ID_NONE_SELECTED)
Doc.hide(page.removeAccount)
Doc.show(page.addAccount)
}
Expand Down
2 changes: 1 addition & 1 deletion client/webserver/site/src/js/wallets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -847,7 +847,7 @@ export default class WalletsPage extends BasePage {
if (app().checkResponse(res)) {
this.openWalletSuccess(assetID)
} else {
this.showOpen(assetID, `Error opening wallet: ${res.msg}`)
this.showOpen(assetID, intl.prep(intl.ID_OPEN_WALLET_ERR_MSG, { msg: res.msg }))
}
}
}
Expand Down

0 comments on commit ad4cfff

Please sign in to comment.