Browse Source

Merge pull request #253 from loeck/master

Use REAL babel.config in electron-webpack
master
Meriadec Pillet 7 years ago
committed by GitHub
parent
commit
aaa5528f04
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 3
      .babelrc
  2. 40
      .babelrc.js
  3. 32
      babel.config.js
  4. 5
      package.json
  5. 4
      scripts/dist.sh
  6. 2
      scripts/start.sh
  7. 12
      src/components/base/FormattedVal/__tests__/__snapshots__/FormattedVal.test.js.snap
  8. 6
      webpack/internals.config.js
  9. 5
      webpack/main.config.js
  10. 5
      webpack/renderer.config.js
  11. 12
      webpack/rules.js
  12. 8
      yarn.lock

3
.babelrc

@ -0,0 +1,3 @@
{
"presets": ["./babel.config.js"]
}

40
.babelrc.js

@ -1,40 +0,0 @@
const { NODE_ENV } = process.env
const presets = [
[
'@babel/preset-env',
{
loose: true,
modules: NODE_ENV === 'test' ? 'commonjs' : false,
targets: {
electron: '1.8',
node: 'current',
},
},
],
'@babel/preset-flow',
'@babel/preset-react',
'@babel/preset-stage-0',
]
const plugins = [
['babel-plugin-module-resolver', { root: ['src'] }],
[
'babel-plugin-styled-components',
{
displayName: NODE_ENV === 'development',
minify: NODE_ENV === 'production',
},
],
]
module.exports = {
presets,
plugins,
env: {
test: {
presets,
plugins,
},
},
}

32
babel.config.js

@ -0,0 +1,32 @@
const { NODE_ENV } = process.env
const __TEST__ = NODE_ENV === 'test'
module.exports = () => ({
presets: [
[
require('@babel/preset-env'),
{
loose: true,
modules: __TEST__ ? 'commonjs' : false,
targets: {
electron: '1.8',
node: 'current',
},
},
],
require('@babel/preset-flow'),
require('@babel/preset-react'),
require('@babel/preset-stage-0'),
],
plugins: [
[require('babel-plugin-module-resolver'), { root: ['src'] }],
[
require('babel-plugin-styled-components'),
{
displayName: NODE_ENV === 'development',
ssr: __TEST__,
},
],
],
})

5
package.json

