PATH:
usr
/
lib
/
node_modules
/
npm
/
node_modules
/
@npmcli
/
config
/
lib
const nopt = require('nopt') const { Umask, validate: validateUmask } = require('./umask.js') const semver = require('semver') const validateSemver = (data, k, val) => { const valid = semver.valid(val) if (!valid) { return false } data[k] = valid } const noptValidatePath = nopt.typeDefs.path.validate const validatePath = (data, k, val) => { if (typeof val !== 'string') { return false } return noptValidatePath(data, k, val) } // add descriptions so we can validate more usefully module.exports = { ...nopt.typeDefs, semver: { type: semver, validate: validateSemver, description: 'full valid SemVer string', }, Umask: { type: Umask, validate: validateUmask, description: 'octal number in range 0o000..0o777 (0..511)', }, url: { ...nopt.typeDefs.url, description: 'full url with "http://"', }, path: { ...nopt.typeDefs.path, validate: validatePath, description: 'valid filesystem path', }, Number: { ...nopt.typeDefs.Number, description: 'numeric value', }, Boolean: { ...nopt.typeDefs.Boolean, description: 'boolean value (true or false)', }, Date: { ...nopt.typeDefs.Date, description: 'valid Date string', }, } // TODO: make nopt less of a global beast so this kludge isn't necessary nopt.typeDefs = module.exports
[-] umask.js
[edit]
[+]
..
[-] parse-field.js
[edit]
[-] type-description.js
[edit]
[-] nerf-dart.js
[edit]
[-] type-defs.js
[edit]
[-] env-replace.js
[edit]
[-] index.js
[edit]
[-] set-envs.js
[edit]