1 | #!/usr/bin/env node
|
2 |
|
3 | 'use strict';
|
4 |
|
5 | const chalk = require('chalk');
|
6 | const mri = require('mri');
|
7 |
|
8 | const prettyQuick = require('..').default;
|
9 |
|
10 | const args = mri(process.argv.slice(2));
|
11 |
|
12 | let success = true;
|
13 | prettyQuick(
|
14 | process.cwd(),
|
15 | Object.assign({}, args, {
|
16 | onFoundSinceRevision: (scm, revision) => {
|
17 | console.log(
|
18 | `🔍 Finding changed files since ${chalk.bold(
|
19 | scm
|
20 | )} revision ${chalk.bold(revision)}.`
|
21 | );
|
22 | },
|
23 |
|
24 | onFoundChangedFiles: changedFiles => {
|
25 | console.log(
|
26 | `🎯 Found ${chalk.bold(changedFiles.length)} changed ${
|
27 | changedFiles.length === 1 ? 'file' : 'files'
|
28 | }.`
|
29 | );
|
30 | },
|
31 |
|
32 | onPartiallyStagedFile: file => {
|
33 | console.log(`✗ Found ${chalk.bold('partially')} staged file ${file}.`);
|
34 | success = false;
|
35 | },
|
36 |
|
37 | onWriteFile: file => {
|
38 | console.log(`✍️ Fixing up ${chalk.bold(file)}.`);
|
39 | },
|
40 | })
|
41 | );
|
42 |
|
43 | if (success) {
|
44 | console.log('✅ Everything is awesome!');
|
45 | } else {
|
46 | console.log(
|
47 | '✗ Partially staged files were fixed up.' +
|
48 | ` ${chalk.bold('Please update stage before committing')}.`
|
49 | );
|
50 | process.exit(1);
|
51 | }
|