diff options
Diffstat (limited to 'deps/node/deps/npm/node_modules/os-locale/index.js')
-rw-r--r-- | deps/node/deps/npm/node_modules/os-locale/index.js | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/deps/node/deps/npm/node_modules/os-locale/index.js b/deps/node/deps/npm/node_modules/os-locale/index.js deleted file mode 100644 index 1ada7a49..00000000 --- a/deps/node/deps/npm/node_modules/os-locale/index.js +++ /dev/null @@ -1,101 +0,0 @@ -'use strict'; -const execa = require('execa'); -const lcid = require('lcid'); -const mem = require('mem'); - -const defaultOpts = {spawn: true}; -const defaultLocale = 'en_US'; - -function getEnvLocale(env) { - env = env || process.env; - return env.LC_ALL || env.LC_MESSAGES || env.LANG || env.LANGUAGE; -} - -function parseLocale(x) { - const env = x.split('\n').reduce((env, def) => { - def = def.split('='); - env[def[0]] = def[1].replace(/^"|"$/g, ''); - return env; - }, {}); - return getEnvLocale(env); -} - -function getLocale(str) { - return (str && str.replace(/[.:].*/, '')); -} - -function getAppleLocale() { - return execa.stdout('defaults', ['read', '-g', 'AppleLocale']); -} - -function getAppleLocaleSync() { - return execa.sync('defaults', ['read', '-g', 'AppleLocale']).stdout; -} - -function getUnixLocale() { - if (process.platform === 'darwin') { - return getAppleLocale(); - } - - return execa.stdout('locale') - .then(stdout => getLocale(parseLocale(stdout))); -} - -function getUnixLocaleSync() { - if (process.platform === 'darwin') { - return getAppleLocaleSync(); - } - - return getLocale(parseLocale(execa.sync('locale').stdout)); -} - -function getWinLocale() { - return execa.stdout('wmic', ['os', 'get', 'locale']) - .then(stdout => { - const lcidCode = parseInt(stdout.replace('Locale', ''), 16); - return lcid.from(lcidCode); - }); -} - -function getWinLocaleSync() { - const stdout = execa.sync('wmic', ['os', 'get', 'locale']).stdout; - const lcidCode = parseInt(stdout.replace('Locale', ''), 16); - return lcid.from(lcidCode); -} - -module.exports = mem(opts => { - opts = opts || defaultOpts; - const envLocale = getEnvLocale(); - let thenable; - - if (envLocale || opts.spawn === false) { - thenable = Promise.resolve(getLocale(envLocale)); - } else if (process.platform === 'win32') { - thenable = getWinLocale(); - } else { - thenable = getUnixLocale(); - } - - return thenable.then(locale => locale || defaultLocale) - .catch(() => defaultLocale); -}); - -module.exports.sync = mem(opts => { - opts = opts || defaultOpts; - const envLocale = getEnvLocale(); - let res; - - if (envLocale || opts.spawn === false) { - res = getLocale(envLocale); - } else { - try { - if (process.platform === 'win32') { - res = getWinLocaleSync(); - } else { - res = getUnixLocaleSync(); - } - } catch (err) {} - } - - return res || defaultLocale; -}); |