Skip to content

Commit 4c7d6fb

Browse files
committed
Updated setup to use ES6. Resolved linting errors. Used centralized chalkConfig. Tweaked messaging.
1 parent c1aaba9 commit 4c7d6fb

File tree

4 files changed

+23
-21
lines changed

4 files changed

+23
-21
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"version": "4.0.0",
44
"description": "Starter kit for creating apps with React and Redux",
55
"scripts": {
6-
"setup": "node tools/setup/setupMessage.js && npm install && node tools/setup/setup.js",
6+
"setup": "babel-node tools/setup/setupMessage.js && npm install && babel-node tools/setup/setup.js",
77
"remove-demo": "babel-node tools/removeDemo.js",
88
"start-message": "babel-node tools/startMessage.js",
99
"prestart": "npm-run-all --parallel start-message remove-dist",

tools/setup/setup.js

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,26 @@
1-
var rimraf = require('rimraf');
2-
var chalk = require('chalk');
3-
var replace = require("replace");
4-
var prompt = require("prompt");
1+
import rimraf from 'rimraf';
2+
import {chalkSuccess, chalkProcessing} from '../chalkConfig';
3+
import replace from 'replace';
4+
import prompt from 'prompt';
5+
import prompts from './setupPrompts';
56

6-
var prompts = require('./setupPrompts');
7+
/* eslint-disable no-console */
78

8-
console.log(chalk.green('Dependencies installed.'));
9+
console.log(chalkSuccess('Dependencies installed.'));
910

1011
// remove the original git repository
1112
rimraf('.git', error => {
1213
if (error) throw new Error(error);
1314
});
14-
console.log(chalk.green('Original Git repository removed.\n'));
15+
console.log(chalkSuccess('Original Git repository removed.\n'));
1516

1617
// prompt the user for updates to package.json
17-
console.log(chalk.blue('Updating package.json settings:'));
18+
console.log(chalkProcessing('Updating package.json settings:'));
1819
prompt.start();
1920
prompt.get(prompts, function(err, result) {
2021
// parse user responses
21-
// (default values provided for fields that will cause npm to complain if left empty)
22-
var responses = [
22+
// default values provided for fields that will cause npm to complain if left empty
23+
const responses = [
2324
{
2425
key: 'name',
2526
value: result.projectName || 'new-project'
@@ -54,12 +55,12 @@ prompt.get(prompts, function(err, result) {
5455
replacement: `$1: "${res.value}"`,
5556
paths: ['package.json'],
5657
recursive: false,
57-
silent: true,
58+
silent: true
5859
});
59-
})
60+
});
6061

6162
// remove all setup scripts from the 'tools' folder
62-
console.log(chalk.green('\nSetup complete! Cleaning up...\n'));
63+
console.log(chalkSuccess('\nSetup complete! Cleaning up...\n'));
6364
rimraf('./tools/setup', error => {
6465
if (error) throw new Error(error);
6566
});

tools/setup/setupMessage.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
// This script simply displays an intro message for the setup script
2-
console.log('===========================');
1+
// This script displays an intro message for the setup script
2+
/* eslint-disable no-console */
3+
import {chalkProcessing} from '../chalkConfig';
4+
console.log(chalkProcessing('==========================='));
35
console.log('= React Slingshot Setup =');
4-
console.log('===========================\n');
5-
console.log('Installing dependencies.');
6-
console.log('Please be patient, this might take a few minutes...\n');
6+
console.log(chalkProcessing('===========================\n'));
7+
console.log(chalkProcessing('Installing dependencies. Please wait...'));

tools/setup/setupPrompts.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
// Define prompts for use with npm 'prompt' module in setup script
2-
module.exports = [
2+
export default [
33
{
44
name: 'projectName',
5-
description: 'Project name (deafult: new-project)'
5+
description: 'Project name (default: new-project)'
66
},
77
{
88
name: 'version',

0 commit comments

Comments
 (0)