@ -20,7 +20,7 @@
"publish-storybook": "bash ./scripts/publish-storybook.sh",
"release": "build",
"start": "bash ./scripts/start.sh",
"storybook": "STORYBOOK_ENV=1 start-storybook -s ./static -p 4444",
"storybook": "NODE_ENV=development STORYBOOK_ENV=1 start-storybook -s ./static -p 4444",
"trans": "node scripts/trans"
},
"lint-staged": {
@ -106,9 +106,10 @@
"@storybook/addon-options": "^3.3.15",
"@storybook/addons": "^3.3.15",
"@storybook/react": "^3.3.15",
"babel-core": "^7.0.0-0",
"babel-core": "7.0.0-bridge.0",
"babel-eslint": "^8.2.1",
"babel-jest": "^22.4.3",
"babel-loader": "^8.0.0-beta.2",
"babel-plugin-module-resolver": "^3.1.1",
"babel-plugin-styled-components": "^1.5.0",
"chalk": "^2.3.1",

4
scripts/dist.sh

@ -1,5 +1,5 @@
#/bin/bash
rm -rf dist &&
NODE_ENV=production webpack-cli --config webpack/internals.config.js &&
electron-webpack
NODE_ENV=production webpack-cli --mode production --config webpack/internals.config.js &&
NODE_ENV=production electron-webpack

2
scripts/start.sh

@ -1,5 +1,5 @@
#/bin/bash
concurrently --raw \
"cross-env NODE_ENV=development webpack-cli --watch --config webpack/internals.config.js" \
"cross-env NODE_ENV=development webpack-cli --mode development --watch --config webpack/internals.config.js" \
"cross-env NODE_ENV=development electron-webpack dev"

12
src/components/base/FormattedVal/__tests__/__snapshots__/FormattedVal.test.js.snap

@ -2,7 +2,7 @@
exports[`components FormattedVal renders a fiat 1`] = `
<span
className="sc-bwzfXH uTxCW sc-bdVaJa ijVSFT"
className="s1c17x4y-0 fJKscS s8vzclq-0 hjqlvj"
color="#66be54"
>
20.00
@ -11,7 +11,7 @@ exports[`components FormattedVal renders a fiat 1`] = `
exports[`components FormattedVal renders a formatted val 1`] = `
<span
className="sc-bwzfXH uTxCW sc-bdVaJa ijVSFT"
className="s1c17x4y-0 fJKscS s8vzclq-0 hjqlvj"
color="#66be54"
>
4
@ -20,7 +20,7 @@ exports[`components FormattedVal renders a formatted val 1`] = `
exports[`components FormattedVal renders a percent 1`] = `
<span
className="sc-bwzfXH uTxCW sc-bdVaJa ijVSFT"
className="s1c17x4y-0 fJKscS s8vzclq-0 hjqlvj"
color="#66be54"
>
30 %
@ -29,7 +29,7 @@ exports[`components FormattedVal renders a percent 1`] = `
exports[`components FormattedVal shows code 1`] = `
<span
className="sc-bwzfXH uTxCW sc-bdVaJa ijVSFT"
className="s1c17x4y-0 fJKscS s8vzclq-0 hjqlvj"
color="#66be54"
>
BTC 4
@ -38,7 +38,7 @@ exports[`components FormattedVal shows code 1`] = `
exports[`components FormattedVal shows sign 1`] = `
<span
className="sc-bwzfXH uTxCW sc-bdVaJa ijVSFT"
className="s1c17x4y-0 fJKscS s8vzclq-0 hjqlvj"
color="#66be54"
>
+ 4
@ -47,7 +47,7 @@ exports[`components FormattedVal shows sign 1`] = `
exports[`components FormattedVal shows sign 2`] = `
<span
className="sc-bwzfXH uTxCW sc-bdVaJa lfEqUE"
className="s1c17x4y-0 fJKscS s8vzclq-0 gqakkd"
color="#fa4352"
>
- 4

6
webpack/internals.config.js

@ -4,6 +4,7 @@ const webpackMain = require('electron-webpack/webpack.main.config')
const plugins = require('./plugins')
const resolve = require('./resolve')
const rules = require('./rules')
const dirs = p =>
fs
@ -40,7 +41,10 @@ module.exports = webpackMain().then(config => ({
path: path.resolve(__dirname, '../dist/internals'),
},
module: config.module,
module: {
...config.module,
rules,
},
plugins: [...plugins('internals'), ...config.plugins],
}))

5
webpack/main.config.js

@ -1,9 +1,14 @@
const plugins = require('./plugins')
const resolve = require('./resolve')
const rules = require('./rules')
const config = {
mode: __ENV__,
plugins: plugins('main'),
resolve,
module: {
rules,
},
}
module.exports = config

5
webpack/renderer.config.js

@ -2,10 +2,15 @@ const HardSourceWebpackPlugin = require('hard-source-webpack-plugin')
const plugins = require('./plugins')
const resolve = require('./resolve')
const rules = require('./rules')
const config = {
mode: __ENV__,
resolve,
plugins: [...plugins('renderer'), new HardSourceWebpackPlugin()],
module: {
rules,
},
devServer: {
historyApiFallback: true,
},

12
webpack/rules.js

@ -0,0 +1,12 @@
const babelConfig = require('../babel.config')
module.exports = [
{
test: /\.js$/,
loader: 'babel-loader',
options: {
babelrc: false,
...babelConfig(),
},
},
]

8
yarn.lock

@ -1689,6 +1689,10 @@ babel-code-frame@^6.22.0, babel-code-frame@^6.26.0:
esutils "^2.0.2"
js-tokens "^3.0.2"
babel-core@7.0.0-bridge.0:
version "7.0.0-bridge.0"
resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece"
babel-core@^6.0.0, babel-core@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8"
@ -1713,10 +1717,6 @@ babel-core@^6.0.0, babel-core@^6.26.0:
slash "^1.0.0"
source-map "^0.5.6"
babel-core@^7.0.0-0:
version "7.0.0-bridge.0"
resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece"
babel-eslint@^8.2.1:
version "8.2.2"
resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-8.2.2.tgz#1102273354c6f0b29b4ea28a65f97d122296b68b"

Loading…
Cancel
Save