summaryrefslogtreecommitdiff
path: root/packages/langlib/src/lang/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/langlib/src/lang/index.ts')
-rw-r--r--packages/langlib/src/lang/index.ts11
1 files changed, 11 insertions, 0 deletions
diff --git a/packages/langlib/src/lang/index.ts b/packages/langlib/src/lang/index.ts
new file mode 100644
index 0000000..f566672
--- /dev/null
+++ b/packages/langlib/src/lang/index.ts
@@ -0,0 +1,11 @@
+import { franc, francAll as _ } from "franc-all";
+import { iso6393To1 } from "../iso/iso6393-to-1";
+// TODO add https://github.com/wooorm/iso-3166?
+async function detectLang(text: string) {
+ // FrancAll return [langCode, confidence float]
+ const iso3 = franc(text);
+ const iso1 = iso6393To1[iso3];
+ return iso1 ? iso1 : iso3;
+}
+
+export { detectLang };