First upload version 0.0.1
This commit is contained in:
13
node_modules/env-var/lib/accessors/array.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/array.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asString = require('./string')
|
||||
|
||||
module.exports = function asArray (value, delimiter) {
|
||||
delimiter = delimiter || ','
|
||||
|
||||
if (!value.length) {
|
||||
return []
|
||||
} else {
|
||||
return asString(value).split(delimiter).filter(Boolean)
|
||||
}
|
||||
}
|
||||
11
node_modules/env-var/lib/accessors/bool-strict.js
generated
vendored
Normal file
11
node_modules/env-var/lib/accessors/bool-strict.js
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = function asBoolStrict (value) {
|
||||
const val = value.toLowerCase()
|
||||
|
||||
if ((val !== 'false') && (val !== 'true')) {
|
||||
throw new Error('should be either "true", "false", "TRUE", or "FALSE"')
|
||||
}
|
||||
|
||||
return val !== 'false'
|
||||
}
|
||||
18
node_modules/env-var/lib/accessors/bool.js
generated
vendored
Normal file
18
node_modules/env-var/lib/accessors/bool.js
generated
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = function asBool (value) {
|
||||
const val = value.toLowerCase()
|
||||
|
||||
const allowedValues = [
|
||||
'false',
|
||||
'0',
|
||||
'true',
|
||||
'1'
|
||||
]
|
||||
|
||||
if (allowedValues.indexOf(val) === -1) {
|
||||
throw new Error('should be either "true", "false", "TRUE", "FALSE", 1, or 0')
|
||||
}
|
||||
|
||||
return !(((val === '0') || (val === 'false')))
|
||||
}
|
||||
16
node_modules/env-var/lib/accessors/email-string.js
generated
vendored
Normal file
16
node_modules/env-var/lib/accessors/email-string.js
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
'use strict'
|
||||
|
||||
const asString = require('./string')
|
||||
|
||||
// eslint-disable-next-line no-control-regex
|
||||
const EMAIL_REGEX = /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\u0001-\u0008\u000b\u000c\u000e-\u001f\u0021\u0023-\u005b\u005d-\u007f]|\\[\u0001-\u0009\u000b\u000c\u000e-\u007f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9]))\.){3}(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9])|[a-z0-9-]*[a-z0-9]:(?:[\u0001-\u0008\u000b\u000c\u000e-\u001f\u0021-\u005a\u0053-\u007f]|\\[\u0001-\u0009\u000b\u000c\u000e-\u007f])+)\])$/
|
||||
|
||||
module.exports = function asEmailString (value) {
|
||||
const strValue = asString(value)
|
||||
|
||||
if (!EMAIL_REGEX.test(strValue)) {
|
||||
throw new Error('should be a valid email address')
|
||||
}
|
||||
|
||||
return strValue
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/enum.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/enum.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asString = require('./string')
|
||||
|
||||
module.exports = function asEnum (value, validValues) {
|
||||
const valueString = asString(value)
|
||||
|
||||
if (validValues.indexOf(valueString) < 0) {
|
||||
throw new Error(`should be one of [${validValues.join(', ')}]`)
|
||||
}
|
||||
|
||||
return valueString
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/float-negative.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/float-negative.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asFloat = require('./float')
|
||||
|
||||
module.exports = function asFloatNegative (value) {
|
||||
const ret = asFloat(value)
|
||||
|
||||
if (ret > 0) {
|
||||
throw new Error('should be a negative float')
|
||||
}
|
||||
|
||||
return ret
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/float-positive.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/float-positive.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asFloat = require('./float')
|
||||
|
||||
module.exports = function asFloatPositive (value) {
|
||||
const ret = asFloat(value)
|
||||
|
||||
if (ret < 0) {
|
||||
throw new Error('should be a positive float')
|
||||
}
|
||||
|
||||
return ret
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/float.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/float.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = function asFloat (value) {
|
||||
const n = parseFloat(value)
|
||||
|
||||
// Some values are parsed as valid floats despite being obviously invalid, e.g. "1.o" or "192.168.1.1".
|
||||
// In these cases we would want to throw an error.
|
||||
if (isNaN(n) || isNaN(value)) {
|
||||
throw new Error('should be a valid float')
|
||||
}
|
||||
|
||||
return n
|
||||
}
|
||||
31
node_modules/env-var/lib/accessors/index.js
generated
vendored
Normal file
31
node_modules/env-var/lib/accessors/index.js
generated
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
module.exports = {
|
||||
asArray: require('./array'),
|
||||
asSet: require('./set'),
|
||||
|
||||
asBoolStrict: require('./bool-strict'),
|
||||
asBool: require('./bool'),
|
||||
|
||||
asPortNumber: require('./port'),
|
||||
asEnum: require('./enum'),
|
||||
|
||||
asFloatNegative: require('./float-negative'),
|
||||
asFloatPositive: require('./float-positive'),
|
||||
asFloat: require('./float'),
|
||||
|
||||
asIntNegative: require('./int-negative'),
|
||||
asIntPositive: require('./int-positive'),
|
||||
asInt: require('./int'),
|
||||
|
||||
asJsonArray: require('./json-array'),
|
||||
asJsonObject: require('./json-object'),
|
||||
asJson: require('./json'),
|
||||
|
||||
asRegExp: require('./regexp'),
|
||||
|
||||
asString: require('./string'),
|
||||
|
||||
asUrlObject: require('./url-object'),
|
||||
asUrlString: require('./url-string'),
|
||||
|
||||
asEmailString: require('./email-string')
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/int-negative.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/int-negative.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asInt = require('./int')
|
||||
|
||||
module.exports = function asIntNegative (value) {
|
||||
const ret = asInt(value)
|
||||
|
||||
if (ret > 0) {
|
||||
throw new Error('should be a negative integer')
|
||||
}
|
||||
|
||||
return ret
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/int-positive.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/int-positive.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asInt = require('./int')
|
||||
|
||||
module.exports = function asIntPositive (value) {
|
||||
const ret = asInt(value)
|
||||
|
||||
if (ret < 0) {
|
||||
throw new Error('should be a positive integer')
|
||||
}
|
||||
|
||||
return ret
|
||||
}
|
||||
11
node_modules/env-var/lib/accessors/int.js
generated
vendored
Normal file
11
node_modules/env-var/lib/accessors/int.js
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = function asInt (value) {
|
||||
const n = parseInt(value, 10)
|
||||
|
||||
if (isNaN(n) || n.toString(10) !== value) {
|
||||
throw new Error('should be a valid integer')
|
||||
}
|
||||
|
||||
return n
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/json-array.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/json-array.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asJson = require('./json')
|
||||
|
||||
module.exports = function asJsonArray (value) {
|
||||
var ret = asJson(value)
|
||||
|
||||
if (!Array.isArray(ret)) {
|
||||
throw new Error('should be a parseable JSON Array')
|
||||
}
|
||||
|
||||
return ret
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/json-object.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/json-object.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asJson = require('./json')
|
||||
|
||||
module.exports = function asJsonObject (value) {
|
||||
var ret = asJson(value)
|
||||
|
||||
if (Array.isArray(ret)) {
|
||||
throw new Error('should be a parseable JSON Object')
|
||||
}
|
||||
|
||||
return ret
|
||||
}
|
||||
9
node_modules/env-var/lib/accessors/json.js
generated
vendored
Normal file
9
node_modules/env-var/lib/accessors/json.js
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = function asJson (value) {
|
||||
try {
|
||||
return JSON.parse(value)
|
||||
} catch (e) {
|
||||
throw new Error('should be valid (parseable) JSON')
|
||||
}
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/port.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/port.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asIntPositive = require('./int-positive')
|
||||
|
||||
module.exports = function asPortNumber (value) {
|
||||
var ret = asIntPositive(value)
|
||||
|
||||
if (ret > 65535) {
|
||||
throw new Error('cannot assign a port number greater than 65535')
|
||||
}
|
||||
|
||||
return ret
|
||||
}
|
||||
21
node_modules/env-var/lib/accessors/regexp.js
generated
vendored
Normal file
21
node_modules/env-var/lib/accessors/regexp.js
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = function asRegExp (value, flags) {
|
||||
// We have to test the value and flags indivudally if we want to write our
|
||||
// own error messages,as there is no way to differentiate between the two
|
||||
// errors except by using string comparisons.
|
||||
|
||||
// Test the flags
|
||||
try {
|
||||
RegExp(undefined, flags)
|
||||
} catch (err) {
|
||||
throw new Error('invalid regexp flags')
|
||||
}
|
||||
|
||||
try {
|
||||
return new RegExp(value, flags)
|
||||
} catch (err) {
|
||||
// We know that the regexp is the issue because we tested the flags earlier
|
||||
throw new Error('should be a valid regexp')
|
||||
}
|
||||
}
|
||||
11
node_modules/env-var/lib/accessors/set.js
generated
vendored
Normal file
11
node_modules/env-var/lib/accessors/set.js
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
'use strict'
|
||||
|
||||
const asArray = require('./array')
|
||||
|
||||
module.exports = function asSet (value, delimiter) {
|
||||
if (!value.length) {
|
||||
return new Set()
|
||||
} else {
|
||||
return new Set(asArray(value, delimiter))
|
||||
}
|
||||
}
|
||||
5
node_modules/env-var/lib/accessors/string.js
generated
vendored
Normal file
5
node_modules/env-var/lib/accessors/string.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = function asString (value) {
|
||||
return value
|
||||
}
|
||||
13
node_modules/env-var/lib/accessors/url-object.js
generated
vendored
Normal file
13
node_modules/env-var/lib/accessors/url-object.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
'use strict'
|
||||
|
||||
const asString = require('./string')
|
||||
|
||||
module.exports = function asUrlObject (value) {
|
||||
const ret = asString(value)
|
||||
|
||||
try {
|
||||
return new URL(ret)
|
||||
} catch (e) {
|
||||
throw new Error('should be a valid URL')
|
||||
}
|
||||
}
|
||||
7
node_modules/env-var/lib/accessors/url-string.js
generated
vendored
Normal file
7
node_modules/env-var/lib/accessors/url-string.js
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
'use strict'
|
||||
|
||||
const urlObject = require('./url-object')
|
||||
|
||||
module.exports = function asUrlString (value) {
|
||||
return urlObject(value).toString()
|
||||
}
|
||||
Reference in New Issue
Block a user