efficient-language-detector-no-dynamic-import
Version:
Fast and accurate natural language detection. Detector written in Javascript. Efficient language detector, Nito-ELD, ELD.
38 lines (34 loc) • 911 B
JavaScript
/*
Copyright 2023 Nito T.M.
License https://www.apache.org/licenses/LICENSE-2.0 Apache-2.0
Author Nito T.M. (https://github.com/nitotm)
Package npmjs.com/package/eld
*/
import { avgScore } from './avgScore.js'
import { ngramsData as ngramsM60 } from './ngrams/ngramsM60.js'
// The shared object that holds current language data:
export const languageData = {
langCodes: {},
langScore: [],
ngrams: {},
type: '',
avgScore: avgScore
}
/**
* Always loads the L60 dataset.
* @returns {boolean} true if loaded successfully
*/
export async function loadNgrams() {
setNgrams(ngramsM60)
return true
}
/**
* Populates languageData from the L60 dataset.
* @param {Object} data
*/
function setNgrams(data) {
languageData.langCodes = data.languages
languageData.langScore = Array(Object.keys(data.languages).length).fill(0)
languageData.ngrams = data.ngrams
languageData.type = data.type
}