yjs-orderedtree
Version:
An ordered tree class for yjs. Lets you use a Y.Map like an ordered tree with insert, delete, and move operations. The children are ordered and the position of a child amongst its sibling can be manipulated
41 lines (34 loc) • 1.24 kB
JavaScript
import { execSync } from "child_process";
import semver from "semver";
import fs from 'fs';
const getPackageJSON = () => {
const packageJSON = fs.readFileSync('./package.json', 'utf-8');
return JSON.parse(packageJSON);
};
const setPackageJSONVersions = (originalVersion, version) => {
packageJSON.version = originalVersion;
packageJSON.developmentVersion = version;
fs.writeFileSync('package.json', JSON.stringify(packageJSON, null, 2));
};
const packageJSON = getPackageJSON();
const originalVersion = `${packageJSON.version}`;
const version = semver.inc(
process.env.NODE_ENV === 'development' ? packageJSON.developmentVersion : packageJSON.version,
'prerelease',
"beta"
);
const force = process.env.NODE_ENV === "development" ? "--force" : "";
const registry =
process.env.NODE_ENV === "development"
? "--registry http://localhost:4873"
: "";
try {
execSync(
`npm version ${version} --allow-same-version ${registry} && npm publish --access public ${force} ${registry} --tag beta`
);
} catch (exception) {
setPackageJSONVersions(originalVersion, version);
}
if (process.env.NODE_ENV === 'development') {
setPackageJSONVersions(originalVersion, version);
}