aboutsummaryrefslogtreecommitdiffstats
path: root/src/electron/ipc-api/cld.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/electron/ipc-api/cld.ts')
-rw-r--r--src/electron/ipc-api/cld.ts23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/electron/ipc-api/cld.ts b/src/electron/ipc-api/cld.ts
new file mode 100644
index 000000000..b907f3730
--- /dev/null
+++ b/src/electron/ipc-api/cld.ts
@@ -0,0 +1,23 @@
1import { ipcMain } from 'electron';
2import cld from 'cld';
3
4const debug = require('debug')('Ferdi:ipcApi:cld');
5
6export default async () => {
7 ipcMain.handle('detect-language', async (_event, { sample }) => {
8 try {
9 const result = await cld.detect(sample);
10 debug('Checking language', 'probability', result.languages);
11 if (result.reliable) {
12 debug(
13 'Language detected reliably, setting spellchecker language to',
14 result.languages[0].code,
15 );
16
17 return result.languages[0].code;
18 }
19 } catch (e) {
20 console.error(e);
21 }
22 });
23};