From 1bae8ab9862eb368c81138c0fece3f6c430eaa8d Mon Sep 17 00:00:00 2001 From: neverland Date: Wed, 16 May 2018 20:52:18 +0800 Subject: [PATCH] [Improvement] AddressEdit: fit in small screen (#1082) --- build/webpack.dev.js | 5 +- package.json | 8 +- packages/address-edit/Detail.vue | 6 +- .../test/__snapshots__/index.spec.js.snap | 225 +++++++++++++ packages/address-edit/test/index.spec.js | 130 +++++++ packages/area/demo/area.simple.js | 26 ++ packages/button/demo/index.vue | 2 +- packages/vant-css/src/address-edit.css | 2 +- yarn.lock | 317 +++++++++++------- 9 files changed, 581 insertions(+), 140 deletions(-) create mode 100644 packages/address-edit/test/__snapshots__/index.spec.js.snap create mode 100644 packages/address-edit/test/index.spec.js create mode 100644 packages/area/demo/area.simple.js diff --git a/build/webpack.dev.js b/build/webpack.dev.js index 1dbf61845..30213f001 100644 --- a/build/webpack.dev.js +++ b/build/webpack.dev.js @@ -27,7 +27,6 @@ module.exports = { resolve: { extensions: ['.js', '.vue', '.css'], alias: { - vue: 'vue/dist/vue.runtime.esm.js', packages: path.join(__dirname, '../packages') } }, @@ -76,13 +75,13 @@ module.exports = { new VueLoaderPlugin(), new ProgressBarPlugin(), new HtmlWebpackPlugin({ - chunks: ['vendor', 'vant-docs'], + chunks: ['vant-docs'], template: 'docs/src/index.tpl', filename: 'index.html', inject: true }), new HtmlWebpackPlugin({ - chunks: ['vendor', 'vant-mobile'], + chunks: ['vant-mobile'], template: 'docs/src/index.tpl', filename: 'examples.html', inject: true diff --git a/package.json b/package.json index 50f7935af..dd2d43024 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,7 @@ "devDependencies": { "@vue/server-test-utils": "^1.0.0-beta.16", "@vue/test-utils": "^1.0.0-beta.16", - "autoprefixer": "^8.3.0", + "autoprefixer": "^8.5.0", "babel-cli": "^6.26.0", "babel-core": "^6.26.3", "babel-jest": "^22.4.3", @@ -94,15 +94,15 @@ "vant-doc": "1.0.4", "vue": "2.5.16", "vue-jest": "^2.5.0", - "vue-loader": "^15.0.10", + "vue-loader": "^15.0.11", "vue-router": "^3.0.1", "vue-server-renderer": "^2.5.16", "vue-sfc-compiler": "^0.0.8", "vue-template-compiler": "2.5.16", "vue-template-es2015-compiler": "^1.6.0", - "webpack": "^4.8.2", + "webpack": "^4.8.3", "webpack-cli": "^2.0.15", - "webpack-serve": "^0.3.2" + "webpack-serve": "^1.0.2" }, "jest": { "moduleFileExtensions": [ diff --git a/packages/address-edit/Detail.vue b/packages/address-edit/Detail.vue index 4a86b2bc5..5336bc1e1 100644 --- a/packages/address-edit/Detail.vue +++ b/packages/address-edit/Detail.vue @@ -73,7 +73,11 @@ export default create({ onFocus(e) { this.isFocused = true; this.$emit('focus', e); - this.$refs.root.scrollIntoView(); + + const { root } = this.$refs; + if (root && root.scrollIntoView) { + root.scrollIntoView(); + } }, onBlur(e) { diff --git a/packages/address-edit/test/__snapshots__/index.spec.js.snap b/packages/address-edit/test/__snapshots__/index.spec.js.snap new file mode 100644 index 000000000..135f9469a --- /dev/null +++ b/packages/address-edit/test/__snapshots__/index.spec.js.snap @@ -0,0 +1,225 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`create a AddressEdit 1`] = ` +
+
+
+ +
收货人 + +
+
+ + + + +
+ +
+
+ +
联系电话 + +
+
+ + + + +
+ +
+
+ +
收件地区 + +
+
选择省份 选择城市 选择地区
+ +
+
+
+ +
详细地址 + +
+
+ + +
+
+ +
+
+ +
+ +
+ +
+ + +
+
+ + +
+ +
+`; + +exports[`create a AddressEdit with props 1`] = ` +
+
+
+ +
收货人 + +
+
+ + + + +
+ +
+
+ +
联系电话 + +
+
+ + + + +
+ +
+
+ +
收件地区 + +
+
浙江省 杭州市 西湖区
+ +
+
+
+ +
详细地址 + +
+
+ + +
+
+ +
+
+ +
+ +
+ +
+
+ +
邮政编码 + +
+
+ + + + +
+ +
+
+ +
设为默认收货地址 + +
+
+
+
+ +
+
+
+ +
+
+
+ + +
+ +
+`; diff --git a/packages/address-edit/test/index.spec.js b/packages/address-edit/test/index.spec.js new file mode 100644 index 000000000..a21a7c1a7 --- /dev/null +++ b/packages/address-edit/test/index.spec.js @@ -0,0 +1,130 @@ +import { mount } from '@vue/test-utils'; +import { renderToString } from '@vue/server-test-utils'; +import AddressEdit from '../'; +import areaList from '../../area/demo/area.simple'; + +const addressInfo = { + name: '测试', + tel: '13000000000', + province: '浙江省', + city: '杭州市', + county: '西湖区', + address_detail: '详细地址', + area_code: '110101', + postal_code: '10000', + is_default: true +}; + +const createComponent = () => { + const wrapper = mount(AddressEdit, { + propsData: { + areaList, + addressInfo, + showPostal: true + } + }); + + const button = wrapper.find('.van-button'); + const field = wrapper.findAll('.van-field__control'); + const { errorInfo, data } = wrapper.vm; + return { + vm: wrapper.vm, + data, + field, + button, + errorInfo + }; +}; + +test('create a AddressEdit', () => { + expect(renderToString(AddressEdit)).toMatchSnapshot(); +}); + +test('create a AddressEdit with props', () => { + const wrapper = renderToString(AddressEdit, { + propsData: { + areaList, + addressInfo, + showPostal: true, + showSetDefault: true, + showSearchResult: true + } + }); + + expect(wrapper).toMatchSnapshot(); +}); + +test('valid name', () => { + const { data, field, button, errorInfo } = createComponent(); + + // name empty + data.name = ''; + button.trigger('click'); + expect(errorInfo.name).toBeTruthy(); + field.at(0).trigger('focus'); + expect(errorInfo.name).toBeFalsy(); + + // name too long + data.name = '1'.repeat(30); + button.trigger('click'); + expect(errorInfo.name).toBeTruthy(); + field.at(0).trigger('focus'); + expect(errorInfo.name).toBeFalsy(); +}); + +it('valid tel', () => { + const { data, field, button, errorInfo } = createComponent(); + data.tel = ''; + button.trigger('click'); + expect(errorInfo.tel).toBeTruthy(); + field.at(1).trigger('focus'); + expect(errorInfo.tel).toBeFalsy(); +}); + +it('valid area_code', () => { + const { data, button, errorInfo } = createComponent(); + // area_code empty + data.area_code = ''; + button.trigger('click'); + expect(errorInfo['area_code']).toBeTruthy(); + + // area_code invalid + data.area_code = '-1'; + button.trigger('click'); + expect(errorInfo['area_code']).toBeTruthy(); +}); + +it('valid address_detail', () => { + const { data, field, button, errorInfo } = createComponent(); + data.address_detail = ''; + button.trigger('click'); + expect(errorInfo['address_detail']).toBeTruthy(); + field.at(2).trigger('focus'); + expect(errorInfo['address_detail']).toBeFalsy(); + + // // address_detail too long + data.address_detail = '1'.repeat(300); + button.trigger('click'); + expect(errorInfo['address_detail']).toBeTruthy(); +}); + +test('valid postal code', () => { + const { vm, data, field, button, errorInfo } = createComponent(); + + // postal_code invalid + data.postal_code = '123'; + button.trigger('click'); + expect(errorInfo['postal_code']).toBeTruthy(); + field.at(3).trigger('focus'); + expect(errorInfo['postal_code']).toBeFalsy(); + + // valid result + data.postal_code = '123456'; + button.trigger('click'); + + // not show postal_code + data.postal_code = '156'; + vm.showPostal = false; + button.trigger('click'); + expect(errorInfo['postal_code']).toBeFalsy(); +}); diff --git a/packages/area/demo/area.simple.js b/packages/area/demo/area.simple.js new file mode 100644 index 000000000..47c11d5c6 --- /dev/null +++ b/packages/area/demo/area.simple.js @@ -0,0 +1,26 @@ +export default { + 'province_list': { + '110000': '北京市' + }, + 'city_list': { + '110100': '北京市' + }, + 'county_list': { + '110101': '东城区', + '110102': '西城区', + '110105': '朝阳区', + '110106': '丰台区', + '110107': '石景山区', + '110108': '海淀区', + '110109': '门头沟区', + '110111': '房山区', + '110112': '通州区', + '110113': '顺义区', + '110114': '昌平区', + '110115': '大兴区', + '110116': '怀柔区', + '110117': '平谷区', + '110228': '密云县', + '110229': '延庆县' + } +}; diff --git a/packages/button/demo/index.vue b/packages/button/demo/index.vue index 7d3b5a291..4b6dfbfec 100644 --- a/packages/button/demo/index.vue +++ b/packages/button/demo/index.vue @@ -89,7 +89,7 @@ export default { } &--small, - &--normal { + &--normal:not(:last-child) { margin-right: 10px; } diff --git a/packages/vant-css/src/address-edit.css b/packages/vant-css/src/address-edit.css index b2009cc55..0e31b5525 100644 --- a/packages/vant-css/src/address-edit.css +++ b/packages/vant-css/src/address-edit.css @@ -18,7 +18,7 @@ text-align: left; span { - margin-right: 20px; + margin-right: 15px; } } } diff --git a/yarn.lock b/yarn.lock index 62303dc48..c27d7c99d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -81,118 +81,144 @@ dependencies: lodash "^4.17.4" -"@webassemblyjs/ast@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.4.2.tgz#ab715aa1fec9dd23c025204dba39690c119418ea" +"@webassemblyjs/ast@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.4.3.tgz#3b3f6fced944d8660273347533e6d4d315b5934a" dependencies: - "@webassemblyjs/helper-wasm-bytecode" "1.4.2" - "@webassemblyjs/wast-parser" "1.4.2" + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/wast-parser" "1.4.3" debug "^3.1.0" - webassemblyjs "1.4.2" + webassemblyjs "1.4.3" -"@webassemblyjs/floating-point-hex-parser@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.4.2.tgz#9296fb64caa37bf98c8064aa329680e3e2bfacc7" +"@webassemblyjs/floating-point-hex-parser@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.4.3.tgz#f5aee4c376a717c74264d7bacada981e7e44faad" -"@webassemblyjs/helper-buffer@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.4.2.tgz#3cacecd5a6bfcb67932ed8219f81f92d8b2dafbb" - -"@webassemblyjs/helper-code-frame@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.4.2.tgz#20526637c3849f12b08f8661248477eef9642329" +"@webassemblyjs/helper-buffer@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.4.3.tgz#0434b55958519bf503697d3824857b1dea80b729" dependencies: - "@webassemblyjs/wast-printer" "1.4.2" + debug "^3.1.0" -"@webassemblyjs/helper-fsm@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.4.2.tgz#e41050282994b5be077b95b65b66ecd5a92c5e88" - -"@webassemblyjs/helper-wasm-bytecode@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.4.2.tgz#b48c289c7921056aa12d71e78a17070ffe90c49c" - -"@webassemblyjs/helper-wasm-section@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.4.2.tgz#520e02c0cc3e5e9b5f44f58abc04ba5eda6e5476" +"@webassemblyjs/helper-code-frame@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.4.3.tgz#f1349ca3e01a8e29ee2098c770773ef97af43641" dependencies: - "@webassemblyjs/ast" "1.4.2" - "@webassemblyjs/helper-buffer" "1.4.2" - "@webassemblyjs/helper-wasm-bytecode" "1.4.2" - "@webassemblyjs/wasm-gen" "1.4.2" + "@webassemblyjs/wast-printer" "1.4.3" -"@webassemblyjs/leb128@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.4.2.tgz#d13f368abdcefc54428f55a265a993de610f8893" +"@webassemblyjs/helper-fsm@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.4.3.tgz#65a921db48fb43e868f17b27497870bdcae22b79" + +"@webassemblyjs/helper-wasm-bytecode@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.4.3.tgz#0e5b4b5418e33f8a26e940b7809862828c3721a5" + +"@webassemblyjs/helper-wasm-section@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.4.3.tgz#9ceedd53a3f152c3412e072887ade668d0b1acbf" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-buffer" "1.4.3" + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/wasm-gen" "1.4.3" + debug "^3.1.0" + +"@webassemblyjs/leb128@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.4.3.tgz#5a5e5949dbb5adfe3ae95664d0439927ac557fb8" dependencies: leb "^0.3.0" -"@webassemblyjs/validation@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/validation/-/validation-1.4.2.tgz#55cf5b219e25900c85773fc35beb9d12ae0ede53" +"@webassemblyjs/validation@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/validation/-/validation-1.4.3.tgz#9e66c9b3079d7bbcf2070c1bf52a54af2a09aac9" dependencies: - "@webassemblyjs/ast" "1.4.2" + "@webassemblyjs/ast" "1.4.3" -"@webassemblyjs/wasm-edit@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.4.2.tgz#bde9a581065f63f257ed511d7d9cf04f8cd04524" +"@webassemblyjs/wasm-edit@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.4.3.tgz#87febd565e0ffb5ae25f6495bb3958d17aa0a779" dependencies: - "@webassemblyjs/ast" "1.4.2" - "@webassemblyjs/helper-buffer" "1.4.2" - "@webassemblyjs/helper-wasm-bytecode" "1.4.2" - "@webassemblyjs/helper-wasm-section" "1.4.2" - "@webassemblyjs/wasm-gen" "1.4.2" - "@webassemblyjs/wasm-opt" "1.4.2" - "@webassemblyjs/wasm-parser" "1.4.2" - "@webassemblyjs/wast-printer" "1.4.2" + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-buffer" "1.4.3" + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/helper-wasm-section" "1.4.3" + "@webassemblyjs/wasm-gen" "1.4.3" + "@webassemblyjs/wasm-opt" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" + "@webassemblyjs/wast-printer" "1.4.3" debug "^3.1.0" -"@webassemblyjs/wasm-gen@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.4.2.tgz#0899297f9426073736df799287845a73c597cf90" +"@webassemblyjs/wasm-gen@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.4.3.tgz#8553164d0154a6be8f74d653d7ab355f73240aa4" dependencies: - "@webassemblyjs/ast" "1.4.2" - "@webassemblyjs/helper-wasm-bytecode" "1.4.2" - "@webassemblyjs/leb128" "1.4.2" + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/leb128" "1.4.3" -"@webassemblyjs/wasm-opt@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.4.2.tgz#c44ad48e109aec197e3bf69875c54537d76ba2e9" +"@webassemblyjs/wasm-opt@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.4.3.tgz#26c7a23bfb136aa405b1d3410e63408ec60894b8" dependencies: - "@webassemblyjs/ast" "1.4.2" - "@webassemblyjs/helper-buffer" "1.4.2" - "@webassemblyjs/wasm-gen" "1.4.2" - "@webassemblyjs/wasm-parser" "1.4.2" + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-buffer" "1.4.3" + "@webassemblyjs/wasm-gen" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" + debug "^3.1.0" -"@webassemblyjs/wasm-parser@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.4.2.tgz#3bf7e10cfe336db0ecdea0a5d7ed8a63b7a7754a" +"@webassemblyjs/wasm-parser@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.4.3.tgz#7ddd3e408f8542647ed612019cfb780830993698" dependencies: - "@webassemblyjs/ast" "1.4.2" - "@webassemblyjs/helper-wasm-bytecode" "1.4.2" - "@webassemblyjs/leb128" "1.4.2" - "@webassemblyjs/wasm-parser" "1.4.2" - webassemblyjs "1.4.2" + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/leb128" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" + webassemblyjs "1.4.3" -"@webassemblyjs/wast-parser@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.4.2.tgz#6499c38cf8895a81394f7e40d4681a85aaa84498" +"@webassemblyjs/wast-parser@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.4.3.tgz#3250402e2c5ed53dbe2233c9de1fe1f9f0d51745" dependencies: - "@webassemblyjs/ast" "1.4.2" - "@webassemblyjs/floating-point-hex-parser" "1.4.2" - "@webassemblyjs/helper-code-frame" "1.4.2" - "@webassemblyjs/helper-fsm" "1.4.2" + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/floating-point-hex-parser" "1.4.3" + "@webassemblyjs/helper-code-frame" "1.4.3" + "@webassemblyjs/helper-fsm" "1.4.3" long "^3.2.0" - webassemblyjs "1.4.2" + webassemblyjs "1.4.3" -"@webassemblyjs/wast-printer@1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.4.2.tgz#ee70a828f0d9730b55b9a5c3ed694094ba68ba57" +"@webassemblyjs/wast-printer@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.4.3.tgz#3d59aa8d0252d6814a3ef4e6d2a34c9ded3904e0" dependencies: - "@webassemblyjs/ast" "1.4.2" - "@webassemblyjs/wast-parser" "1.4.2" + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/wast-parser" "1.4.3" long "^3.2.0" +"@webpack-contrib/config-loader@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@webpack-contrib/config-loader/-/config-loader-1.1.1.tgz#e9a18096ef37fa88ad714a027fcf51a823fd00af" + dependencies: + "@webpack-contrib/schema-utils" "^1.0.0-beta.0" + cosmiconfig "^5.0.2" + loud-rejection "^1.6.0" + merge-options "^1.0.1" + resolve "^1.6.0" + webpack-log "^1.1.2" + +"@webpack-contrib/schema-utils@^1.0.0-beta.0": + version "1.0.0-beta.0" + resolved "https://registry.yarnpkg.com/@webpack-contrib/schema-utils/-/schema-utils-1.0.0-beta.0.tgz#bf9638c9464d177b48209e84209e23bee2eb4f65" + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + chalk "^2.3.2" + strip-ansi "^4.0.0" + text-table "^0.2.0" + webpack-log "^1.1.2" + abab@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e" @@ -508,12 +534,12 @@ autoprefixer@^6.3.1: postcss "^5.2.16" postcss-value-parser "^3.2.3" -autoprefixer@^8.3.0: - version "8.4.1" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-8.4.1.tgz#c6b30001ea4b3daa6b611e50071f62dd24beb564" +autoprefixer@^8.5.0: + version "8.5.0" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-8.5.0.tgz#89a39b1316fbe7bc2b4997a0c7dad0149d99511c" dependencies: - browserslist "^3.2.6" - caniuse-lite "^1.0.30000832" + browserslist "^3.2.7" + caniuse-lite "^1.0.30000839" normalize-range "^0.1.2" num2fraction "^1.2.2" postcss "^6.0.22" @@ -1479,6 +1505,13 @@ browserslist@^3.2.6: caniuse-lite "^1.0.30000830" electron-to-chromium "^1.3.42" +browserslist@^3.2.7: + version "3.2.7" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.7.tgz#aa488634d320b55e88bab0256184dbbcca1e6de9" + dependencies: + caniuse-lite "^1.0.30000835" + electron-to-chromium "^1.3.45" + bser@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" @@ -1615,9 +1648,9 @@ caniuse-lite@^1.0.30000830: version "1.0.30000830" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000830.tgz#cb96b8a2dd3cbfe04acea2af3c4e894249095328" -caniuse-lite@^1.0.30000832: - version "1.0.30000836" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000836.tgz#c08f405b884d36dc44fa4c9a85c2c06cdab1dbb5" +caniuse-lite@^1.0.30000835, caniuse-lite@^1.0.30000839: + version "1.0.30000840" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000840.tgz#344513f8f843536cf99694964c09811277eee395" capture-stack-trace@^1.0.0: version "1.0.0" @@ -2110,6 +2143,14 @@ cosmiconfig@^4.0.0: parse-json "^4.0.0" require-from-string "^2.0.1" +cosmiconfig@^5.0.2: + version "5.0.3" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.3.tgz#299c08ebce9d2df8a2c9ec3f11e55b1c2e897bf3" + dependencies: + is-directory "^0.3.1" + js-yaml "^3.9.0" + parse-json "^4.0.0" + create-ecdh@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.1.tgz#44223dfed533193ba5ba54e0df5709b89acf1f82" @@ -2730,6 +2771,10 @@ electron-to-chromium@^1.3.42: version "1.3.45" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.45.tgz#458ac1b1c5c760ce8811a16d2bfbd97ec30bafb8" +electron-to-chromium@^1.3.45: + version "1.3.46" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.46.tgz#00e85e22275415a887505e4ab49737194f18b9b0" + elegant-spinner@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" @@ -4977,14 +5022,14 @@ koa-is-json@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/koa-is-json/-/koa-is-json-1.0.0.tgz#273c07edcdcb8df6a2c1ab7d59ee76491451ec14" -koa-webpack@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/koa-webpack/-/koa-webpack-3.0.2.tgz#5a0604d476ec5ab3f12f02fd5bf8406a77b49ed2" +koa-webpack@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/koa-webpack/-/koa-webpack-4.0.0.tgz#1d9b83c109db106d8ef65db376f910a45ba964c7" dependencies: app-root-path "^2.0.1" merge-options "^1.0.0" webpack-dev-middleware "^3.0.0" - webpack-hot-client "^2.0.0" + webpack-hot-client "^3.0.0" webpack-log "^1.1.1" koa@^2.4.1: @@ -5449,21 +5494,21 @@ memory-fs@^0.4.0, memory-fs@~0.4.1: errno "^0.1.3" readable-stream "^2.0.1" -meow@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/meow/-/meow-4.0.1.tgz#d48598f6f4b1472f35bf6317a95945ace347f975" +meow@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-5.0.0.tgz#dfc73d63a9afc714a5e371760eb5c88b91078aa4" dependencies: camelcase-keys "^4.0.0" decamelize-keys "^1.0.0" loud-rejection "^1.0.0" - minimist "^1.1.3" minimist-options "^3.0.1" normalize-package-data "^2.3.4" read-pkg-up "^3.0.0" redent "^2.0.0" trim-newlines "^2.0.0" + yargs-parser "^10.0.0" -merge-options@^1.0.0: +merge-options@^1.0.0, merge-options@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-options/-/merge-options-1.0.1.tgz#2a64b24457becd4e4dc608283247e94ce589aa32" dependencies: @@ -5587,7 +5632,7 @@ minimist@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.1.0.tgz#99df657a52574c21c9057497df742790b2b4c0de" -minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: +minimist@^1.1.1, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" @@ -8525,10 +8570,14 @@ uuid@^3.1.0: version "3.2.1" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" -v8-compile-cache@^1.1.0, v8-compile-cache@^1.1.2: +v8-compile-cache@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-1.1.2.tgz#8d32e4f16974654657e676e0e467a348e89b0dc4" +v8-compile-cache@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.0.tgz#526492e35fc616864284700b7043e01baee09f0a" + v8flags@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4" @@ -8640,9 +8689,9 @@ vue-lazyload@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/vue-lazyload/-/vue-lazyload-1.2.3.tgz#901f9ec15c7e6ca78781a2bae4a343686bdedb2c" -vue-loader@^15.0.10: - version "15.0.10" - resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.0.10.tgz#cbbb43d63492c24bfb1963fb7997d5349ef42e72" +vue-loader@^15.0.11: + version "15.0.11" + resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.0.11.tgz#b41dee864cdeb0012c8a2c02a66b13459e45e16e" dependencies: "@vue/component-compiler-utils" "^1.2.1" hash-sum "^1.0.2" @@ -8722,14 +8771,14 @@ watchpack@^1.5.0: graceful-fs "^4.1.2" neo-async "^2.5.0" -webassemblyjs@1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/webassemblyjs/-/webassemblyjs-1.4.2.tgz#3b07b506917c97153d83441d8a88ffa2d25cc07d" +webassemblyjs@1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/webassemblyjs/-/webassemblyjs-1.4.3.tgz#0591893efb8fbde74498251cbe4b2d83df9239cb" dependencies: - "@webassemblyjs/ast" "1.4.2" - "@webassemblyjs/validation" "1.4.2" - "@webassemblyjs/wasm-parser" "1.4.2" - "@webassemblyjs/wast-parser" "1.4.2" + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/validation" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" + "@webassemblyjs/wast-parser" "1.4.3" long "^3.2.0" webidl-conversions@^4.0.1, webidl-conversions@^4.0.2: @@ -8785,12 +8834,13 @@ webpack-dev-middleware@^3.0.0: url-join "^4.0.0" webpack-log "^1.0.1" -webpack-hot-client@^2.0.0, webpack-hot-client@^2.2.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/webpack-hot-client/-/webpack-hot-client-2.2.2.tgz#4a97c513fc22d132573a0cb66ba7f525ff5fc036" +webpack-hot-client@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/webpack-hot-client/-/webpack-hot-client-3.0.0.tgz#b714f257a264001275bc1491741685779cde12f2" dependencies: json-stringify-safe "^5.0.1" loglevelnext "^1.0.2" + strip-ansi "^4.0.0" uuid "^3.1.0" webpack-log "^1.1.1" ws "^4.0.0" @@ -8804,32 +8854,33 @@ webpack-log@^1.0.1, webpack-log@^1.1.1, webpack-log@^1.1.2: loglevelnext "^1.0.1" uuid "^3.1.0" -webpack-serve@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/webpack-serve/-/webpack-serve-0.3.2.tgz#9cfd823dd570438d8cf362e70586bc54af1f0c92" +webpack-serve@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/webpack-serve/-/webpack-serve-1.0.2.tgz#cd7f040cac63300e8fff79f1d45aa2f3e5825492" dependencies: "@shellscape/koa-static" "^4.0.4" + "@webpack-contrib/config-loader" "^1.1.1" chalk "^2.3.0" clipboardy "^1.2.2" - cosmiconfig "^4.0.0" + cosmiconfig "^5.0.2" debug "^3.1.0" find-up "^2.1.0" get-port "^3.2.0" import-local "^1.0.0" killable "^1.0.0" koa "^2.4.1" - koa-webpack "^3.0.1" + koa-webpack "^4.0.0" lodash "^4.17.5" loud-rejection "^1.6.0" - meow "^4.0.0" + meow "^5.0.0" nanobus "^4.3.1" opn "^5.1.0" resolve "^1.6.0" time-fix-plugin "^2.0.0" update-notifier "^2.3.0" url-join "3.0.0" - v8-compile-cache "^1.1.0" - webpack-hot-client "^2.2.0" + v8-compile-cache "^2.0.0" + webpack-hot-client "^3.0.0" webpack-log "^1.1.2" webpack-sources@^1.0.1, webpack-sources@^1.1.0: @@ -8839,13 +8890,13 @@ webpack-sources@^1.0.1, webpack-sources@^1.1.0: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@^4.8.2: - version "4.8.2" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.8.2.tgz#41aa00fd32a8f253a2f12a2da11c8ad4d52fde1c" +webpack@^4.8.3: + version "4.8.3" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.8.3.tgz#957c8e80000f9e5cc03d775e78b472d8954f4eeb" dependencies: - "@webassemblyjs/ast" "1.4.2" - "@webassemblyjs/wasm-edit" "1.4.2" - "@webassemblyjs/wasm-parser" "1.4.2" + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/wasm-edit" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" acorn "^5.0.0" acorn-dynamic-import "^3.0.0" ajv "^6.1.0" @@ -9000,6 +9051,12 @@ yallist@^3.0.0, yallist@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.2.tgz#8452b4bb7e83c7c188d8041c1a837c773d6d8bb9" +yargs-parser@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.0.0.tgz#c737c93de2567657750cb1f2c00be639fd19c994" + dependencies: + camelcase "^4.1.0" + yargs-parser@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-8.1.0.tgz#f1376a33b6629a5d063782944da732631e966950"