From e522c6ea5cf8c757a86d2b39126f8e6db64ce5c6 Mon Sep 17 00:00:00 2001 From: Mickael Jeanroy Date: Wed, 16 Nov 2016 17:32:34 +0100 Subject: [PATCH] core: add eslint --- .eslintrc | 12 ++++++++++++ gulpfile.js | 16 +++++++++++++--- package.json | 4 ++++ src/index.js | 2 +- 4 files changed, 30 insertions(+), 4 deletions(-) create mode 100644 .eslintrc diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 00000000..dd56667a --- /dev/null +++ b/.eslintrc @@ -0,0 +1,12 @@ +{ + "extends": "google", + "parserOptions": { + "ecmaVersion": 6, + }, + "env": { + "node": true + }, + "rules": { + "max-len": [2, 140, 2] + } +} diff --git a/gulpfile.js b/gulpfile.js index 842d2868..81314477 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -22,12 +22,12 @@ * SOFTWARE. */ -const fs = require('fs'); const path = require('path'); const gulp = require('gulp'); const jasmine = require('gulp-jasmine'); const babel = require('gulp-babel'); const del = require('del'); +const eslint = require('gulp-eslint'); gulp.task('test', ['build'], () => { return gulp @@ -37,13 +37,23 @@ gulp.task('test', ['build'], () => { gulp.task('clean', () => { return del([ - path.join(__dirname, 'dist') + path.join(__dirname, 'dist'), ]); }); -gulp.task('build', ['clean'], () => { +gulp.task('build', ['clean', 'lint'], () => { return gulp .src(path.join(__dirname, 'src', 'index.js')) .pipe(babel()) .pipe(gulp.dest(path.join(__dirname, 'dist'))); }); + +gulp.task('lint', () => { + const srcFiles = path.join(__dirname, 'src/**/*.js'); + const testFiles = path.join(__dirname, 'test/**/*.js'); + return gulp + .src([srcFiles, testFiles]) + .pipe(eslint()) + .pipe(eslint.format()) + .pipe(eslint.failAfterError()); +}); diff --git a/package.json b/package.json index df47d956..45909266 100644 --- a/package.json +++ b/package.json @@ -4,6 +4,7 @@ "description": "Rollup plugin to add license banner to the final bundle", "main": "dist/index.js", "scripts": { + "lint": "gulp lint", "clean": "gulp clean", "build": "gulp build", "test": "gulp test" @@ -24,8 +25,11 @@ "babel": "6.5.2", "babel-preset-es2015": "6.18.0", "del": "2.2.2", + "eslint": "^3.10.2", + "eslint-config-google": "^0.7.0", "gulp": "3.9.1", "gulp-babel": "6.1.2", + "gulp-eslint": "^3.0.1", "gulp-jasmine": "2.4.2", "jasmine-core": "2.5.2" } diff --git a/src/index.js b/src/index.js index 0ef3f0d9..13026a71 100644 --- a/src/index.js +++ b/src/index.js @@ -31,7 +31,7 @@ const MagicString = require('magic-string'); const EOL = '\n'; -module.exports = function (options) { +module.exports = (options) => { return { transformBundle(code) { const file = path.resolve(options.file);