UNPKG

language-codes-collection

Version:

[DEPRECATED] A clean, typed, and reliable dataset of ISO 639-1 and 639-2 language codes — complete with English names, native names, and writing scripts.

131 lines (128 loc) 3.01 kB
'use strict'; // src/data/languages.json var languages_default = [ { code6391: "en", code6392: "eng", englishName: "English", nativeName: "English", script: "Latn" }, { code6391: "es", code6392: "spa", englishName: "Spanish", nativeName: "Espa\xF1ol", script: "Latn" }, { code6391: "fr", code6392: "fra", englishName: "French", nativeName: "Fran\xE7ais", script: "Latn" }, { code6391: "de", code6392: "deu", englishName: "German", nativeName: "Deutsch", script: "Latn" }, { code6391: "it", code6392: "ita", englishName: "Italian", nativeName: "Italiano", script: "Latn" }, { code6391: "pt", code6392: "por", englishName: "Portuguese", nativeName: "Portugu\xEAs", script: "Latn" }, { code6391: "ru", code6392: "rus", englishName: "Russian", nativeName: "\u0420\u0443\u0441\u0441\u043A\u0438\u0439", script: "Cyrl" }, { code6391: "zh", code6392: "zho", englishName: "Chinese", nativeName: "\u4E2D\u6587", script: "Hans" }, { code6391: "ja", code6392: "jpn", englishName: "Japanese", nativeName: "\u65E5\u672C\u8A9E", script: "Jpan" }, { code6391: "ko", code6392: "kor", englishName: "Korean", nativeName: "\uD55C\uAD6D\uC5B4", script: "Hang" }, { code6391: "ar", code6392: "ara", englishName: "Arabic", nativeName: "\u0627\u0644\u0639\u0631\u0628\u064A\u0629", script: "Arab" }, { code6391: "hi", code6392: "hin", englishName: "Hindi", nativeName: "\u0939\u093F\u0928\u094D\u0926\u0940", script: "Deva" } ]; // src/index.ts var languages = languages_default; var languageMap = Object.freeze( languages.reduce((acc, lang) => { acc[lang.code6391] = lang; return acc; }, {}) ); function getLanguageByCode(code) { if (!code) return void 0; const normalizedCode = code.toLowerCase(); const by6391 = languageMap[normalizedCode]; if (by6391) return by6391; return languages.find((lang) => lang.code6392.toLowerCase() === normalizedCode); } function getNativeName(code) { return getLanguageByCode(code)?.nativeName; } function getScript(code) { return getLanguageByCode(code)?.script; } function isValidLanguageCode(code) { return getLanguageByCode(code) !== void 0; } function searchLanguageByName(query) { if (!query) return []; const normalizedQuery = query.toLowerCase(); return languages.filter( (lang) => lang.englishName.toLowerCase().includes(normalizedQuery) || lang.nativeName.toLowerCase().includes(normalizedQuery) ); } exports.getLanguageByCode = getLanguageByCode; exports.getNativeName = getNativeName; exports.getScript = getScript; exports.isValidLanguageCode = isValidLanguageCode; exports.languageMap = languageMap; exports.languages = languages; exports.searchLanguageByName = searchLanguageByName; //# sourceMappingURL=index.cjs.map //# sourceMappingURL=index.cjs.map