diff --git a/src/views/desktop/ExchangeRatesPage.vue b/src/views/desktop/ExchangeRatesPage.vue index f34db852..0c4f4891 100644 --- a/src/views/desktop/ExchangeRatesPage.vue +++ b/src/views/desktop/ExchangeRatesPage.vue @@ -64,32 +64,46 @@ - + - {{ $t('Currency') }} - {{ $t('Amount') }} + +
+ {{ $t('Currency') }} + + {{ $t('Amount') }} +
+ - + - {{ $t('No exchange rates data') }} + {{ $t('No exchange rates data') }} - + - {{ exchangeRate.currencyDisplayName }} - {{ exchangeRate.currencyCode }} +
+ {{ exchangeRate.currencyDisplayName }} + {{ exchangeRate.currencyCode }} + + + {{ $t('Set As Baseline') }} + + {{ getDisplayConvertedAmount(exchangeRate, isEnableThousandsSeparator) }} +
- {{ getDisplayConvertedAmount(exchangeRate) }}
@@ -110,7 +124,12 @@ import { useSettingsStore } from '@/stores/setting.js'; import { useUserStore } from '@/stores/user.js'; import { useExchangeRatesStore } from '@/stores/exchangeRates.js'; -import { getConvertedAmount, getDisplayExchangeRateAmount } from '@/lib/currency.js'; +import { isNumber } from '@/lib/common.js'; +import { + getConvertedAmount, + stringCurrencyToNumeric, + getDisplayExchangeRateAmount +} from '@/lib/currency.js'; import { mdiRefresh @@ -199,13 +218,18 @@ export default { return 0; } }, - getDisplayConvertedAmount(toExchangeRate) { + getDisplayConvertedAmount(toExchangeRate, isEnableThousandsSeparator) { if (this.baseAmount === '') { return ''; } const rateStr = this.getConvertedAmount(toExchangeRate).toString(); - return getDisplayExchangeRateAmount(rateStr, this.isEnableThousandsSeparator); + return getDisplayExchangeRateAmount(rateStr, isEnableThousandsSeparator); + }, + setAsBaseline(currency, toExchangeRate) { + const rateStr = this.getConvertedAmount(toExchangeRate).toString(); + this.baseCurrency = currency; + this.baseAmount = getDisplayExchangeRateAmount(rateStr, false) } } } @@ -215,4 +239,13 @@ export default { .exchange-rates-summary-skeleton .v-skeleton-loader__text { margin: 0; } + +.exchange-rates-table tr.exchange-rates-table-row-data .hover-display { + display: none; +} + +.exchange-rates-table tr.exchange-rates-table-row-data:hover .hover-display { + display: grid; +} +