1'use strict' 2 3const figgyPudding = require('figgy-pudding') 4const logger = require('./proclog.js') 5 6const AUTH_REGEX = /^(?:.*:)?(token|_authToken|username|_password|password|email|always-auth|_auth|otp)$/ 7const SCOPE_REGISTRY_REGEX = /@.*:registry$/gi 8module.exports = figgyPudding({ 9 annotate: {}, 10 cache: {}, 11 defaultTag: 'tag', 12 dirPacker: {}, 13 dmode: {}, 14 'enjoy-by': 'enjoyBy', 15 enjoyBy: {}, 16 before: 'enjoyBy', 17 fmode: {}, 18 'fetch-retries': { default: 2 }, 19 'fetch-retry-factor': { default: 10 }, 20 'fetch-retry-maxtimeout': { default: 60000 }, 21 'fetch-retry-mintimeout': { default: 10000 }, 22 fullMetadata: 'full-metadata', 23 'full-metadata': { default: false }, 24 gid: {}, 25 git: {}, 26 includeDeprecated: { default: true }, 27 'include-deprecated': 'includeDeprecated', 28 integrity: {}, 29 log: { default: logger }, 30 memoize: {}, 31 offline: {}, 32 preferOffline: 'prefer-offline', 33 'prefer-offline': {}, 34 preferOnline: 'prefer-online', 35 'prefer-online': {}, 36 registry: { default: 'https://registry.npmjs.org/' }, 37 resolved: {}, 38 retry: {}, 39 scope: {}, 40 tag: { default: 'latest' }, 41 uid: {}, 42 umask: {}, 43 where: {} 44}, { 45 other (key) { 46 return key.match(AUTH_REGEX) || key.match(SCOPE_REGISTRY_REGEX) 47 } 48}) 49