1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 | { args, fs, karg, kolor, noon, slash } = require 'kxk'
|
10 |
|
11 | semver = require 'semver'
|
12 | args = karg """
|
13 |
|
14 | bump
|
15 | semver . ? semver or increment type . *
|
16 | increment . ? increment type: major, minor or patch . = minor
|
17 | """
|
18 |
|
19 | if args.semver? and not semver.valid args.semver
|
20 | if args.semver in ['major' 'minor' 'patch']
|
21 | args.increment = args.semver
|
22 | delete args.semver
|
23 | else
|
24 | log "not a semver version: #{args.semver.yellow}".red
|
25 | process.exit 1
|
26 |
|
27 | file = slash.join process.cwd(), 'package.json'
|
28 | pack = require file
|
29 | oldversion = pack.version
|
30 | oldversion = "0.0.0" if not semver.valid oldversion
|
31 | pack.version = args.semver ? semver.inc oldversion, args.increment
|
32 | log kolor.green(slash.basename(slash.dir file)), kolor.gray(oldversion), kolor.dim(kolor.gray('►')), kolor.red(kolor.bold(pack.version))
|
33 |
|
34 |
|
35 | fs.writeFileSync file, JSON.stringify(pack, null, ' '), encoding: 'utf8'
|
36 |
|
37 |
|
38 | noonFile = slash.join process.cwd(), 'package.noon'
|
39 | if fs.existsSync noonFile
|
40 | noon.save noonFile, pack,
|
41 | indent: ' '
|
42 | maxalign: 16
|
43 |
|