diff options
Diffstat (limited to 'src/electron/ipc-api/languageDetect.ts')
-rw-r--r-- | src/electron/ipc-api/languageDetect.ts | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/electron/ipc-api/languageDetect.ts b/src/electron/ipc-api/languageDetect.ts new file mode 100644 index 000000000..d344f7097 --- /dev/null +++ b/src/electron/ipc-api/languageDetect.ts | |||
@@ -0,0 +1,19 @@ | |||
1 | import { ipcMain } from 'electron'; | ||
2 | |||
3 | import LanguageDetect from 'languagedetect'; | ||
4 | |||
5 | const debug = require('../../preload-safe-debug')('Ferdium:ipcApi:languageDetect'); | ||
6 | |||
7 | export default async () => { | ||
8 | ipcMain.handle('detect-language', async (_event, { sample }) => { | ||
9 | if (!LanguageDetect) { | ||
10 | return null; | ||
11 | } | ||
12 | const langDetector = new LanguageDetect(); | ||
13 | langDetector.setLanguageType('iso2'); | ||
14 | debug('Checking language for sample:', sample); | ||
15 | const result = langDetector.detect(sample, 1); | ||
16 | debug('Language detection result:', result); | ||
17 | return result[0][0]; | ||
18 | }); | ||
19 | }; | ||