aboutsummaryrefslogtreecommitdiff
path: root/client-web/scripts/autogen_locale.ts
diff options
context:
space:
mode:
Diffstat (limited to 'client-web/scripts/autogen_locale.ts')
-rw-r--r--client-web/scripts/autogen_locale.ts28
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}`
+ );
+}