From 9d9e6ef9bdbc14a3eda5cb00b7b418ad88993861 Mon Sep 17 00:00:00 2001 From: MaysWind Date: Mon, 20 Jan 2025 22:04:37 +0800 Subject: [PATCH] migrate amount filter page to composition API and typescript --- src/locales/helpers.ts | 18 +- .../mobile/transactions/AmountFilterPage.vue | 247 ++++++++---------- 2 files changed, 127 insertions(+), 138 deletions(-) diff --git a/src/locales/helpers.ts b/src/locales/helpers.ts index f824b8fa..64afa0eb 100644 --- a/src/locales/helpers.ts +++ b/src/locales/helpers.ts @@ -1188,7 +1188,7 @@ export function useI18n() { return formatAmount(value, numberFormatOptions); } - function getFormattedAmountWithCurrency(value: number | string, currencyCode?: string, notConvertValue?: boolean, currencyDisplayType?: CurrencyDisplayType): string | null { + function getFormattedAmountWithCurrency(value: number | string, currencyCode?: string | false, notConvertValue?: boolean, currencyDisplayType?: CurrencyDisplayType): string | null { if (!isNumber(value) && !isString(value)) { return null; } @@ -1215,13 +1215,17 @@ export function useI18n() { } } + let finalCurrencyCode = ''; + if (!isBoolean(currencyCode) && !currencyCode) { - currencyCode = userStore.currentUserDefaultCurrency; + finalCurrencyCode = userStore.currentUserDefaultCurrency; } else if (isBoolean(currencyCode) && !currencyCode) { - currencyCode = ''; + finalCurrencyCode = ''; + } else { + finalCurrencyCode = currencyCode; } - if (!currencyCode) { + if (!finalCurrencyCode) { return textualValue; } @@ -1229,9 +1233,9 @@ export function useI18n() { currencyDisplayType = getCurrentCurrencyDisplayType(); } - const currencyUnit = getCurrencyUnitName(currencyCode, isPlural); - const currencyName = getCurrencyName(currencyCode); - return appendCurrencySymbol(textualValue, currencyDisplayType, currencyCode, currencyUnit, currencyName, isPlural); + const currencyUnit = getCurrencyUnitName(finalCurrencyCode, isPlural); + const currencyName = getCurrencyName(finalCurrencyCode); + return appendCurrencySymbol(textualValue, currencyDisplayType, finalCurrencyCode, currencyUnit, currencyName, isPlural); } function getFormattedExchangeRateAmount(value: number | string): string { diff --git a/src/views/mobile/transactions/AmountFilterPage.vue b/src/views/mobile/transactions/AmountFilterPage.vue index 0a6373fe..771b3d2a 100644 --- a/src/views/mobile/transactions/AmountFilterPage.vue +++ b/src/views/mobile/transactions/AmountFilterPage.vue @@ -1,10 +1,10 @@