@jswork/i18n-language-detect
Advanced tools
Comparing version 1.0.3 to 1.0.4
@@ -5,4 +5,4 @@ /*! | ||
* homepage: https://js.work | ||
* version: 1.0.2 | ||
* date: 2023-08-16 23:28:00 | ||
* version: 1.0.3 | ||
* date: 2023-08-23 18:34:50 | ||
* license: MIT | ||
@@ -15,2 +15,3 @@ */ | ||
cacheKey?: string; | ||
routerType?: string; | ||
} | ||
@@ -17,0 +18,0 @@ declare class I18nLanguageDetect { |
@@ -5,4 +5,4 @@ /*! | ||
* homepage: https://js.work | ||
* version: 1.0.2 | ||
* date: 2023-08-16 23:27:59 | ||
* version: 1.0.3 | ||
* date: 2023-08-23 18:34:46 | ||
* license: MIT | ||
@@ -25,5 +25,8 @@ */ | ||
cacheKey: 'i18next.lang', | ||
routerType: 'hash', | ||
}; | ||
var getLanguage = function (keys) { | ||
var uri = new URL(window.location.href); | ||
var getLanguage = function (keys, inOptions) { | ||
var routerType = inOptions.routerType; | ||
var url = routerType === 'hash' ? window.location.hash : window.location.search; | ||
var uri = new URL(url, 'http://localhost'); | ||
var lang = null; | ||
@@ -57,3 +60,5 @@ for (var index = 0; index < keys.length; index++) { | ||
var _a = this.options, lookupQuerystring = _a.lookupQuerystring, languageQueryFn = _a.languageQueryFn; | ||
var lang = languageQueryFn ? languageQueryFn() : getLanguage(lookupQuerystring); | ||
var lang = languageQueryFn | ||
? languageQueryFn() | ||
: getLanguage(lookupQuerystring, this.options); | ||
return lang || localStorage.getItem(this.cacheKey) || navigator.language; | ||
@@ -60,0 +65,0 @@ }; |
@@ -6,4 +6,4 @@ "use strict"; | ||
* homepage: https://js.work | ||
* version: 1.0.2 | ||
* date: 2023-08-16 23:28:00 | ||
* version: 1.0.3 | ||
* date: 2023-08-23 18:34:50 | ||
* license: MIT | ||
@@ -27,5 +27,8 @@ */ | ||
cacheKey: 'i18next.lang', | ||
routerType: 'hash', | ||
}; | ||
var getLanguage = function (keys) { | ||
var uri = new URL(window.location.href); | ||
var getLanguage = function (keys, inOptions) { | ||
var routerType = inOptions.routerType; | ||
var url = routerType === 'hash' ? window.location.hash : window.location.search; | ||
var uri = new URL(url, 'http://localhost'); | ||
var lang = null; | ||
@@ -59,3 +62,5 @@ for (var index = 0; index < keys.length; index++) { | ||
var _a = this.options, lookupQuerystring = _a.lookupQuerystring, languageQueryFn = _a.languageQueryFn; | ||
var lang = languageQueryFn ? languageQueryFn() : getLanguage(lookupQuerystring); | ||
var lang = languageQueryFn | ||
? languageQueryFn() | ||
: getLanguage(lookupQuerystring, this.options); | ||
return lang || localStorage.getItem(this.cacheKey) || navigator.language; | ||
@@ -62,0 +67,0 @@ }; |
{ | ||
"name": "@jswork/i18n-language-detect", | ||
"version": "1.0.3", | ||
"version": "1.0.4", | ||
"description": "Language detect plugin.", | ||
@@ -55,3 +55,3 @@ "main": "dist/index.js", | ||
}, | ||
"gitHead": "a99903bdc0279efa2a489e3f282498d6ddf40194" | ||
"gitHead": "7ea2f970ac738ec0592fee7727ef5d14c2c1dc0d" | ||
} |
9638
173