diff --git a/admin-spa/src/routes/Settings/Store.tsx b/admin-spa/src/routes/Settings/Store.tsx index 34d80be..fdca450 100644 --- a/admin-spa/src/routes/Settings/Store.tsx +++ b/admin-spa/src/routes/Settings/Store.tsx @@ -200,7 +200,14 @@ export default function StoreDetailsPage() { .replace('.', settings.decimalSep) .replace(/\B(?=(\d{3})+(?!\d))/g, settings.thousandSep); - const symbol = settings.currency === 'IDR' ? 'Rp' : settings.currency === 'USD' ? '$' : '€'; + // Get currency symbol from currencies data, fallback to currency code + const currencyInfo = currencies.find((c: any) => c.code === settings.currency); + let symbol = settings.currency; // Default to currency code + + if (currencyInfo?.symbol && !currencyInfo.symbol.includes('&#')) { + // Use symbol only if it exists and doesn't contain HTML entities + symbol = currencyInfo.symbol; + } switch (settings.currencyPosition) { case 'left': @@ -223,6 +230,26 @@ export default function StoreDetailsPage() { onSave={handleSave} isLoading={isLoading} > + {/* Store Overview */} +
+ {(() => { + const currencyFlag = flagsData.find((f: any) => f.code === settings.currency); + const currencyInfo = currencies.find((c: any) => c.code === settings.currency); + const countryName = currencyFlag?.country || settings.country; + + return ( + <> +

+ 📍 Store Location: {countryName} +

+

+ Currency: {currencyInfo?.name || settings.currency} • Timezone: {settings.timezone} +

+ + ); + })()} +
+ {/* Store Identity */} + + updateSetting('storeTagline', e.target.value)} + placeholder="Quality products, delivered fast" + /> + + + - - updateSetting('storeTagline', e.target.value)} - placeholder="Quality products, delivered fast" - /> - - + {/* Brand */} + - - {/* Brand Colors */} - -
- updateSetting('primaryColor', color)} - /> +
+

Brand Colors

+
+ updateSetting('primaryColor', color)} + /> - updateSetting('accentColor', color)} - /> + updateSetting('accentColor', color)} + /> - updateSetting('errorColor', color)} - /> -
+ updateSetting('errorColor', color)} + /> +
-
- -

- Changes apply after saving -

+
+ +

+ Changes apply after saving +

+
@@ -562,26 +592,6 @@ export default function StoreDetailsPage() {
- - {/* Summary Card - Professional, No Flag */} -
- {(() => { - const currencyFlag = flagsData.find((f: any) => f.code === settings.currency); - const currencyInfo = currencies.find((c: any) => c.code === settings.currency); - const countryName = currencyFlag?.country || settings.country; - - return ( - <> -

- 📍 Store Location: {countryName} -

-

- Currency: {currencyInfo?.name || settings.currency} • Timezone: {settings.timezone} -

- - ); - })()} -
); }