feat: three nuxt frontends, demo seed, rounding + money-exponent + rate-cast fixes, archived specs
This commit is contained in:
@@ -1,8 +1,24 @@
|
||||
import { en, zh } from "@vmall/shared/locales";
|
||||
import { en as enBase, zh as zhBase } from "@vmall/shared/locales";
|
||||
import { enExtra, zhExtra } from "./locales-extra";
|
||||
|
||||
function deepMerge<T extends Record<string, unknown>>(base: T, extra: T): T {
|
||||
const out: Record<string, unknown> = { ...base };
|
||||
for (const [k, v] of Object.entries(extra)) {
|
||||
const b = out[k];
|
||||
out[k] =
|
||||
b && v && typeof b === "object" && typeof v === "object"
|
||||
? deepMerge(b as Record<string, unknown>, v as Record<string, unknown>)
|
||||
: v;
|
||||
}
|
||||
return out as T;
|
||||
}
|
||||
|
||||
export default defineI18nConfig(() => ({
|
||||
legacy: false,
|
||||
locale: "en",
|
||||
fallbackLocale: "en",
|
||||
messages: { en, zh },
|
||||
messages: {
|
||||
en: deepMerge(enBase, enExtra),
|
||||
zh: deepMerge(zhBase, zhExtra),
|
||||
},
|
||||
}));
|
||||
|
||||
Reference in New Issue
Block a user