diff options
author | metamuffin <metamuffin@disroot.org> | 2024-04-03 17:02:15 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-04-03 17:02:15 +0200 |
commit | 93d09d0aaef7586389daa360c1a361e915c4a228 (patch) | |
tree | 7aac353617952819d49b89eab28b9080759aa956 /client-web/scripts/autogen_locale.ts | |
parent | 4903ef899abb88148a0835b5bde69f6de5a69a98 (diff) | |
download | keks-meet-93d09d0aaef7586389daa360c1a361e915c4a228.tar keks-meet-93d09d0aaef7586389daa360c1a361e915c4a228.tar.bz2 keks-meet-93d09d0aaef7586389daa360c1a361e915c4a228.tar.zst |
maybe autogen languages
Diffstat (limited to 'client-web/scripts/autogen_locale.ts')
-rw-r--r-- | client-web/scripts/autogen_locale.ts | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/client-web/scripts/autogen_locale.ts b/client-web/scripts/autogen_locale.ts new file mode 100644 index 0000000..c2f3d5b --- /dev/null +++ b/client-web/scripts/autogen_locale.ts @@ -0,0 +1,28 @@ +// deno-lint-ignore-file no-explicit-any +import { LOCALES } from "../source/locale/mod.ts"; + +const global_lc = "en-US" + +function traverse_object(target: any, current: any): any { + if (typeof target == "string") return target + const out = {} as any + for (const key in target) { + if (!current) { + out[key] = target[key] + } else { + if (key in current) continue + out[key] = traverse_object(target[key], current) + } + } + return out +} + +const master = LOCALES[global_lc] +for (const lc in LOCALES) { + if (lc == global_lc) continue + const k = JSON.stringify(traverse_object(master, LOCALES[lc])); + if (k.length <= 2) continue + console.log( + `New strings required in ${lc}:\n\t${k}` + ); +} |