From 42fea954c496b08b03addb6d3bd1d2561c36475e Mon Sep 17 00:00:00 2001 From: zigomir Date: Fri, 24 Jun 2016 10:44:55 -0700 Subject: [PATCH 1/2] Don't make .babelrc a requirement. If you don't have a .babelrc file in your project you still get babel warning: "You are trying to use "babel". babel-preset-es2015, babel-runtime and babel-plugin-transform-runtime are missing." --- lib/compilers/babel.js | 56 +++++++++++++++++++++--------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/lib/compilers/babel.js b/lib/compilers/babel.js index d999bfa..3e97f80 100644 --- a/lib/compilers/babel.js +++ b/lib/compilers/babel.js @@ -3,40 +3,40 @@ var path = require('path') var assign = require('object-assign') var ensureRequire = require('../ensure-require') -var defaultBabelOptions = { - presets: ['es2015'], - plugins: ['transform-runtime'] -} +module.exports = function (raw, cb, compiler, filePath) { + var defaultBabelOptions = { + presets: ['es2015'], + plugins: ['transform-runtime'] + } -var babelRcPath = path.resolve(process.cwd(), '.babelrc') -var babelOptions = fs.existsSync(babelRcPath) - ? getBabelRc() || defaultBabelOptions - : defaultBabelOptions + var babelRcPath = path.resolve(process.cwd(), '.babelrc') + var babelOptions = fs.existsSync(babelRcPath) + ? getBabelRc() || defaultBabelOptions + : defaultBabelOptions -function getBabelRc () { - var rc - try { - rc = JSON.parse(fs.readFileSync(babelRcPath, 'utf-8')) - } catch (e) { - throw new Error('[vueify] Your .babelrc seems to be incorrectly formatted.') + function getBabelRc () { + var rc + try { + rc = JSON.parse(fs.readFileSync(babelRcPath, 'utf-8')) + } catch (e) { + throw new Error('[vueify] Your .babelrc seems to be incorrectly formatted.') + } + return rc } - return rc -} -if (babelOptions === defaultBabelOptions) { - try { - ensureRequire('babel', ['babel-preset-es2015', 'babel-runtime', 'babel-plugin-transform-runtime']) - } catch (e) { - console.error(e.message) - console.error( - '\n^^^ You are seeing this because you are using Vueify\'s default babel ' + - 'configuration. You can override this with .babelrc or the babel option ' + - 'in vue.config.js.' - ) + if (babelOptions === defaultBabelOptions) { + try { + ensureRequire('babel', ['babel-preset-es2015', 'babel-runtime', 'babel-plugin-transform-runtime']) + } catch (e) { + console.error(e.message) + console.error( + '\n^^^ You are seeing this because you are using Vueify\'s default babel ' + + 'configuration. You can override this with .babelrc or the babel option ' + + 'in vue.config.js.' + ) + } } -} -module.exports = function (raw, cb, compiler, filePath) { try { var babel = require('babel-core') var options = assign({ From 0452762892875ec24d3c84bc5443f29ee1272e31 Mon Sep 17 00:00:00 2001 From: zigomir Date: Tue, 28 Jun 2016 18:23:00 -0700 Subject: [PATCH 2/2] Move only comparison to exported function. --- lib/compilers/babel.js | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/lib/compilers/babel.js b/lib/compilers/babel.js index 3e97f80..d237ed6 100644 --- a/lib/compilers/babel.js +++ b/lib/compilers/babel.js @@ -3,27 +3,27 @@ var path = require('path') var assign = require('object-assign') var ensureRequire = require('../ensure-require') -module.exports = function (raw, cb, compiler, filePath) { - var defaultBabelOptions = { - presets: ['es2015'], - plugins: ['transform-runtime'] - } +var defaultBabelOptions = { + presets: ['es2015'], + plugins: ['transform-runtime'] +} - var babelRcPath = path.resolve(process.cwd(), '.babelrc') - var babelOptions = fs.existsSync(babelRcPath) - ? getBabelRc() || defaultBabelOptions - : defaultBabelOptions +var babelRcPath = path.resolve(process.cwd(), '.babelrc') +var babelOptions = fs.existsSync(babelRcPath) + ? getBabelRc() || defaultBabelOptions + : defaultBabelOptions - function getBabelRc () { - var rc - try { - rc = JSON.parse(fs.readFileSync(babelRcPath, 'utf-8')) - } catch (e) { - throw new Error('[vueify] Your .babelrc seems to be incorrectly formatted.') - } - return rc +function getBabelRc () { + var rc + try { + rc = JSON.parse(fs.readFileSync(babelRcPath, 'utf-8')) + } catch (e) { + throw new Error('[vueify] Your .babelrc seems to be incorrectly formatted.') } + return rc +} +module.exports = function (raw, cb, compiler, filePath) { if (babelOptions === defaultBabelOptions) { try { ensureRequire('babel', ['babel-preset-es2015', 'babel-runtime', 'babel-plugin-transform-runtime'])