fix: output file size when use rollup

This commit is contained in:
陈嘉涵 2017-08-15 14:32:02 +08:00
parent 31d1ae392b
commit 711352ae12
5 changed files with 111 additions and 40 deletions

View File

@ -5,7 +5,7 @@ var uppercamelcase = require('uppercamelcase');
var path = require('path'); var path = require('path');
var OUTPUT_PATH = path.join(__dirname, '../../packages/index.js'); var OUTPUT_PATH = path.join(__dirname, '../../packages/index.js');
var IMPORT_TEMPLATE = 'import {{name}} from \'../packages/{{package}}/index.js\';'; var IMPORT_TEMPLATE = 'import {{name}} from \'./{{package}}\';';
var ISNTALL_COMPONENT_TEMPLATE = ' {{name}}'; var ISNTALL_COMPONENT_TEMPLATE = ' {{name}}';
var MAIN_TEMPLATE = `{{include}} var MAIN_TEMPLATE = `{{include}}

View File

@ -4,6 +4,7 @@ import vue from 'rollup-plugin-vue';
import alias from 'zan-rollup-plugin-alias'; import alias from 'zan-rollup-plugin-alias';
import babel from 'rollup-plugin-babel'; import babel from 'rollup-plugin-babel';
import resolve from 'rollup-plugin-node-resolve'; import resolve from 'rollup-plugin-node-resolve';
import filesize from 'rollup-plugin-filesize';
import commonjs from 'rollup-plugin-commonjs'; import commonjs from 'rollup-plugin-commonjs';
import componentsConfig from '../components.json'; import componentsConfig from '../components.json';
@ -37,6 +38,7 @@ export default Object.keys(componentsConfig).map(component => {
], ],
plugins: [ plugins: [
vue(), vue(),
filesize(),
babel({ babel({
externalHelpers: true externalHelpers: true
}), }),

View File

@ -15,7 +15,7 @@
"dev": "npm run build:file && webpack-dev-server --inline --config build/webpack.config.dev.js --content-base ./", "dev": "npm run build:file && webpack-dev-server --inline --config build/webpack.config.dev.js --content-base ./",
"build:file": "node build/bin/build-entry.js", "build:file": "node build/bin/build-entry.js",
"build:utils": "cross-env BABEL_ENV=utils babel packages/common --out-dir lib/common --presets=es2015", "build:utils": "cross-env BABEL_ENV=utils babel packages/common --out-dir lib/common --presets=es2015",
"build:components": "rollup -c ./build/rollup.component.config.js --color", "build:components": "rollup -c ./build/rollup.config.lib.js --color",
"build:vant-css": "gulp build --gulpfile packages/vant-css/gulpfile.js --color && cp -R packages/vant-css/lib/ lib/vant-css", "build:vant-css": "gulp build --gulpfile packages/vant-css/gulpfile.js --color && cp -R packages/vant-css/lib/ lib/vant-css",
"build:vant": "cross-env NODE_ENV=production webpack --progress --hide-modules --color --config build/webpack.build.js && cross-env NODE_ENV=production webpack -p --progress --hide-modules --color --config build/webpack.build.js", "build:vant": "cross-env NODE_ENV=production webpack --progress --hide-modules --color --config build/webpack.build.js && cross-env NODE_ENV=production webpack -p --progress --hide-modules --color --config build/webpack.build.js",
"deploy": "npm run deploy:docs && npm run deploy:cdn && gh-pages -d docs/dist --remote youzan && rimraf docs/dist", "deploy": "npm run deploy:docs && npm run deploy:cdn && gh-pages -d docs/dist --remote youzan && rimraf docs/dist",
@ -101,6 +101,7 @@
"rollup": "^0.47.4", "rollup": "^0.47.4",
"rollup-plugin-babel": "^3.0.1", "rollup-plugin-babel": "^3.0.1",
"rollup-plugin-commonjs": "^8.1.0", "rollup-plugin-commonjs": "^8.1.0",
"rollup-plugin-filesize": "^1.4.2",
"rollup-plugin-node-resolve": "^3.0.0", "rollup-plugin-node-resolve": "^3.0.0",
"rollup-plugin-vue": "^2.4.1", "rollup-plugin-vue": "^2.4.1",
"run-sequence": "^2.1.0", "run-sequence": "^2.1.0",

View File

@ -1,41 +1,41 @@
import Button from '../packages/button/index.js'; import Button from './button';
import Switch from '../packages/switch/index.js'; import Switch from './switch';
import Field from '../packages/field/index.js'; import Field from './field';
import Radio from '../packages/radio/index.js'; import Radio from './radio';
import Cell from '../packages/cell/index.js'; import Cell from './cell';
import Icon from '../packages/icon/index.js'; import Icon from './icon';
import CellGroup from '../packages/cell-group/index.js'; import CellGroup from './cell-group';
import CellSwipe from '../packages/cell-swipe/index.js'; import CellSwipe from './cell-swipe';
import Popup from '../packages/popup/index.js'; import Popup from './popup';
import Dialog from '../packages/dialog/index.js'; import Dialog from './dialog';
import Picker from '../packages/picker/index.js'; import Picker from './picker';
import RadioGroup from '../packages/radio-group/index.js'; import RadioGroup from './radio-group';
import Waterfall from '../packages/waterfall/index.js'; import Waterfall from './waterfall';
import Loading from '../packages/loading/index.js'; import Loading from './loading';
import Panel from '../packages/panel/index.js'; import Panel from './panel';
import Card from '../packages/card/index.js'; import Card from './card';
import Steps from '../packages/steps/index.js'; import Steps from './steps';
import Tag from '../packages/tag/index.js'; import Tag from './tag';
import Checkbox from '../packages/checkbox/index.js'; import Checkbox from './checkbox';
import CheckboxGroup from '../packages/checkbox-group/index.js'; import CheckboxGroup from './checkbox-group';
import BadgeGroup from '../packages/badge-group/index.js'; import BadgeGroup from './badge-group';
import Badge from '../packages/badge/index.js'; import Badge from './badge';
import Search from '../packages/search/index.js'; import Search from './search';
import Step from '../packages/step/index.js'; import Step from './step';
import Tabs from '../packages/tabs/index.js'; import Tabs from './tabs';
import Tab from '../packages/tab/index.js'; import Tab from './tab';
import Lazyload from '../packages/lazyload/index.js'; import Lazyload from './lazyload';
import ImagePreview from '../packages/image-preview/index.js'; import ImagePreview from './image-preview';
import Col from '../packages/col/index.js'; import Col from './col';
import Row from '../packages/row/index.js'; import Row from './row';
import Actionsheet from '../packages/actionsheet/index.js'; import Actionsheet from './actionsheet';
import Quantity from '../packages/quantity/index.js'; import Quantity from './quantity';
import Progress from '../packages/progress/index.js'; import Progress from './progress';
import Toast from '../packages/toast/index.js'; import Toast from './toast';
import Uploader from '../packages/uploader/index.js'; import Uploader from './uploader';
import Swipe from '../packages/swipe/index.js'; import Swipe from './swipe';
import SwipeItem from '../packages/swipe-item/index.js'; import SwipeItem from './swipe-item';
import DatetimePicker from '../packages/datetime-picker/index.js'; import DatetimePicker from './datetime-picker';
const version = '0.7.9'; const version = '0.7.9';
const components = [ const components = [

View File

@ -101,6 +101,12 @@ amdefine@>=0.0.4:
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
ansi-align@^2.0.0:
version "2.0.0"
resolved "http://registry.npm.taobao.org/ansi-align/download/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f"
dependencies:
string-width "^2.0.0"
ansi-escapes@^1.1.0: ansi-escapes@^1.1.0:
version "1.4.0" version "1.4.0"
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e"
@ -948,6 +954,18 @@ boom@2.x.x:
dependencies: dependencies:
hoek "2.x.x" hoek "2.x.x"
boxen@^1.1.0:
version "1.2.1"
resolved "http://registry.npm.taobao.org/boxen/download/boxen-1.2.1.tgz#0f11e7fe344edb9397977fc13ede7f64d956481d"
dependencies:
ansi-align "^2.0.0"
camelcase "^4.0.0"
chalk "^2.0.1"
cli-boxes "^1.0.0"
string-width "^2.0.0"
term-size "^1.2.0"
widest-line "^1.0.0"
brace-expansion@^1.0.0, brace-expansion@^1.1.7: brace-expansion@^1.0.0, brace-expansion@^1.1.7:
version "1.1.8" version "1.1.8"
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292"
@ -1308,6 +1326,10 @@ clean-css@4.1.x:
dependencies: dependencies:
source-map "0.5.x" source-map "0.5.x"
cli-boxes@^1.0.0:
version "1.0.0"
resolved "http://registry.npm.taobao.org/cli-boxes/download/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143"
cli-cursor@^1.0.1: cli-cursor@^1.0.1:
version "1.0.2" version "1.0.2"
resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987"
@ -1875,6 +1897,12 @@ decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2, decamelize@^1.2.0:
version "1.2.0" version "1.2.0"
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
deep-assign@^2.0.0:
version "2.0.0"
resolved "http://registry.npm.taobao.org/deep-assign/download/deep-assign-2.0.0.tgz#ebe06b1f07f08dae597620e3dd1622f371a1c572"
dependencies:
is-obj "^1.0.0"
deep-eql@^2.0.1: deep-eql@^2.0.1:
version "2.0.2" version "2.0.2"
resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-2.0.2.tgz#b1bac06e56f0a76777686d50c9feb75c2ed7679a" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-2.0.2.tgz#b1bac06e56f0a76777686d50c9feb75c2ed7679a"
@ -2108,6 +2136,10 @@ duplexer2@0.0.2:
dependencies: dependencies:
readable-stream "~1.1.9" readable-stream "~1.1.9"
duplexer@^0.1.1:
version "0.1.1"
resolved "http://registry.npm.taobao.org/duplexer/download/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1"
ecc-jsbn@~0.1.1: ecc-jsbn@~0.1.1:
version "0.1.1" version "0.1.1"
resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505"
@ -2758,6 +2790,10 @@ filename-regex@^2.0.0:
version "2.0.1" version "2.0.1"
resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26"
filesize@^3.5.6:
version "3.5.10"
resolved "http://registry.npm.taobao.org/filesize/download/filesize-3.5.10.tgz#fc8fa23ddb4ef9e5e0ab6e1e64f679a24a56761f"
fill-range@^2.1.0: fill-range@^2.1.0:
version "2.2.3" version "2.2.3"
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723"
@ -3278,6 +3314,12 @@ gulplog@^1.0.0:
dependencies: dependencies:
glogg "^1.0.0" glogg "^1.0.0"
gzip-size@^3.0.0:
version "3.0.0"
resolved "http://registry.npm.taobao.org/gzip-size/download/gzip-size-3.0.0.tgz#546188e9bdc337f673772f81660464b389dce520"
dependencies:
duplexer "^0.1.1"
handle-thing@^1.2.5: handle-thing@^1.2.5:
version "1.2.5" version "1.2.5"
resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4"
@ -3816,6 +3858,10 @@ is-number@^3.0.0:
dependencies: dependencies:
kind-of "^3.0.2" kind-of "^3.0.2"
is-obj@^1.0.0:
version "1.0.1"
resolved "http://registry.npm.taobao.org/is-obj/download/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
is-path-cwd@^1.0.0: is-path-cwd@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d"
@ -6638,6 +6684,16 @@ rollup-plugin-commonjs@^8.1.0:
resolve "^1.1.7" resolve "^1.1.7"
rollup-pluginutils "^2.0.1" rollup-pluginutils "^2.0.1"
rollup-plugin-filesize@^1.4.2:
version "1.4.2"
resolved "http://registry.npm.taobao.org/rollup-plugin-filesize/download/rollup-plugin-filesize-1.4.2.tgz#eebdf571217e2fe14ab14a6534bf21f771a053b1"
dependencies:
boxen "^1.1.0"
colors "^1.1.2"
deep-assign "^2.0.0"
filesize "^3.5.6"
gzip-size "^3.0.0"
rollup-plugin-node-resolve@^3.0.0: rollup-plugin-node-resolve@^3.0.0:
version "3.0.0" version "3.0.0"
resolved "http://registry.npm.qima-inc.com/rollup-plugin-node-resolve/download/rollup-plugin-node-resolve-3.0.0.tgz#8b897c4c3030d5001277b0514b25d2ca09683ee0" resolved "http://registry.npm.qima-inc.com/rollup-plugin-node-resolve/download/rollup-plugin-node-resolve-3.0.0.tgz#8b897c4c3030d5001277b0514b25d2ca09683ee0"
@ -7305,6 +7361,12 @@ tcomb@^2.5.1:
version "2.7.0" version "2.7.0"
resolved "https://registry.yarnpkg.com/tcomb/-/tcomb-2.7.0.tgz#10d62958041669a5d53567b9a4ee8cde22b1c2b0" resolved "https://registry.yarnpkg.com/tcomb/-/tcomb-2.7.0.tgz#10d62958041669a5d53567b9a4ee8cde22b1c2b0"
term-size@^1.2.0:
version "1.2.0"
resolved "http://registry.npm.taobao.org/term-size/download/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69"
dependencies:
execa "^0.7.0"
text-encoding@0.6.4: text-encoding@0.6.4:
version "0.6.4" version "0.6.4"
resolved "https://registry.yarnpkg.com/text-encoding/-/text-encoding-0.6.4.tgz#e399a982257a276dae428bb92845cb71bdc26d19" resolved "https://registry.yarnpkg.com/text-encoding/-/text-encoding-0.6.4.tgz#e399a982257a276dae428bb92845cb71bdc26d19"
@ -7934,6 +7996,12 @@ wide-align@^1.1.0:
dependencies: dependencies:
string-width "^1.0.2" string-width "^1.0.2"
widest-line@^1.0.0:
version "1.0.0"
resolved "http://registry.npm.taobao.org/widest-line/download/widest-line-1.0.0.tgz#0c09c85c2a94683d0d7eaf8ee097d564bf0e105c"
dependencies:
string-width "^1.0.1"
window-size@0.1.0: window-size@0.1.0:
version "0.1.0" version "0.1.0"
resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"