@kcutils/gatsby-plugin-intl
Version:
gatsby plugin with support react-intl
27 lines • 1.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getLang = void 0;
// lang will be
var helper_1 = require("@kcutils/helper");
var Locale_1 = require("../models/Locale");
var getLang = function (opt) {
if (helper_1.generic.noExist(window)) {
return undefined;
}
var navigator = window.navigator;
var lang = helper_1.generic.toOptional((navigator.languages && navigator.languages[0]) ||
navigator.language ||
navigator.browserLanguage ||
navigator.userLanguage ||
navigator.systemLanguage);
// when no option exist
if (helper_1.generic.noExist(opt))
return (lang && new Locale_1.Locale(lang)) || undefined;
// when use input fallback language
if (helper_1.generic.noExist(lang) && helper_1.generic.isExist(opt.fallback))
return new Locale_1.Locale(opt.fallback);
// when success get browser language
return (lang && new Locale_1.Locale(lang)) || undefined;
};
exports.getLang = getLang;
//# sourceMappingURL=browser.js.map