opt-check.js 1.2 KB

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