From 2f63b254cfeac235d9d183d341cdc1bf7708ded0 Mon Sep 17 00:00:00 2001 From: Darius Tall Date: Fri, 24 Jun 2016 10:25:08 -0400 Subject: [PATCH 1/6] Add the ability to specify other postcss options (#99) * Add the ability to specify other postcss options * Fixed usage of postcss --- lib/style-rewriter.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/style-rewriter.js b/lib/style-rewriter.js index a212d0a..3639240 100644 --- a/lib/style-rewriter.js +++ b/lib/style-rewriter.js @@ -45,9 +45,16 @@ module.exports = function (id, css, scoped) { if (val) { return Promise.resolve(val) } else { - var plugins = options.postcss - ? options.postcss.slice() - : [] + var plugins = [] + var opts = {} + + if (options.postcss instanceof Array) { + plugins = options.postcss.slice() + } else if (options.postcss instanceof Object) { + plugins = options.postcss.plugins || [] + opts = options.postcss.options + } + // scoped css rewrite if (scoped) { plugins.push(addId) @@ -66,7 +73,7 @@ module.exports = function (id, css, scoped) { } currentId = id return postcss(plugins) - .process(css) + .process(css, opts) .then(function (res) { var val = { source: res.css, @@ -77,3 +84,4 @@ module.exports = function (id, css, scoped) { }) } } + From 184b906c74d4d91baee2ad0cc0b03a68c2f0770c Mon Sep 17 00:00:00 2001 From: Evan You Date: Fri, 24 Jun 2016 10:27:24 -0400 Subject: [PATCH 2/6] 8.6.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e11b99f..bbdbffc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vueify", - "version": "8.5.4", + "version": "8.6.0", "description": "Vue component transform for Browserify", "main": "index.js", "repository": { From f38f00f49e8961d5e005bc030170e870caf94b56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=BDiga=20Vidic?= Date: Thu, 30 Jun 2016 08:28:47 -0700 Subject: [PATCH 3/6] babel is only one option. (#105) * babel is only one option. still default if installed. * Another remark. --- README.md | 6 +++--- lib/compiler.js | 10 +++++++++- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index da918e0..5a1f711 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ npm install vueify --save-dev browserify -t vueify -e src/main.js -o build/build.js ``` -If you are using npm 3+, it no longer auto install the peer dependencies. So you will also have to also install the babel-related dependencies: +If you are using npm 3+ and **babel**, it no longer auto install the peer dependencies. So you will also have to also install the babel-related dependencies: ``` bash npm install\ @@ -121,9 +121,9 @@ Make sure to have the `NODE_ENV` environment variable set to `"production"` when If you are using Gulp, note that `gulp --production` **does not** affect vueify; you still need to explicitly set `NODE_ENV=production`. -## ES2015 by Default +## ES2015 when `babel-core` installed -Vueify automatically transforms the JavaScript in your `*.vue` components using Babel. Write ES2015 today! +Vueify automatically transforms the JavaScript in your `*.vue` components using Babel when it is installed. Write ES2015 today! The default Babel (6) options used for Vue.js components are: diff --git a/lib/compiler.js b/lib/compiler.js index 09bb491..293eca7 100644 --- a/lib/compiler.js +++ b/lib/compiler.js @@ -22,6 +22,13 @@ try { hotReloadAPIPath = 'vueify/node_modules/vue-hot-reload-api' } +var hasBabel = true +try { + require('babel-core') +} catch (e) { + hasBabel = false +} + var htmlMinifyOptions = { collapseWhitespace: true, removeComments: true, @@ -291,7 +298,8 @@ function processStyle (node, filePath, id) { */ function processScript (node, filePath, content) { - var lang = checkLang(node) || 'babel' + var lang = checkLang(node) || (hasBabel ? 'babel' : null) + var script = checkSrc(node, filePath) if (!script) { script = parse5.serialize(node) From 6d08c98bf1e3db6a866b8a0a5f4fa2b5d7131926 Mon Sep 17 00:00:00 2001 From: Evan You Date: Thu, 30 Jun 2016 11:30:29 -0400 Subject: [PATCH 4/6] 8.7.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index bbdbffc..6e9e0ab 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vueify", - "version": "8.6.0", + "version": "8.7.0", "description": "Vue component transform for Browserify", "main": "index.js", "repository": { From b16002654290293a407a4cf8a5dfb3141671c342 Mon Sep 17 00:00:00 2001 From: fzhan Date: Wed, 21 Sep 2016 11:48:59 +0800 Subject: [PATCH 5/6] Check type of __vueify_style__ before disposing My app failed to update when using browserify-hmr. I add this type-check then it works. --- lib/compiler.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/compiler.js b/lib/compiler.js index 293eca7..215e5a0 100644 --- a/lib/compiler.js +++ b/lib/compiler.js @@ -156,7 +156,7 @@ compiler.compile = function (content, filePath, cb) { ' hotAPI.install(require("vue"), true)\n' + ' if (!hotAPI.compatible) return\n' + // remove style tag on dispose - (style + (style && 'object' === typeof(__vueify_style__) && __vueify_style__ instanceof Node ? ' module.hot.dispose(function () {\n' + ' __vueify_insert__.cache[' + style + '] = false\n' + ' document.head.removeChild(__vueify_style__)\n' + From f1d390e83f122233a2e7b9856a0a156d2fdf0bdd Mon Sep 17 00:00:00 2001 From: fzhan Date: Wed, 21 Sep 2016 11:58:11 +0800 Subject: [PATCH 6/6] Check type of __vueify_style__ before disposing My app failed to update when using browserify-hmr. I add this type-check then it works. --- lib/compiler.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/compiler.js b/lib/compiler.js index 215e5a0..fa9a9ef 100644 --- a/lib/compiler.js +++ b/lib/compiler.js @@ -156,7 +156,7 @@ compiler.compile = function (content, filePath, cb) { ' hotAPI.install(require("vue"), true)\n' + ' if (!hotAPI.compatible) return\n' + // remove style tag on dispose - (style && 'object' === typeof(__vueify_style__) && __vueify_style__ instanceof Node + ((style && 'object' === typeof(__vueify_style__) && __vueify_style__ instanceof Node) ? ' module.hot.dispose(function () {\n' + ' __vueify_insert__.cache[' + style + '] = false\n' + ' document.head.removeChild(__vueify_style__)\n' + pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy