aboutsummaryrefslogtreecommitdiffstats
path: root/src/electron/ipc-api/languageDetect.ts
blob: 6314ea12bb28384c6632b81462879702106e9c47 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import { ipcMain } from 'electron';

import LanguageDetect from 'languagedetect';

const debug = require('../../preload-safe-debug')(
  'Ferdium:ipcApi:languageDetect',
);

export default async () => {
  ipcMain.handle('detect-language', async (_event, { sample }) => {
    if (!LanguageDetect) {
      return null;
    }
    const langDetector = new LanguageDetect();
    langDetector.setLanguageType('iso2');
    debug('Checking language for sample:', sample);
    const result = langDetector.detect(sample, 1);
    debug('Language detection result:', result);
    return result[0][0];
  });
};