cli.js 794 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #!/usr/bin/env node
  2. 'use strict';
  3. var getStdin = require('get-stdin');
  4. var meow = require('meow');
  5. var findVersions = require('./');
  6. var cli = meow([
  7. 'Usage',
  8. ' $ find-versions <string> [--first] [--loose]',
  9. ' $ echo <string> | find-versions',
  10. '',
  11. 'Example',
  12. ' $ find-versions \'unicorns v1.2.3\'',
  13. ' 1.2.3',
  14. '',
  15. ' $ curl --version | find-versions --first',
  16. ' 7.30.0',
  17. '',
  18. 'Options',
  19. ' --first Return the first match',
  20. ' --loose Match non-semver versions like 1.88'
  21. ]);
  22. function init(data) {
  23. var ret = findVersions(data, {loose: cli.flags.loose});
  24. console.log(cli.flags.first ? ret[0] : ret.join('\n'));
  25. }
  26. if (process.stdin.isTTY) {
  27. if (!cli.input[0]) {
  28. console.error('Expected a string');
  29. process.exit(1);
  30. }
  31. init(cli.input[0]);
  32. } else {
  33. getStdin(init);
  34. }