New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

ilib-env

Package Overview
Dependencies
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ilib-env - npm Package Compare versions

Comparing version 1.0.0 to 1.0.1

docs/ilibEnv.md

2

lib/ilib-env-web.js

@@ -20,3 +20,3 @@ /*

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"getPlatform\": () => (/* binding */ getPlatform),\n/* harmony export */ \"getBrowser\": () => (/* binding */ getBrowser),\n/* harmony export */ \"top\": () => (/* binding */ top),\n/* harmony export */ \"globalVar\": () => (/* binding */ globalVar),\n/* harmony export */ \"isGlobal\": () => (/* binding */ isGlobal),\n/* harmony export */ \"getLocale\": () => (/* binding */ getLocale),\n/* harmony export */ \"getTimeZone\": () => (/* binding */ getTimeZone),\n/* harmony export */ \"clearCache\": () => (/* binding */ clearCache)\n/* harmony export */ });\nfunction _typeof(obj){\"@babel/helpers - typeof\";if(typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"){_typeof=function _typeof(obj){return typeof obj}}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj}}return _typeof(obj)}var platform;function getPlatform(){if(!platform){try{if(typeof java.lang.Object!==\"undefined\"){platform=typeof process!==\"undefined\"?\"trireme\":\"rhino\";return platform}}catch(e){}if(typeof __webpack_require__.g!==\"undefined\"&&__webpack_require__.g.process&&__webpack_require__.g.process.versions&&__webpack_require__.g.process.versions.node&&\"object\"!==\"undefined\"){platform=\"nodejs\"}else if(typeof Qt!==\"undefined\"){platform=\"qt\"}else if(typeof PalmSystem!==\"undefined\"){platform=typeof window!==\"undefined\"?\"webos-webapp\":\"webos\"}else if(typeof window!==\"undefined\"){platform=\"browser\"}else{platform=\"unknown\"}}return platform};var browser;function getBrowser(){if(getPlatform()===\"browser\"){if(navigator&&navigator.userAgent){if(navigator.userAgent.indexOf(\"Firefox\")>-1){browser=\"firefox\"}else if(navigator.userAgent.search(/Opera|OPR/)>-1){browser=\"opera\"}else if(navigator.userAgent.indexOf(\"Chrome\")>-1){browser=\"chrome\"}else if(navigator.userAgent.indexOf(\" .NET\")>-1){browser=\"ie\"}else if(navigator.userAgent.indexOf(\"Safari\")>-1){browser=\"safari\"}else if(navigator.userAgent.indexOf(\"Edge\")>-1){browser=\"Edge\"}else if(navigator.userAgent.search(/iPad|iPhone|iPod/)>-1){browser=\"iOS\"}}}return browser};var topScope;function top(){if(typeof topScope===\"undefined\"){switch(getPlatform()){case\"rhino\":topScope=function(){return(typeof __webpack_require__.g===\"undefined\"?\"undefined\":_typeof(__webpack_require__.g))===\"object\"?__webpack_require__.g:this}();break;case\"nodejs\":case\"trireme\":topScope=typeof __webpack_require__.g!==\"undefined\"?__webpack_require__.g:this;break;default:topScope=window;break;}}return topScope};function globalVar(name){try{return top()[name]}catch(e){return undefined}};function isGlobal(name){return typeof globalVar(name)!==\"undefined\"};var locale;function getLocale(){if(typeof locale!==\"string\"){var plat=getPlatform();switch(plat){case\"browser\":if(typeof navigator.language!==\"undefined\"){locale=navigator.language.length>3?navigator.language.substring(0,3)+navigator.language.substring(3,5).toUpperCase():navigator.language}if(!locale){lang=typeof navigator.browserLanguage!==\"undefined\"?navigator.browserLanguage:typeof navigator.userLanguage!==\"undefined\"?navigator.userLanguage:typeof navigator.systemLanguage!==\"undefined\"?navigator.systemLanguage:undefined;if(typeof lang!==\"undefined\"&&lang){locale=lang.length>3?lang.substring(0,3)+lang.substring(3,5).toUpperCase():lang}else{locale=undefined}}break;case\"webos-webapp\":case\"webos\":if(typeof PalmSystem.locales!==\"undefined\"&&typeof PalmSystem.locales.UI!=\"undefined\"&&PalmSystem.locales.UI.length>0){locale=PalmSystem.locales.UI}else if(typeof PalmSystem.locale!==\"undefined\"){locale=PalmSystem.locale}else{locale=undefined}break;case\"rhino\":if(typeof environment!==\"undefined\"&&environment.user&&typeof environment.user.language===\"string\"&&environment.user.language.length>0){locale=environment.user.language;if(typeof environment.user.country===\"string\"&&environment.user.country.length>0){locale+=\"-\"+environment.user.country}}break;case\"trireme\":lang=process.env.LANG||process.env.LANGUAGE||process.env.LC_ALL;if(lang&&typeof lang!==\"undefined\"){var dot=lang.indexOf(\".\");if(dot>-1){lang=lang.substring(0,dot)}locale=lang.length>3?lang.substring(0,2).toLowerCase()+\"-\"+lang.substring(3,5).toUpperCase():lang}else{locale=undefined}break;case\"nodejs\":var lang=__webpack_require__.g.process.env.LANG||__webpack_require__.g.process.env.LC_ALL;if(lang&&typeof lang!==\"undefined\"){var _dot=lang.indexOf(\".\");if(_dot>-1){lang=lang.substring(0,_dot)}locale=lang.length>3?lang.substring(0,2).toLowerCase()+\"-\"+lang.substring(3,5).toUpperCase():lang}else{locale=undefined}break;case\"qt\":var locobj=Qt.locale();locale=locobj.name&&locobj.name.replace(\"_\",\"-\")||\"en-US\";break;}locale=typeof locale===\"string\"&&locale.length&&locale!==\"C\"?locale:\"en-US\";if(locale===\"en\"){locale=\"en-US\"}}return locale};var tz;function getTimeZone(){if(typeof tz===\"undefined\"){if(typeof Intl!==\"undefined\"&&typeof Intl.DateTimeFormat!==\"undefined\"){var ro=new Intl.DateTimeFormat().resolvedOptions();var timeZone=ro.timeZone;if(timeZone&&timeZone!==\"Etc/Unknown\"){tz=timeZone;return tz}}var timezone;switch(getPlatform()){case\"browser\":var _navigator=navigator;timezone=_navigator.timezone;if(timezone&&timezone.length>0){tz=timezone}break;case\"webos-webapp\":case\"webos\":var _PalmSystem=PalmSystem;timezone=_PalmSystem.timezone;if(timezone&&timezone.length>0){tz=timezone}break;case\"rhino\":if(typeof environment.user.timezone!==\"undefined\"&&environment.user.timezone.length>0){tz=environment.user.timezone}break;case\"nodejs\":if(__webpack_require__.g.process.env){tz=__webpack_require__.g.process.env.TZ}break;}tz=tz||\"local\"}return tz};function clearCache(){platform=locale=browser=tz=undefined};\n\n//# sourceURL=webpack://ilibEnv/./src/index.js?");
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"getPlatform\": () => (/* binding */ getPlatform),\n/* harmony export */ \"getBrowser\": () => (/* binding */ getBrowser),\n/* harmony export */ \"top\": () => (/* binding */ top),\n/* harmony export */ \"globalVar\": () => (/* binding */ globalVar),\n/* harmony export */ \"isGlobal\": () => (/* binding */ isGlobal),\n/* harmony export */ \"getLocale\": () => (/* binding */ getLocale),\n/* harmony export */ \"getTimeZone\": () => (/* binding */ getTimeZone),\n/* harmony export */ \"clearCache\": () => (/* binding */ clearCache),\n/* harmony export */ \"setPlatform\": () => (/* binding */ setPlatform)\n/* harmony export */ });\nfunction _typeof(obj){\"@babel/helpers - typeof\";if(typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"){_typeof=function _typeof(obj){return typeof obj}}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj}}return _typeof(obj)}var platform;function getPlatform(){if(!platform){try{if(typeof java.lang.Object!==\"undefined\"){platform=typeof process!==\"undefined\"?\"trireme\":\"rhino\";return platform}}catch(e){}if(typeof __webpack_require__.g!==\"undefined\"&&__webpack_require__.g.process&&__webpack_require__.g.process.versions&&__webpack_require__.g.process.versions.node&&\"object\"!==\"undefined\"){platform=\"nodejs\"}else if(typeof Qt!==\"undefined\"){platform=\"qt\"}else if(typeof PalmSystem!==\"undefined\"){platform=typeof window!==\"undefined\"?\"webos-webapp\":\"webos\"}else if(typeof window!==\"undefined\"){platform=\"browser\"}else{platform=\"unknown\"}}return platform};var browser;function getBrowser(){if(getPlatform()===\"browser\"){if(navigator&&navigator.userAgent){if(navigator.userAgent.indexOf(\"Firefox\")>-1){browser=\"firefox\"}else if(navigator.userAgent.search(/Opera|OPR/)>-1){browser=\"opera\"}else if(navigator.userAgent.indexOf(\"Chrome\")>-1){browser=\"chrome\"}else if(navigator.userAgent.indexOf(\" .NET\")>-1){browser=\"ie\"}else if(navigator.userAgent.indexOf(\"Safari\")>-1){browser=\"safari\"}else if(navigator.userAgent.indexOf(\"Edge\")>-1){browser=\"Edge\"}else if(navigator.userAgent.search(/iPad|iPhone|iPod/)>-1){browser=\"iOS\"}}}return browser};var topScope;function top(){if(typeof topScope===\"undefined\"){switch(getPlatform()){case\"rhino\":topScope=function(){return(typeof __webpack_require__.g===\"undefined\"?\"undefined\":_typeof(__webpack_require__.g))===\"object\"?__webpack_require__.g:this}();break;case\"nodejs\":case\"trireme\":topScope=typeof __webpack_require__.g!==\"undefined\"?__webpack_require__.g:this;break;default:topScope=window;break;}}return topScope};function globalVar(name){try{return top()[name]}catch(e){return undefined}};function isGlobal(name){return typeof globalVar(name)!==\"undefined\"};var locale;function parseLocale(str){if(!str)return str;var dot=str.indexOf(\".\");if(dot>-1){str=str.substring(0,dot)}if(str===\"C\")return\"en-US\";if(str.length>=10){return[str.substring(0,2).toLowerCase(),str[3].toUpperCase()+str.substring(4,7).toLowerCase(),str.substring(8,10).toUpperCase()].join(\"-\")}if(str.length>=7){return[str.substring(0,2).toLowerCase(),str[3].toUpperCase()+str.substring(4,7).toLowerCase()].join(\"-\")}if(str.length>=5){return[str.substring(0,2).toLowerCase(),str.substring(3,5).toUpperCase()].join(\"-\")}if(str.length<3){return str.toLowerCase()}return str}function getLocale(){var lang,dot;if(typeof locale!==\"string\"){var plat=getPlatform();switch(plat){case\"browser\":if(typeof navigator.language!==\"undefined\"){locale=parseLocale(navigator.language)}if(!locale){_lang=typeof navigator.browserLanguage!==\"undefined\"?navigator.browserLanguage:typeof navigator.userLanguage!==\"undefined\"?navigator.userLanguage:typeof navigator.systemLanguage!==\"undefined\"?navigator.systemLanguage:undefined;locale=parseLocale(_lang)}break;case\"webos-webapp\":case\"webos\":if(typeof PalmSystem.locales!==\"undefined\"&&typeof PalmSystem.locales.UI!=\"undefined\"&&PalmSystem.locales.UI.length>0){locale=parseLocale(PalmSystem.locales.UI)}else if(typeof PalmSystem.locale!==\"undefined\"){locale=parseLocale(PalmSystem.locale)}else{locale=undefined}break;case\"rhino\":if(typeof environment!==\"undefined\"&&environment.user&&typeof environment.user.language===\"string\"&&environment.user.language.length>0){var l=[environment.user.language];if(typeof environment.user.country===\"string\"&&environment.user.country.length>0){l.push(environment.user.country)}locale=l.join(\"-\")}break;case\"trireme\":_lang=process.env.LANG||process.env.LANGUAGE||process.env.LC_ALL;locale=parseLocale(_lang);break;case\"nodejs\":var _lang=__webpack_require__.g.process.env.LANG||__webpack_require__.g.process.env.LC_ALL;locale=parseLocale(_lang);break;case\"qt\":var locobj=Qt.locale();locale=parseLocale(locobj.name||\"en-US\");break;}locale=typeof locale===\"string\"&&locale.length&&locale!==\"C\"?locale:\"en-US\";if(locale===\"en\"){locale=\"en-US\"}}return locale};var tz;function getTimeZone(){if(typeof tz===\"undefined\"){if(typeof Intl!==\"undefined\"&&typeof Intl.DateTimeFormat!==\"undefined\"){var ro=new Intl.DateTimeFormat().resolvedOptions();var timeZone=ro.timeZone;if(timeZone&&timeZone!==\"Etc/Unknown\"){tz=timeZone;return tz}}var timezone;switch(getPlatform()){case\"browser\":var _navigator=navigator;timezone=_navigator.timezone;if(timezone&&timezone.length>0){tz=timezone}break;case\"webos-webapp\":case\"webos\":var _PalmSystem=PalmSystem;timezone=_PalmSystem.timezone;if(timezone&&timezone.length>0){tz=timezone}break;case\"rhino\":if(typeof environment.user.timezone!==\"undefined\"&&environment.user.timezone.length>0){tz=environment.user.timezone}break;case\"nodejs\":if(__webpack_require__.g.process.env){tz=__webpack_require__.g.process.env.TZ}break;}tz=tz||\"local\"}return tz};function clearCache(){platform=locale=browser=tz=undefined};function setPlatform(plat){platform=plat};\n\n//# sourceURL=webpack://ilibEnv/./src/index.js?");

@@ -23,0 +23,0 @@ /***/ })

@@ -1,2 +0,2 @@

"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.getPlatform=getPlatform;exports.getBrowser=getBrowser;exports.top=top;exports.globalVar=globalVar;exports.isGlobal=isGlobal;exports.getLocale=getLocale;exports.getTimeZone=getTimeZone;exports.clearCache=clearCache;function _typeof(obj){"@babel/helpers - typeof";if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj}}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj}}return _typeof(obj)}/*
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.getPlatform=getPlatform;exports.getBrowser=getBrowser;exports.top=top;exports.globalVar=globalVar;exports.isGlobal=isGlobal;exports.getLocale=getLocale;exports.getTimeZone=getTimeZone;exports.clearCache=clearCache;exports.setPlatform=setPlatform;function _typeof(obj){"@babel/helpers - typeof";if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj}}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj}}return _typeof(obj)}/*
* index.js - detect various things in the runtime environment

@@ -63,2 +63,10 @@ *

*/function isGlobal(name){return typeof globalVar(name)!=="undefined"};var locale;/**
* @private
*/function parseLocale(str){if(!str)return str;// take care of the libc style locale with a dot + script at the end
var dot=str.indexOf(".");if(dot>-1){str=str.substring(0,dot)}// handle the posix default locale
if(str==="C")return"en-US";// full locale
if(str.length>=10){return[str.substring(0,2).toLowerCase(),str[3].toUpperCase()+str.substring(4,7).toLowerCase(),str.substring(8,10).toUpperCase()].join("-")}// language + script
if(str.length>=7){return[str.substring(0,2).toLowerCase(),str[3].toUpperCase()+str.substring(4,7).toLowerCase()].join("-")}// language + region
if(str.length>=5){return[str.substring(0,2).toLowerCase(),str.substring(3,5).toUpperCase()].join("-")}// language only
if(str.length<3){return str.toLowerCase()}return str}/**
* Return the default locale for this platform, if there is one.

@@ -69,18 +77,18 @@ * If not, it will default to the locale "en-US".<p>

* @return {string} the BCP-47 locale specifier for the default locale
*/function getLocale(){if(typeof locale!=="string"){var plat=getPlatform();switch(plat){case"browser":// running in a browser
if(typeof navigator.language!=="undefined"){locale=navigator.language.length>3?navigator.language.substring(0,3)+navigator.language.substring(3,5).toUpperCase():navigator.language;// FF/Opera/Chrome/Webkit
*/function getLocale(){var lang,dot;if(typeof locale!=="string"){var plat=getPlatform();switch(plat){case"browser":// running in a browser
if(typeof navigator.language!=="undefined"){locale=parseLocale(navigator.language);// FF/Opera/Chrome/Webkit
}if(!locale){// IE on Windows
lang=typeof navigator.browserLanguage!=="undefined"?navigator.browserLanguage:typeof navigator.userLanguage!=="undefined"?navigator.userLanguage:typeof navigator.systemLanguage!=="undefined"?navigator.systemLanguage:undefined;if(typeof lang!=="undefined"&&lang){// for some reason, MS uses lower case region tags
locale=lang.length>3?lang.substring(0,3)+lang.substring(3,5).toUpperCase():lang}else{locale=undefined}}break;case"webos-webapp":case"webos":// webOS
if(typeof PalmSystem.locales!=="undefined"&&typeof PalmSystem.locales.UI!="undefined"&&PalmSystem.locales.UI.length>0){locale=PalmSystem.locales.UI}else if(typeof PalmSystem.locale!=="undefined"){locale=PalmSystem.locale}else{locale=undefined}break;case"rhino":if(typeof environment!=="undefined"&&environment.user&&typeof environment.user.language==="string"&&environment.user.language.length>0){// running under plain rhino
locale=environment.user.language;if(typeof environment.user.country==="string"&&environment.user.country.length>0){locale+="-"+environment.user.country}}break;case"trireme":// under trireme on rhino emulating nodejs
lang=process.env.LANG||process.env.LANGUAGE||process.env.LC_ALL;// the LANG variable on unix is in the form "lang_REGION.CHARSET"
_lang=typeof navigator.browserLanguage!=="undefined"?navigator.browserLanguage:typeof navigator.userLanguage!=="undefined"?navigator.userLanguage:typeof navigator.systemLanguage!=="undefined"?navigator.systemLanguage:undefined;// for some reason, MS uses lower case region tags
locale=parseLocale(_lang)}break;case"webos-webapp":case"webos":// webOS
if(typeof PalmSystem.locales!=="undefined"&&typeof PalmSystem.locales.UI!="undefined"&&PalmSystem.locales.UI.length>0){locale=parseLocale(PalmSystem.locales.UI)}else if(typeof PalmSystem.locale!=="undefined"){locale=parseLocale(PalmSystem.locale)}else{locale=undefined}break;case"rhino":if(typeof environment!=="undefined"&&environment.user&&typeof environment.user.language==="string"&&environment.user.language.length>0){// running under plain rhino
var l=[environment.user.language];if(typeof environment.user.country==="string"&&environment.user.country.length>0){l.push(environment.user.country)}locale=l.join("-")}break;case"trireme":// under trireme on rhino emulating nodejs
_lang=process.env.LANG||process.env.LANGUAGE||process.env.LC_ALL;// the LANG variable on unix is in the form "lang_REGION.CHARSET"
// where language and region are the correct ISO codes separated by
// an underscore. This translate it back to the BCP-47 form.
if(lang&&typeof lang!=="undefined"){var dot=lang.indexOf(".");if(dot>-1){lang=lang.substring(0,dot)}locale=lang.length>3?lang.substring(0,2).toLowerCase()+"-"+lang.substring(3,5).toUpperCase():lang}else{locale=undefined}break;case"nodejs":// running under nodejs
var lang=global.process.env.LANG||global.process.env.LC_ALL;// the LANG variable on unix is in the form "lang_REGION.CHARSET"
locale=parseLocale(_lang);break;case"nodejs":// running under nodejs
var _lang=global.process.env.LANG||global.process.env.LC_ALL;// the LANG variable on unix is in the form "lang_REGION.CHARSET"
// where language and region are the correct ISO codes separated by
// an underscore. This translate it back to the BCP-47 form.
if(lang&&typeof lang!=="undefined"){var _dot=lang.indexOf(".");if(_dot>-1){lang=lang.substring(0,_dot)}locale=lang.length>3?lang.substring(0,2).toLowerCase()+"-"+lang.substring(3,5).toUpperCase():lang}else{locale=undefined}break;case"qt":// running in the Javascript engine under Qt/QML
var locobj=Qt.locale();locale=locobj.name&&locobj.name.replace("_","-")||"en-US";break;}locale=typeof locale==="string"&&locale.length&&locale!=="C"?locale:"en-US";if(locale==="en"){locale="en-US";// hack to get various platforms working correctly
locale=parseLocale(_lang);break;case"qt":// running in the Javascript engine under Qt/QML
var locobj=Qt.locale();locale=parseLocale(locobj.name||"en-US");break;}locale=typeof locale==="string"&&locale.length&&locale!=="C"?locale:"en-US";if(locale==="en"){locale="en-US";// hack to get various platforms working correctly
}}return locale};var tz;/**

@@ -95,3 +103,9 @@ * Return the default time zone for this platform if there is one.

var _PalmSystem=PalmSystem;timezone=_PalmSystem.timezone;if(timezone&&timezone.length>0){tz=timezone}break;case"rhino":// running under rhino
if(typeof environment.user.timezone!=="undefined"&&environment.user.timezone.length>0){tz=environment.user.timezone}break;case"nodejs":if(global.process.env){tz=global.process.env.TZ}break;}tz=tz||"local"}return tz};function clearCache(){platform=locale=browser=tz=undefined};
if(typeof environment.user.timezone!=="undefined"&&environment.user.timezone.length>0){tz=environment.user.timezone}break;case"nodejs":if(global.process.env){tz=global.process.env.TZ}break;}tz=tz||"local"}return tz};/**
* Used in unit testing to start afresh.
* @private
*/function clearCache(){platform=locale=browser=tz=undefined};/**
* Used in unit testing to simulate a platform.
* @private
*/function setPlatform(plat){platform=plat};
//# sourceMappingURL=index.js.map
{
"name": "ilib-env",
"version": "1.0.0",
"version": "1.0.1",
"main": "./lib/index.js",

@@ -42,2 +42,3 @@ "module": "./src/index.js",

"lib",
"docs",
"README.md",

@@ -55,12 +56,16 @@ "LICENSE"

"build:web": "webpack-cli",
"dist": "npm run build:prod ; npm pack",
"build:test": "webpack-cli --config webpack-test.config.js",
"dist": "npm run doc ; npm run build:prod ; npm run build:web; npm pack",
"test": "LANG=en_US.UTF8 npm run build:dev ; node test/testSuite.js",
"testall": "LANG=en_US.UTF8 npm run test; npm run build:test ; open-cli ./test/testSuite.html ; open-cli ./test/testSuite.html -- firefox",
"debug": "npm run build:dev ; node --inspect-brk test/testSuite.js",
"clean": "git clean -f -d *"
"clean": "git clean -f -d *",
"doc": "mkdir -p docs ; jsdoc2md -c jsdoc.json --separators --source src/* -m table > docs/ilibEnv.md",
"doc:html": "jsdoc -c jsdoc.json"
},
"devDependencies": {
"@babel/core": "^7.9.0",
"@babel/preset-env": "^7.9.5",
"@babel/register": "^7.9.0",
"@babel/runtime": "^7.9.2",
"@babel/core": "^7.14.3",
"@babel/preset-env": "^7.14.2",
"@babel/register": "^7.13.16",
"@babel/runtime": "^7.14.0",
"acorn": "^6.4.1",

@@ -70,3 +75,3 @@ "acorn-jsx": "^5.2.0",

"babel-loader": "^8.2.2",
"grunt": "^1.1.0",
"grunt": "^1.4.0",
"grunt-babel": "^8.0.0",

@@ -78,7 +83,10 @@ "grunt-cli": "^1.3.2",

"grunt-contrib-uglify": "^4.0.1",
"jsdoc": "^3.6.6",
"jsdoc-to-markdown": "^7.0.1",
"load-grunt-tasks": "^5.1.0",
"nodeunit": "^0.11.3",
"webpack": "^5.31.0",
"webpack-cli": "^4.6.0"
"open-cli": "^6.0.1",
"webpack": "^5.37.1",
"webpack-cli": "^4.7.0"
}
}

@@ -15,2 +15,4 @@ # ilib-env

See the [full API documentation](./docs/ilibEnv.md).
## Installation

@@ -202,1 +204,19 @@

limitations under the License.
## Release Notes
### v1.0.1
- fixed some lint problems
- added API documentation
- now can test on web browsers automatically
- Fixed various bugs parsing the platform locales in getLocale()
* Locales with a script code such as "zh-Hans-CN"
* The posix "C" default locale
* Platforms where the region code is not upper-case
* Platforms that don't use a dash to separate the components
* Platforms that include a dot and a charset name after the specifier
### v1.0.0
- Initial version

@@ -158,2 +158,50 @@ /*

/**
* @private
*/
function parseLocale(str) {
if (!str) return str;
// take care of the libc style locale with a dot + script at the end
var dot = str.indexOf('.')
if (dot > -1) {
str = str.substring(0, dot);
}
// handle the posix default locale
if (str === "C") return "en-US";
// full locale
if (str.length >= 10) {
return [
str.substring(0,2).toLowerCase(),
str[3].toUpperCase() + str.substring(4,7).toLowerCase(),
str.substring(8,10).toUpperCase()
].join("-");
}
// language + script
if (str.length >= 7) {
return [
str.substring(0,2).toLowerCase(),
str[3].toUpperCase() + str.substring(4,7).toLowerCase()
].join("-");
}
// language + region
if (str.length >= 5) {
return [
str.substring(0,2).toLowerCase(),
str.substring(3,5).toUpperCase()
].join("-");
}
// language only
if (str.length < 3) {
return str.toLowerCase();
}
return str;
}
/**
* Return the default locale for this platform, if there is one.

@@ -166,2 +214,3 @@ * If not, it will default to the locale "en-US".<p>

export function getLocale() {
let lang, dot;
if (typeof(locale) !== 'string') {

@@ -173,3 +222,3 @@ const plat = getPlatform();

if(typeof(navigator.language) !== 'undefined') {
locale = (navigator.language.length > 3) ? navigator.language.substring(0,3) + navigator.language.substring(3,5).toUpperCase() : navigator.language; // FF/Opera/Chrome/Webkit
locale = parseLocale(navigator.language); // FF/Opera/Chrome/Webkit
}

@@ -185,8 +234,4 @@ if (!locale) {

undefined));
if (typeof(lang) !== 'undefined' && lang) {
// for some reason, MS uses lower case region tags
locale = (lang.length > 3) ? lang.substring(0,3) + lang.substring(3,5).toUpperCase() : lang;
} else {
locale = undefined;
}
// for some reason, MS uses lower case region tags
locale = parseLocale(lang);
}

@@ -200,5 +245,5 @@ break;

PalmSystem.locales.UI.length > 0) {
locale = PalmSystem.locales.UI;
locale = parseLocale(PalmSystem.locales.UI);
} else if (typeof(PalmSystem.locale) !== 'undefined') {
locale = PalmSystem.locale;
locale = parseLocale(PalmSystem.locale);
} else {

@@ -211,6 +256,7 @@ locale = undefined;

// running under plain rhino
locale = environment.user.language;
var l = [environment.user.language];
if (typeof(environment.user.country) === 'string' && environment.user.country.length > 0) {
locale += '-' + environment.user.country;
l.push(environment.user.country);
}
locale = l.join("-");
}

@@ -224,11 +270,3 @@ break;

// an underscore. This translate it back to the BCP-47 form.
if (lang && typeof(lang) !== 'undefined') {
const dot = lang.indexOf('.');
if (dot > -1) {
lang = lang.substring(0, dot);
}
locale = (lang.length > 3) ? lang.substring(0,2).toLowerCase() + '-' + lang.substring(3,5).toUpperCase() : lang;
} else {
locale = undefined;
}
locale = parseLocale(lang);
break;

@@ -241,11 +279,3 @@ case 'nodejs':

// an underscore. This translate it back to the BCP-47 form.
if (lang && typeof(lang) !== 'undefined') {
const dot = lang.indexOf('.');
if (dot > -1) {
lang = lang.substring(0, dot);
}
locale = (lang.length > 3) ? lang.substring(0,2).toLowerCase() + '-' + lang.substring(3,5).toUpperCase() : lang;
} else {
locale = undefined;
}
locale = parseLocale(lang);
break;

@@ -255,3 +285,3 @@ case 'qt':

const locobj = Qt.locale();
locale = locobj.name && locobj.name.replace("_", "-") || "en-US";
locale = parseLocale(locobj.name || "en-US");
break;

@@ -323,4 +353,16 @@ }

/**
* Used in unit testing to start afresh.
* @private
*/
export function clearCache() {
platform = locale = browser = tz = undefined;
};
/**
* Used in unit testing to simulate a platform.
* @private
*/
export function setPlatform(plat) {
platform = plat;
};

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc