Skip to content

Commit 8f0bbb8

Browse files
committed
Add Babel setup
1 parent 1b88be6 commit 8f0bbb8

File tree

11 files changed

+606
-17
lines changed

11 files changed

+606
-17
lines changed

.babelrc

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"presets": [
3+
[
4+
"@babel/preset-env",
5+
{
6+
"targets": { "node": "6.0.0" },
7+
"useBuiltIns": "usage"
8+
}
9+
]
10+
],
11+
"plugins": ["@babel/plugin-transform-runtime"]
12+
}

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@ core
99
.yarn-error.log
1010
.nyc_output
1111
coverage
12+
dist

custom.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
'use strict'
22

33
// See `index.js` for an alternative to this file
4-
module.exports = require('./src')
4+
// eslint-disable-next-line import/no-internal-modules
5+
module.exports = require('./dist/src')

gulp/files.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,6 @@
1010
"examples/*.js",
1111
"examples/**/*.js"
1212
],
13+
"TRANSPILED": ["src", "test"],
1314
"MARKDOWN": ["*.md"]
1415
}

gulp/tasks/build.js

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
'use strict'
2+
3+
const { series } = require('gulp')
4+
5+
const { getWatchTask } = require('../utils')
6+
const { TRANSPILED } = require('../files')
7+
const gulpExeca = require('../exec')
8+
9+
const babel = function() {
10+
const promises = TRANSPILED.map(dir =>
11+
gulpExeca(
12+
`babel ${dir} --out-dir dist/${dir} --copy-files --delete-dir-on-start --source-maps --no-comments --minified --retain-lines`,
13+
),
14+
)
15+
return Promise.all(promises)
16+
}
17+
18+
const build = series(babel)
19+
20+
// eslint-disable-next-line fp/no-mutation
21+
build.description = 'Build source files'
22+
23+
const buildwatch = getWatchTask({ TRANSPILED: build }, build)
24+
25+
// eslint-disable-next-line fp/no-mutation
26+
buildwatch.description = 'Build source files in watch mode'
27+
28+
module.exports = {
29+
build,
30+
buildwatch,
31+
}

gulp/tasks/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,6 @@ module.exports = {
55
...require('./test'),
66
...require('./check'),
77
...require('./unit'),
8+
...require('./build'),
89
...require('./emit'),
910
}

gulp/tasks/main.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@
33
const { parallel } = require('gulp')
44

55
const { testwatch } = require('./test')
6+
const { buildwatch } = require('./build')
67

7-
const dev = parallel(testwatch)
8+
const dev = parallel(testwatch, buildwatch)
89

910
// eslint-disable-next-line fp/no-mutation
10-
dev.description = 'Lint and test source files'
11+
dev.description = 'Lint, test and build source files'
1112

1213
module.exports = {
1314
dev,

index.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
'use strict'
22

3-
const setup = require('./src')
3+
// eslint-disable-next-line import/no-internal-modules
4+
const setup = require('./dist/src')
45

56
// Logging setup is automatically performed by `node -r log-process-errors` or
67
// `require('log-process-errors')`.

0 commit comments

Comments
 (0)