@arc-publishing/sdk-identity
Version:
JS Identity SDK for working with Identity API
213 lines • 3.8 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getBrowserLocale = exports.bestFacebookLocaleFor = void 0;
var FACEBOOK_SUPPORTED_LOCALES = [
'af_ZA',
'ak_GH',
'am_ET',
'ar_AR',
'as_IN',
'ay_BO',
'az_AZ',
'be_BY',
'bg_BG',
'bn_IN',
'br_FR',
'bs_BA',
'ca_ES',
'cb_IQ',
'ck_US',
'co_FR',
'cs_CZ',
'cx_PH',
'cy_GB',
'de_DE',
'da_DK',
'el_GR',
'en_GB',
'en_IN',
'en_PI',
'en_UD',
'en_US',
'eo_EO',
'es_LA',
'es_CL',
'es_CO',
'es_ES',
'es_MX',
'es_VE',
'et_EE',
'eu_ES',
'fa_IR',
'fb_LT',
'ff_NG',
'fi_FI',
'fo_FO',
'fr_FR',
'fr_CA',
'fy_NL',
'ga_IE',
'gl_ES',
'gn_PY',
'gu_IN',
'gx_GR',
'ha_NG',
'he_IL',
'hi_IN',
'hr_HR',
'hu_HU',
'hy_AM',
'id_ID',
'ig_NG',
'is_IS',
'it_IT',
'ja_JP',
'ja_KS',
'jv_ID',
'ka_GE',
'kk_KZ',
'km_KH',
'kn_IN',
'ko_KR',
'ku_TR',
'la_VA',
'lg_UG',
'li_NL',
'ln_CD',
'lo_LA',
'lt_LT',
'lv_LV',
'mg_MG',
'mk_MK',
'ml_IN',
'mn_MN',
'mr_IN',
'ms_MY',
'mt_MT',
'my_MM',
'nb_NO',
'nd_ZW',
'ne_NP',
'nl_BE',
'nl_NL',
'nn_NO',
'ny_MW',
'or_IN',
'pa_IN',
'pl_PL',
'ps_AF',
'pt_BR',
'pt_PT',
'qu_PE',
'rm_CH',
'ro_RO',
'ru_RU',
'rw_RW',
'sa_IN',
'sc_IT',
'se_NO',
'si_LK',
'sk_SK',
'sl_SI',
'sn_ZW',
'so_SO',
'sq_AL',
'sr_RS',
'sv_SE',
'sw_KE',
'sy_SY',
'sz_PL',
'ta_IN',
'te_IN',
'tg_TJ',
'th_TH',
'tk_TM',
'tl_PH',
'tl_ST',
'tr_TR',
'tt_RU',
'tz_MA',
'uk_UA',
'ur_PK',
'uz_UZ',
'vi_VN',
'wo_SN',
'xh_ZA',
'yi_DE',
'yo_NG',
'zh_CN',
'zh_HK',
'zh_TW',
'zu_ZA',
'zz_TR'
];
var facebookVirtualLocales = {
es_AR: 'es_LA',
es_PE: 'es_LA',
es_EC: 'es_LA',
es_GT: 'es_LA',
es_CU: 'es_LA',
es_BO: 'es_LA',
es_DO: 'es_LA',
es_HN: 'es_LA',
es_PY: 'es_LA',
es_SV: 'es_LA',
es_NI: 'es_LA',
es_CR: 'es_LA',
es_PR: 'es_LA',
es_PA: 'es_LA',
es_UY: 'es_LA',
es_GQ: 'es_LA',
ar_DZ: 'ar_AR',
ar_BH: 'ar_AR',
ar_TD: 'ar_AR',
ar_KM: 'ar_AR',
ar_DJ: 'ar_AR',
ar_EG: 'ar_AR',
ar_ER: 'ar_AR',
ar_GM: 'ar_AR',
ar_IQ: 'ar_AR',
ar_IL: 'ar_AR',
ar_JO: 'ar_AR',
ar_KW: 'ar_AR',
ar_LB: 'ar_AR',
ar_LY: 'ar_AR',
ar_MR: 'ar_AR',
ar_MA: 'ar_AR',
ar_OM: 'ar_AR',
ar_PS: 'ar_AR',
ar_QA: 'ar_AR',
ar_SA: 'ar_AR',
ar_SO: 'ar_AR',
ar_SD: 'ar_AR',
ar_SY: 'ar_AR',
ar_TN: 'ar_AR',
ar_AE: 'ar_AR',
ar_YE: 'ar_AR'
};
var bestFacebookLocaleFor = function (locale) {
var cleanedLocale = locale.replace('-', '_');
if (FACEBOOK_SUPPORTED_LOCALES.indexOf(cleanedLocale) > -1) {
return cleanedLocale;
}
if (facebookVirtualLocales[cleanedLocale]) {
return facebookVirtualLocales[cleanedLocale];
}
var lang = cleanedLocale.substring(0, 2);
var supportedLang = FACEBOOK_SUPPORTED_LOCALES.find(function (a) { return a.substring(0, 2) === lang; });
if (supportedLang) {
return supportedLang;
}
return 'en_US';
};
exports.bestFacebookLocaleFor = bestFacebookLocaleFor;
var getBrowserLocale = function () {
if (navigator.languages && navigator.languages.length) {
return navigator.languages[0];
}
else {
return navigator.userLanguage || navigator.language || navigator.browserLanguage || 'en_US';
}
};
exports.getBrowserLocale = getBrowserLocale;
//# sourceMappingURL=locales.js.map