1 | const { shell, query, getPackageJson, writePackageJson } = require('./utils');
|
2 | const { logInfo } = require('./log');
|
3 |
|
4 | async function getLastPublishedVersion(name) {
|
5 | const result = await shell(`npm view ${name} version`, { stdout: false });
|
6 | return result.stdout.trim();
|
7 | }
|
8 |
|
9 | function bumpPackageVersion(packageJson) {
|
10 | const version = packageJson.version.split('.');
|
11 | version[2]++;
|
12 | packageJson.version = version.join('.');
|
13 | writePackageJson(packageJson);
|
14 | return packageJson.version;
|
15 | }
|
16 |
|
17 |
|
18 |
|
19 |
|
20 |
|
21 | module.exports = async function anuxPublish() {
|
22 | await query('Press any key if you have built the package:');
|
23 | const packageJson = getPackageJson();
|
24 | let { name, version } = packageJson;
|
25 | const lastVersion = await getLastPublishedVersion(name);
|
26 | if (lastVersion === version) { version = bumpPackageVersion(packageJson); }
|
27 | logInfo(`Publishing ${name} v${version}...`);
|
28 | await shell('npm publish');
|
29 | } |
\ | No newline at end of file |