Skip to content

Commit 425320c

Browse files
vikr01chriso
authored andcommittedOct 21, 2018
chore: upgrade to babel 7 (#915)
* update babel deps * use .babelrc instead of cli arguments * upgrade build-browser script * use babel-eslint parser * use babel register to run babel on test files * build for node@0.10
1 parent dad8961 commit 425320c

8 files changed

+54
-38
lines changed
 

‎.babelrc

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"presets": [
3+
["@babel/preset-env", {"targets": {"node": "0.10"}}]
4+
],
5+
"plugins": [
6+
"add-module-exports"
7+
]
8+
}

‎.eslintrc.json

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"extends": "airbnb-base",
3+
"parser": "babel-eslint",
34
"parserOptions": {
45
"ecmaVersion": 6,
56
"sourceType": "module"

‎build-browser.js

+16-10
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
1-
const pkg = require('./package.json');
2-
const fs = require('fs');
3-
const rollup = require('rollup').rollup;
4-
const babel = require('rollup-plugin-babel');
1+
/* eslint import/no-extraneous-dependencies: 0 */
2+
import fs from 'fs';
3+
import { rollup } from 'rollup';
4+
import babel from 'rollup-plugin-babel';
5+
import babelPresetEnv from '@babel/preset-env';
6+
import pkg from './package.json';
57

68
rollup({
79
entry: 'src/index.js',
810
plugins: [
911
babel({
10-
presets: ['es2015-rollup'],
12+
presets: [[babelPresetEnv, { modules: false }]],
1113
babelrc: false,
1214
}),
1315
],
@@ -17,12 +19,16 @@ rollup({
1719
format: 'umd',
1820
moduleName: pkg.name,
1921
banner: (
20-
'/*!\n' +
21-
String(fs.readFileSync('./LICENSE')).trim().split('\n').map(l => ` * ${l}`).join('\n') +
22-
'\n */'
22+
`/*!\n${
23+
String(fs.readFileSync('./LICENSE'))
24+
.trim()
25+
.split('\n')
26+
.map(l => ` * ${l}`)
27+
.join('\n')
28+
}\n */`
2329
),
2430
})
25-
)).catch(e => {
26-
process.stderr.write(e.message + '\n');
31+
)).catch((e) => {
32+
process.stderr.write(`${e.message}\n`);
2733
process.exit(1);
2834
});

‎package.json

+10-8
Original file line numberDiff line numberDiff line change
@@ -37,16 +37,18 @@
3737
"url": "https://github.com/chriso/validator.js.git"
3838
},
3939
"devDependencies": {
40-
"babel-cli": "^6.24.0",
41-
"babel-plugin-add-module-exports": "^0.2.1",
42-
"babel-preset-es2015": "^6.24.0",
43-
"babel-preset-es2015-rollup": "^3.0.0",
40+
"@babel/cli": "^7.0.0",
41+
"@babel/core": "^7.0.0",
42+
"@babel/preset-env": "^7.0.0",
43+
"@babel/register": "^7.0.0",
44+
"babel-eslint": "^10.0.1",
45+
"babel-plugin-add-module-exports": "^1.0.0",
4446
"eslint": "^4.19.1",
4547
"eslint-config-airbnb-base": "^12.1.0",
4648
"eslint-plugin-import": "^2.11.0",
4749
"mocha": "^5.1.1",
4850
"rollup": "^0.43.0",
49-
"rollup-plugin-babel": "^2.7.1",
51+
"rollup-plugin-babel": "^4.0.1",
5052
"uglify-js": "^3.0.19"
5153
},
5254
"scripts": {
@@ -56,11 +58,11 @@
5658
"clean:browser": "rm -rf validator*.js",
5759
"clean": "npm run clean:node && npm run clean:browser",
5860
"minify": "uglifyjs validator.js -o validator.min.js --compress --mangle --comments /Copyright/",
59-
"build:browser": "babel-node build-browser && npm run minify",
60-
"build:node": "babel src -d . --presets es2015 --plugins add-module-exports",
61+
"build:browser": "node --require @babel/register build-browser && npm run minify",
62+
"build:node": "babel src -d .",
6163
"build": "npm run build:browser && npm run build:node",
6264
"pretest": "npm run lint && npm run build",
63-
"test": "mocha --reporter dot"
65+
"test": "mocha --require @babel/register --reporter dot"
6466
},
6567
"engines": {
6668
"node": ">= 0.10"

‎test/client-side.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
let assert = require('assert');
2-
let validator = require('../validator');
3-
let min = require('../validator.min');
1+
import assert from 'assert';
2+
import validator from '../validator';
3+
import min from '../validator.min';
44

55
describe('Minified version', () => {
66
it('should export the same things as the server-side version', () => {

‎test/exports.js

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
let assert = require('assert');
2-
let validator = require('../index');
3-
let isPostalCodeLocales = require('../lib/isPostalCode').locales;
4-
const isAlphaLocales = require('../lib/isAlpha').locales;
5-
const isAlphanumericLocales = require('../lib/isAlphanumeric').locales;
6-
const isMobilePhoneLocales = require('../lib/isMobilePhone').locales;
7-
const isFloatLocales = require('../lib/isFloat').locales;
1+
import assert from 'assert';
2+
import validator from '../index';
3+
import { locales as isPostalCodeLocales } from '../lib/isPostalCode';
4+
import { locales as isAlphaLocales } from '../lib/isAlpha';
5+
import { locales as isAlphanumericLocales } from '../lib/isAlphanumeric';
6+
import { locales as isMobilePhoneLocales } from '../lib/isMobilePhone';
7+
import { locales as isFloatLocales } from '../lib/isFloat';
88

99
describe('Exports', () => {
1010
it('should export validators', () => {

‎test/sanitizers.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
let validator = require('../index');
2-
let format = require('util').format;
1+
import { format } from 'util';
2+
import validator from '../index';
33

44
function test(options) {
55
let args = options.args || [];

‎test/validators.js

+7-8
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
let validator = require('../index'),
2-
format = require('util').format,
3-
assert = require('assert'),
4-
path = require('path'),
5-
fs = require('fs'),
6-
vm = require('vm');
7-
8-
let validator_js = fs.readFileSync(path.join(__dirname, '../validator.js')).toString();
1+
import { format } from 'util';
2+
import assert from 'assert';
3+
import fs from 'fs';
4+
import vm from 'vm';
5+
import validator from '../index';
6+
7+
let validator_js = fs.readFileSync(require.resolve('../validator.js')).toString();
98

109
function test(options) {
1110
let args = options.args || [];

0 commit comments

Comments
 (0)
Please sign in to comment.