cli.js 850 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/usr/bin/env node
  2. let help = `
  3. Usage: mini-svg-data-uri <source> [dest]
  4. Options:
  5. -v, --version Output the version number
  6. -h, --help Display help for command
  7. Examples:
  8. mini-svg-data-uri file.svg Write to stdout
  9. mini-svg-data-uri icon.svg icon.uri Write to file
  10. `;
  11. let [source, dest] = process.argv.slice(2);
  12. switch (source) {
  13. case '-h':
  14. case '--help':
  15. case undefined:
  16. console.log(help);
  17. process.exit();
  18. case '-v':
  19. case '--version':
  20. console.log(require('./package').version);
  21. process.exit();
  22. }
  23. const fs = require('fs');
  24. const svgToMiniDataURI = require('.');
  25. fs.readFile(source, 'utf8', (err, data) => {
  26. if (err) {
  27. console.error(err.message);
  28. console.log(help);
  29. process.exit(1);
  30. }
  31. const out = svgToMiniDataURI(data);
  32. dest ? fs.writeFileSync(dest, out) : console.log(out);
  33. });