From 2be134436f0d82bce6c43e06bfd4b2b440e5a252 Mon Sep 17 00:00:00 2001 From: yev Date: Wed, 27 Dec 2017 20:34:51 +0000 Subject: [PATCH 1/3] extracting css --- .prettierrc | 5 + build/webpack.srr-no-css.config.js | 24 + ...server.config.js => webpack.ssr.config.js} | 0 package.json | 5 +- src/Modal.vue | 1028 +++++++++-------- 5 files changed, 549 insertions(+), 513 deletions(-) create mode 100644 .prettierrc create mode 100644 build/webpack.srr-no-css.config.js rename build/{webpack.server.config.js => webpack.ssr.config.js} (100%) diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..33075ad --- /dev/null +++ b/.prettierrc @@ -0,0 +1,5 @@ +{ + "trailingComma": "none", + "singleQuote": true, + "semi": false +} diff --git a/build/webpack.srr-no-css.config.js b/build/webpack.srr-no-css.config.js new file mode 100644 index 0000000..f3d516b --- /dev/null +++ b/build/webpack.srr-no-css.config.js @@ -0,0 +1,24 @@ +const path = require('path') +const webpack = require('webpack') +const merge = require('webpack-merge') +const ExtractTextPlugin = require('extract-text-webpack-plugin') + +const base = require('./webpack.srr.config') + +module.exports = merge(base, { + plugins: [new ExtractTextPlugin('styles.css')], + output: { + filename: 'ssr.pure.js' + }, + module: { + rules: [ + { + test: /\.css$/, + use: ExtractTextPlugin.extract({ + fallback: 'style-loader', + use: 'css-loader' + }) + } + ] + } +}) diff --git a/build/webpack.server.config.js b/build/webpack.ssr.config.js similarity index 100% rename from build/webpack.server.config.js rename to build/webpack.ssr.config.js diff --git a/package.json b/package.json index 11a198b..9c2b84f 100644 --- a/package.json +++ b/package.json @@ -19,10 +19,11 @@ }, "scripts": { "build:client": "webpack --config ./build/webpack.client.config.js --progress --hide-modules", - "build:server": "webpack --config ./build/webpack.server.config.js --progress --hide-modules", + "build:srr": "webpack --config ./build/webpack.srr.config.js --progress --hide-modules", + "build:srr-no-css": "webpack --config ./build/webpack.srr-no-css.config.js --progress --hide-modules", "lint": "eslint --ext .js,.vue src test/unit/specs", "unit": "./node_modules/karma/bin/karma start test/unit/karma.conf.js", - "build": "npm run lint && npm run unit && npm run build:client && npm run build:server" + "build": "npm run lint && npm run unit && npm run build:client && npm run build:srr" }, "license": "MIT", "devDependencies": { diff --git a/src/Modal.vue b/src/Modal.vue index 6115c6c..60b937c 100644 --- a/src/Modal.vue +++ b/src/Modal.vue @@ -28,673 +28,679 @@ From d302df7310f042aca0a922a469c0389e090efb57 Mon Sep 17 00:00:00 2001 From: yev Date: Wed, 27 Dec 2017 20:35:19 +0000 Subject: [PATCH 2/3] extracting css --- src/Modal.vue | 320 +++++++++++++++++++++++++------------------------- 1 file changed, 159 insertions(+), 161 deletions(-) diff --git a/src/Modal.vue b/src/Modal.vue index 60b937c..69607cb 100644 --- a/src/Modal.vue +++ b/src/Modal.vue @@ -28,13 +28,13 @@ diff --git a/src/index.js b/src/index.js index 1ed9163..23d2032 100644 --- a/src/index.js +++ b/src/index.js @@ -4,7 +4,7 @@ import Dialog from './Dialog.vue' const defaultComponentName = 'modal' const Plugin = { - install (Vue, options = {}) { + install(Vue, options = {}) { /** * Makes sure that plugin can be insstalled only once */ @@ -18,15 +18,15 @@ const Plugin = { * Plugin API */ Vue.prototype.$modal = { - show (name, params) { + show(name, params) { Plugin.event.$emit('toggle', name, true, params) }, - hide (name, params) { + hide(name, params) { Plugin.event.$emit('toggle', name, false, params) }, - toggle (name, params) { + toggle(name, params) { Plugin.event.$emit('toggle', name, undefined, params) } } diff --git a/src/parser.js b/src/parser.js index 7418846..4de3c75 100644 --- a/src/parser.js +++ b/src/parser.js @@ -19,7 +19,7 @@ const types = [ } ] -var getType = (value) => { +var getType = value => { if (value === 'auto') { return { type: value, @@ -43,7 +43,7 @@ var getType = (value) => { } } -export const parse = (value) => { +export const parse = value => { switch (typeof value) { case 'number': return { type: 'px', value }