first commit

This commit is contained in:
2024-07-15 11:28:08 +02:00
commit f52d538ea5
21891 changed files with 6161164 additions and 0 deletions

View File

@@ -0,0 +1,57 @@
'use strict';
const semverInc = require('semver/functions/inc');
const packageJson = require('../../package.json');
const fs = require('fs');
const preId = process.argv[2];
if (!['dev', 'beta'].includes(preId)) {
console.error('missing argument dev or beta mode');
process.exit(1);
return;
}
const bumpVersion = (relativeVersion, lastVersionTagName, bumpsFromCurrentVersion = 1) => {
const lastVersion = packageJson[lastVersionTagName] || '';
let expectedVersion = relativeVersion;
(new Array(bumpsFromCurrentVersion).fill(1)).forEach(() => {
expectedVersion = semverInc(expectedVersion, 'minor');
});
let currentLastVersionNumber = 0;
if (lastVersion) {
const splitVersion = lastVersion.split(`-${preId}`);
if (splitVersion[0] === expectedVersion) {
const currentLastVersion = splitVersion[splitVersion.length - 1];
currentLastVersionNumber = Number(currentLastVersion);
if (Number.isNaN(currentLastVersionNumber)) {
console.error(`invalid ${preId} version: ${currentLastVersion}`);
process.exit(1);
return;
}
}
}
const newVersion = `${expectedVersion}-${preId}${currentLastVersionNumber + 1}`;
packageJson[lastVersionTagName] = newVersion;
fs.writeFileSync('./package.json', JSON.stringify(packageJson, null, 4));
console.log(newVersion);
}
if (preId === 'beta') {
const relativeVersion = packageJson.version;
bumpVersion(relativeVersion, 'last_beta_version');
return;
}
if (preId === 'dev') {
const lastBetaVersion = (() => {
const attrValue = packageJson.last_beta_version;
if (!attrValue) {
return '';
}
return attrValue.split('-')[0];
})();
const relativeVersion = lastBetaVersion || packageJson.version;
bumpVersion(relativeVersion, 'last_dev_version');
}