generate-version-json.js 628 B

1234567891011121314151617181920212223242526272829
  1. const semver = require('semver');
  2. const fs = require('node:fs');
  3. const outputPath = process.argv[2];
  4. const currentVersion = process.argv[3];
  5. const parsed = semver.parse(currentVersion);
  6. let prerelease = '';
  7. if (parsed.prerelease && parsed.prerelease.length > 0) {
  8. prerelease = parsed.prerelease.join('.');
  9. }
  10. const {
  11. major,
  12. minor,
  13. patch
  14. } = parsed;
  15. fs.writeFileSync(outputPath, JSON.stringify({
  16. full_version: currentVersion,
  17. major,
  18. minor,
  19. patch,
  20. prerelease,
  21. prerelease_number: prerelease ? parsed.prerelease[parsed.prerelease.length - 1] : '0',
  22. has_prerelease: prerelease === '' ? 0 : 1
  23. }, null, 2));