summaryrefslogtreecommitdiff
path: root/client-web/scripts/find_missing_translations.ts
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2024-04-03 18:08:52 +0200
committermetamuffin <metamuffin@disroot.org>2024-04-03 18:08:52 +0200
commitedbe7ad1be0a52dd4220f65d1ac98163a0a1b774 (patch)
tree01dce2d09562b0c52c6c8b370ef889fe0e057fbf /client-web/scripts/find_missing_translations.ts
parent93d09d0aaef7586389daa360c1a361e915c4a228 (diff)
downloadkeks-meet-edbe7ad1be0a52dd4220f65d1ac98163a0a1b774.tar
keks-meet-edbe7ad1be0a52dd4220f65d1ac98163a0a1b774.tar.bz2
keks-meet-edbe7ad1be0a52dd4220f65d1ac98163a0a1b774.tar.zst
autogenerate japanese translation
Diffstat (limited to 'client-web/scripts/find_missing_translations.ts')
-rw-r--r--client-web/scripts/find_missing_translations.ts29
1 files changed, 29 insertions, 0 deletions
diff --git a/client-web/scripts/find_missing_translations.ts b/client-web/scripts/find_missing_translations.ts
new file mode 100644
index 0000000..d39590a
--- /dev/null
+++ b/client-web/scripts/find_missing_translations.ts
@@ -0,0 +1,29 @@
+// deno-lint-ignore-file no-explicit-any
+/// <reference lib="deno.worker" />
+import { LOCALES } from "../source/locale/mod.ts";
+
+const global_lc = "en"
+
+function traverse_object(target: any, current: any): any {
+ if (typeof target == "string") return target
+ if (typeof target == "function") return undefined
+ 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
+ if (lc.search("-") != -1) continue
+ const k = traverse_object(master, LOCALES[lc]);
+ if (JSON.stringify(k).length <= 2) continue
+ console.log(JSON.stringify({ source: global_lc, target: lc, strings: k }));
+}