From 5b138f3bd84694f6a6036c3a7252cfccc02688cf Mon Sep 17 00:00:00 2001 From: Rob Wierzbowski Date: Tue, 21 Nov 2017 09:23:51 -0500 Subject: [PATCH 01/23] Simplify elementCount custom assertions (#898) * Improve custom Nightwatch assertion comment readability Standardize capitalization, punctuation Use common language Reduce word count * Clarify elementCount arguments Before this commit the term `selector` was used for two separate arguments in two separate scopes. Rename the function passed to the browser so the developer understands that these are two arguments/two scopes/not the same value. --- template/test/e2e/custom-assertions/elementCount.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/template/test/e2e/custom-assertions/elementCount.js b/template/test/e2e/custom-assertions/elementCount.js index c0103f9431..972e9508ab 100644 --- a/template/test/e2e/custom-assertions/elementCount.js +++ b/template/test/e2e/custom-assertions/elementCount.js @@ -1,11 +1,12 @@ // A custom Nightwatch assertion. -// the name of the method is the filename. -// can be used in tests like this: +// The assertion name is the filename. +// Example usage: // // browser.assert.elementCount(selector, count) // -// for how to write custom assertions see +// For more information on custom assertions see: // http://nightwatchjs.org/guide#writing-custom-assertions + exports.assertion = function (selector, count) { this.message = 'Testing if element <' + selector + '> has count: ' + count{{#if_eq lintConfig "airbnb"}};{{/if_eq}} this.expected = count{{#if_eq lintConfig "airbnb"}};{{/if_eq}} @@ -17,8 +18,8 @@ exports.assertion = function (selector, count) { } this.command = function (cb) { var self = this{{#if_eq lintConfig "airbnb"}};{{/if_eq}} - return this.api.execute(function (selector) { - return document.querySelectorAll(selector).length{{#if_eq lintConfig "airbnb"}};{{/if_eq}} + return this.api.execute(function (selectorToCount) { + return document.querySelectorAll(selectorToCount).length{{#if_eq lintConfig "airbnb"}};{{/if_eq}} }, [selector], function (res) { cb.call(self, res){{#if_eq lintConfig "airbnb"}};{{/if_eq}} }){{#if_eq lintConfig "airbnb"}};{{/if_eq}} From 2b90ae210ea235e0fa44bdabdd407fce1bddc805 Mon Sep 17 00:00:00 2001 From: Mulia Nasution Date: Wed, 27 Dec 2017 23:38:07 +0700 Subject: [PATCH 02/23] Fix TypeScript typo (#1187) Signed-off-by: Mulia Arifandi Nasution --- template/build/build.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template/build/build.js b/template/build/build.js index 2b648b810c..8f2ad8ad49 100644 --- a/template/build/build.js +++ b/template/build/build.js @@ -22,7 +22,7 @@ rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => { process.stdout.write(stats.toString({ colors: true, modules: false, - children: false, // if you are using ts-loader, setting this to true will make tyescript errors show up during build + children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build. chunks: false, chunkModules: false }) + '\n\n') From 4731a3436f7b6067db46d2bd98ee462adf5166c5 Mon Sep 17 00:00:00 2001 From: Thorsten Date: Sat, 6 Jan 2018 18:41:13 +0100 Subject: [PATCH 03/23] fix history fallback for windows. --- template/build/webpack.dev.conf.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template/build/webpack.dev.conf.js b/template/build/webpack.dev.conf.js index d950ba5a2e..070ae221f3 100755 --- a/template/build/webpack.dev.conf.js +++ b/template/build/webpack.dev.conf.js @@ -25,7 +25,7 @@ const devWebpackConfig = merge(baseWebpackConfig, { clientLogLevel: 'warning', historyApiFallback: { rewrites: [ - { from: /.*/, to: path.join(config.dev.assetsPublicPath, 'index.html') }, + { from: /.*/, to: path.posix.join(config.dev.assetsPublicPath, 'index.html') }, ], }, hot: true, From cad283df57473ccd3616b43015298d27f540a441 Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 10:26:58 +0800 Subject: [PATCH 04/23] bbb --- meta.js | 6 + package-lock.json | 616 +++++++++++++++++------------------ template/package.json | 3 +- template/src/main.js | 6 + template/src/mock/index.js | 0 template/src/router/index.js | 31 +- template/src/view/layout.vue | 35 ++ 7 files changed, 376 insertions(+), 321 deletions(-) create mode 100644 template/src/mock/index.js create mode 100644 template/src/view/layout.vue diff --git a/meta.js b/meta.js index a521f9bdd0..c9f4852a6b 100644 --- a/meta.js +++ b/meta.js @@ -74,6 +74,11 @@ module.exports = { type: 'confirm', message: 'Install vue-router?', }, + vues: { + when: 'isNotTest', + type: 'confirm', + message: 'Use vues ?', + }, lint: { when: 'isNotTest', type: 'confirm', @@ -169,6 +174,7 @@ module.exports = { 'test/unit/specs/index.js': "unit && runner === 'karma'", 'test/unit/setup.js': "unit && runner === 'jest'", 'test/e2e/**/*': 'e2e', + "src/store/**/*": "vuex", 'src/router/**/*': 'router', }, complete: function(data, { chalk }) { diff --git a/package-lock.json b/package-lock.json index 21209e981e..0dad14a695 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "vue-cli-template-webpack", - "version": "1.2.8", + "version": "1.3.1", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -16,10 +16,10 @@ "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "dev": true, "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.0.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" }, "dependencies": { "co": { @@ -36,9 +36,9 @@ "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", "dev": true, "requires": { - "kind-of": "3.2.2", - "longest": "1.0.1", - "repeat-string": "1.6.1" + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" } }, "amdefine": { @@ -74,7 +74,7 @@ "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", "dev": true, "requires": { - "color-convert": "1.9.1" + "color-convert": "^1.9.0" } }, "ansi-wrap": { @@ -89,7 +89,7 @@ "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", "dev": true, "requires": { - "sprintf-js": "1.0.3" + "sprintf-js": "~1.0.2" } }, "array-differ": { @@ -104,7 +104,7 @@ "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", "dev": true, "requires": { - "array-uniq": "1.0.3" + "array-uniq": "^1.0.1" } }, "array-uniq": { @@ -137,7 +137,7 @@ "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", "dev": true, "requires": { - "lodash": "4.17.4" + "lodash": "^4.14.0" } }, "asynckit": { @@ -177,7 +177,7 @@ "dev": true, "optional": true, "requires": { - "tweetnacl": "0.14.5" + "tweetnacl": "^0.14.3" } }, "bl": { @@ -186,7 +186,7 @@ "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", "dev": true, "requires": { - "readable-stream": "2.3.3" + "readable-stream": "^2.0.5" } }, "bluebird": { @@ -201,7 +201,7 @@ "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", "dev": true, "requires": { - "hoek": "4.2.0" + "hoek": "4.x.x" } }, "brace-expansion": { @@ -210,7 +210,7 @@ "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", "dev": true, "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -221,8 +221,8 @@ "dev": true, "requires": { "base64-js": "0.0.8", - "ieee754": "1.1.8", - "isarray": "1.0.0" + "ieee754": "^1.1.4", + "isarray": "^1.0.0" } }, "buffer-crc32": { @@ -262,10 +262,10 @@ "integrity": "sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==", "dev": true, "requires": { - "get-proxy": "2.1.0", - "isurl": "1.0.0", - "tunnel-agent": "0.6.0", - "url-to-options": "1.0.1" + "get-proxy": "^2.0.0", + "isurl": "^1.0.0-alpha5", + "tunnel-agent": "^0.6.0", + "url-to-options": "^1.0.1" } }, "center-align": { @@ -275,8 +275,8 @@ "dev": true, "optional": true, "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" } }, "chalk": { @@ -285,9 +285,9 @@ "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "ansi-styles": "3.2.0", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.0" + "ansi-styles": "^3.1.0", + "escape-string-regexp": "^1.0.5", + "supports-color": "^4.0.0" } }, "chardet": { @@ -302,7 +302,7 @@ "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "dev": true, "requires": { - "restore-cursor": "2.0.0" + "restore-cursor": "^2.0.0" } }, "cli-spinners": { @@ -324,8 +324,8 @@ "dev": true, "optional": true, "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", + "center-align": "^0.1.1", + "right-align": "^0.1.1", "wordwrap": "0.0.2" }, "dependencies": { @@ -365,9 +365,9 @@ "integrity": "sha1-O2rXfPJhRTD2d7HPYmZPW6dWtyI=", "dev": true, "requires": { - "co-from-stream": "0.0.0", - "fs-extra": "0.26.7", - "thunkify-wrap": "1.0.4" + "co-from-stream": "~0.0.0", + "fs-extra": "~0.26.5", + "thunkify-wrap": "~1.0.4" } }, "co-read": { @@ -388,7 +388,7 @@ "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", "dev": true, "requires": { - "color-name": "1.1.3" + "color-name": "^1.1.1" } }, "color-name": { @@ -403,7 +403,7 @@ "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", "dev": true, "requires": { - "delayed-stream": "1.0.0" + "delayed-stream": "~1.0.0" } }, "commander": { @@ -424,8 +424,8 @@ "integrity": "sha1-q6CXR9++TD5w52am5BWG4YWfxvI=", "dev": true, "requires": { - "ini": "1.3.5", - "proto-list": "1.2.4" + "ini": "^1.3.4", + "proto-list": "~1.2.1" } }, "consolidate": { @@ -434,7 +434,7 @@ "integrity": "sha1-WiUEe8dvcwcmZ8jLUsmJiI9JTGM=", "dev": true, "requires": { - "bluebird": "3.5.1" + "bluebird": "^3.1.1" } }, "core-util-is": { @@ -449,7 +449,7 @@ "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", "dev": true, "requires": { - "capture-stack-trace": "1.0.0" + "capture-stack-trace": "^1.0.0" } }, "cryptiles": { @@ -458,7 +458,7 @@ "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", "dev": true, "requires": { - "boom": "5.2.0" + "boom": "5.x.x" }, "dependencies": { "boom": { @@ -467,7 +467,7 @@ "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", "dev": true, "requires": { - "hoek": "4.2.0" + "hoek": "4.x.x" } } } @@ -478,7 +478,7 @@ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "dev": true, "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, "decamelize": { @@ -494,14 +494,14 @@ "integrity": "sha1-eu3YVCflqS2s/lVnSnxQXpbQH50=", "dev": true, "requires": { - "decompress-tar": "4.1.1", - "decompress-tarbz2": "4.1.1", - "decompress-targz": "4.1.1", - "decompress-unzip": "4.0.1", - "graceful-fs": "4.1.11", - "make-dir": "1.1.0", - "pify": "2.3.0", - "strip-dirs": "2.1.0" + "decompress-tar": "^4.0.0", + "decompress-tarbz2": "^4.0.0", + "decompress-targz": "^4.0.0", + "decompress-unzip": "^4.0.1", + "graceful-fs": "^4.1.10", + "make-dir": "^1.0.0", + "pify": "^2.3.0", + "strip-dirs": "^2.0.0" } }, "decompress-tar": { @@ -510,9 +510,9 @@ "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", "dev": true, "requires": { - "file-type": "5.2.0", - "is-stream": "1.1.0", - "tar-stream": "1.5.5" + "file-type": "^5.2.0", + "is-stream": "^1.1.0", + "tar-stream": "^1.5.2" } }, "decompress-tarbz2": { @@ -521,11 +521,11 @@ "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", "dev": true, "requires": { - "decompress-tar": "4.1.1", - "file-type": "6.2.0", - "is-stream": "1.1.0", - "seek-bzip": "1.0.5", - "unbzip2-stream": "1.2.5" + "decompress-tar": "^4.1.0", + "file-type": "^6.1.0", + "is-stream": "^1.1.0", + "seek-bzip": "^1.0.5", + "unbzip2-stream": "^1.0.9" }, "dependencies": { "file-type": { @@ -542,9 +542,9 @@ "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", "dev": true, "requires": { - "decompress-tar": "4.1.1", - "file-type": "5.2.0", - "is-stream": "1.1.0" + "decompress-tar": "^4.1.1", + "file-type": "^5.2.0", + "is-stream": "^1.1.0" } }, "decompress-unzip": { @@ -553,10 +553,10 @@ "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", "dev": true, "requires": { - "file-type": "3.9.0", - "get-stream": "2.3.1", - "pify": "2.3.0", - "yauzl": "2.9.1" + "file-type": "^3.8.0", + "get-stream": "^2.2.0", + "pify": "^2.3.0", + "yauzl": "^2.4.2" }, "dependencies": { "file-type": { @@ -571,8 +571,8 @@ "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", "dev": true, "requires": { - "object-assign": "4.1.1", - "pinkie-promise": "2.0.1" + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" } } } @@ -589,13 +589,13 @@ "integrity": "sha1-Y1N/l3+ZJmow64oqL70fILgAD3o=", "dev": true, "requires": { - "caw": "2.0.1", - "decompress": "4.2.0", - "filenamify": "2.0.0", - "get-stream": "3.0.0", - "got": "6.7.1", - "mkdirp": "0.5.1", - "pify": "2.3.0" + "caw": "^2.0.0", + "decompress": "^4.0.0", + "filenamify": "^2.0.0", + "get-stream": "^3.0.0", + "got": "^6.3.0", + "mkdirp": "^0.5.1", + "pify": "^2.3.0" } }, "download-git-repo": { @@ -604,9 +604,9 @@ "integrity": "sha1-1isHq+gpQx6f7JDVVDWXZkIo8wU=", "dev": true, "requires": { - "download": "5.0.3", - "git-clone": "0.1.0", - "rimraf": "2.6.2" + "download": "^5.0.3", + "git-clone": "^0.1.0", + "rimraf": "^2.6.1" } }, "duplexer3": { @@ -622,7 +622,7 @@ "dev": true, "optional": true, "requires": { - "jsbn": "0.1.1" + "jsbn": "~0.1.0" } }, "enable": { @@ -637,7 +637,7 @@ "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", "dev": true, "requires": { - "once": "1.4.0" + "once": "^1.4.0" } }, "escape-string-regexp": { @@ -664,7 +664,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "external-editor": { @@ -673,9 +673,9 @@ "integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==", "dev": true, "requires": { - "chardet": "0.4.2", - "iconv-lite": "0.4.19", - "tmp": "0.0.33" + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" } }, "extsprintf": { @@ -702,7 +702,7 @@ "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", "dev": true, "requires": { - "pend": "1.2.0" + "pend": "~1.2.0" } }, "figures": { @@ -711,7 +711,7 @@ "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5" + "escape-string-regexp": "^1.0.5" } }, "file-type": { @@ -732,9 +732,9 @@ "integrity": "sha1-vRYiYsC26Uv7zc8Zo7uzdk94VpU=", "dev": true, "requires": { - "filename-reserved-regex": "2.0.0", - "strip-outer": "1.0.0", - "trim-repeated": "1.0.0" + "filename-reserved-regex": "^2.0.0", + "strip-outer": "^1.0.0", + "trim-repeated": "^1.0.0" } }, "forever-agent": { @@ -749,9 +749,9 @@ "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=", "dev": true, "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.17" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.5", + "mime-types": "^2.1.12" } }, "fs-extra": { @@ -760,11 +760,11 @@ "integrity": "sha1-muH92UiXeY7at20JGM9C0MMYT6k=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0", - "klaw": "1.3.1", - "path-is-absolute": "1.0.1", - "rimraf": "2.6.2" + "graceful-fs": "^4.1.2", + "jsonfile": "^2.1.0", + "klaw": "^1.0.0", + "path-is-absolute": "^1.0.0", + "rimraf": "^2.2.8" } }, "fs.realpath": { @@ -779,7 +779,7 @@ "integrity": "sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==", "dev": true, "requires": { - "npm-conf": "1.1.3" + "npm-conf": "^1.1.0" } }, "get-stream": { @@ -794,7 +794,7 @@ "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "dev": true, "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, "git-clone": { @@ -809,12 +809,12 @@ "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "got": { @@ -823,17 +823,17 @@ "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", "dev": true, "requires": { - "create-error-class": "3.0.2", - "duplexer3": "0.1.4", - "get-stream": "3.0.0", - "is-redirect": "1.0.0", - "is-retry-allowed": "1.1.0", - "is-stream": "1.1.0", - "lowercase-keys": "1.0.0", - "safe-buffer": "5.1.1", - "timed-out": "4.0.1", - "unzip-response": "2.0.1", - "url-parse-lax": "1.0.0" + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" } }, "graceful-fs": { @@ -854,11 +854,11 @@ "integrity": "sha1-MELZrewqHe1qdwep7SOA+KF6Qw4=", "dev": true, "requires": { - "ansi-red": "0.1.1", - "coffee-script": "1.12.7", - "extend-shallow": "2.0.1", - "js-yaml": "3.10.0", - "toml": "2.3.3" + "ansi-red": "^0.1.1", + "coffee-script": "^1.12.4", + "extend-shallow": "^2.0.1", + "js-yaml": "^3.8.1", + "toml": "^2.3.2" } }, "handlebars": { @@ -867,10 +867,10 @@ "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=", "dev": true, "requires": { - "async": "1.5.2", - "optimist": "0.6.1", - "source-map": "0.4.4", - "uglify-js": "2.8.29" + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" }, "dependencies": { "async": { @@ -893,8 +893,8 @@ "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", "dev": true, "requires": { - "ajv": "5.5.2", - "har-schema": "2.0.0" + "ajv": "^5.1.0", + "har-schema": "^2.0.0" } }, "has-ansi": { @@ -903,7 +903,7 @@ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -938,7 +938,7 @@ "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", "dev": true, "requires": { - "has-symbol-support-x": "1.4.1" + "has-symbol-support-x": "^1.4.1" } }, "hawk": { @@ -947,10 +947,10 @@ "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", "dev": true, "requires": { - "boom": "4.3.1", - "cryptiles": "3.1.2", - "hoek": "4.2.0", - "sntp": "2.1.0" + "boom": "4.x.x", + "cryptiles": "3.x.x", + "hoek": "4.x.x", + "sntp": "2.x.x" } }, "hoek": { @@ -965,9 +965,9 @@ "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", "dev": true, "requires": { - "assert-plus": "1.0.0", - "jsprim": "1.4.1", - "sshpk": "1.13.1" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" } }, "iconv-lite": { @@ -988,8 +988,8 @@ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -1010,20 +1010,20 @@ "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "dev": true, "requires": { - "ansi-escapes": "3.0.0", - "chalk": "2.3.0", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.1.0", - "figures": "2.0.0", - "lodash": "4.17.4", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rx-lite": "4.0.8", - "rx-lite-aggregates": "4.0.8", - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "through": "2.3.8" + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" } }, "is": { @@ -1116,8 +1116,8 @@ "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", "dev": true, "requires": { - "has-to-string-tag-x": "1.4.1", - "is-object": "1.0.1" + "has-to-string-tag-x": "^1.2.0", + "is-object": "^1.0.1" } }, "js-yaml": { @@ -1126,8 +1126,8 @@ "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==", "dev": true, "requires": { - "argparse": "1.0.9", - "esprima": "4.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" } }, "jsbn": { @@ -1161,7 +1161,7 @@ "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", "dev": true, "requires": { - "graceful-fs": "4.1.11" + "graceful-fs": "^4.1.6" } }, "jsprim": { @@ -1182,7 +1182,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } }, "klaw": { @@ -1191,7 +1191,7 @@ "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", "dev": true, "requires": { - "graceful-fs": "4.1.11" + "graceful-fs": "^4.1.9" } }, "lazy-cache": { @@ -1213,7 +1213,7 @@ "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", "dev": true, "requires": { - "chalk": "1.1.3" + "chalk": "^1.0.0" }, "dependencies": { "ansi-regex": { @@ -1234,11 +1234,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "strip-ansi": { @@ -1247,7 +1247,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -1276,7 +1276,7 @@ "integrity": "sha512-0Pkui4wLJ7rxvmfUvs87skoEaxmu0hCUApF8nonzpl7q//FWp9zu8W61Scz4sd/kUiqDxvUhtoam2efDyiBzcA==", "dev": true, "requires": { - "pify": "3.0.0" + "pify": "^3.0.0" }, "dependencies": { "pify": { @@ -1294,21 +1294,21 @@ "dev": true, "requires": { "absolute": "0.0.1", - "chalk": "1.1.3", - "clone": "1.0.3", - "co-fs-extra": "1.2.1", - "commander": "2.12.2", - "gray-matter": "2.1.1", - "has-generators": "1.0.1", - "is": "3.2.1", - "is-utf8": "0.2.1", - "recursive-readdir": "2.2.1", - "rimraf": "2.6.2", - "stat-mode": "0.2.2", - "thunkify": "2.1.2", + "chalk": "^1.1.3", + "clone": "^1.0.2", + "co-fs-extra": "^1.2.1", + "commander": "^2.6.0", + "gray-matter": "^2.0.0", + "has-generators": "^1.0.1", + "is": "^3.1.0", + "is-utf8": "~0.2.0", + "recursive-readdir": "^2.1.0", + "rimraf": "^2.2.8", + "stat-mode": "^0.2.0", + "thunkify": "^2.1.2", "unyield": "0.0.1", - "ware": "1.3.0", - "win-fork": "1.1.1" + "ware": "^1.2.0", + "win-fork": "^1.1.1" }, "dependencies": { "ansi-regex": { @@ -1329,11 +1329,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "strip-ansi": { @@ -1342,7 +1342,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -1365,7 +1365,7 @@ "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", "dev": true, "requires": { - "mime-db": "1.30.0" + "mime-db": "~1.30.0" } }, "mimic-fn": { @@ -1380,7 +1380,7 @@ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { - "brace-expansion": "1.1.8" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -1404,10 +1404,10 @@ "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", "dev": true, "requires": { - "array-differ": "1.0.0", - "array-union": "1.0.2", - "arrify": "1.0.1", - "minimatch": "3.0.4" + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" } }, "mute-stream": { @@ -1422,8 +1422,8 @@ "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", "dev": true, "requires": { - "config-chain": "1.1.11", - "pify": "3.0.0" + "config-chain": "^1.1.11", + "pify": "^3.0.0" }, "dependencies": { "pify": { @@ -1452,7 +1452,7 @@ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "onetime": { @@ -1461,7 +1461,7 @@ "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", "dev": true, "requires": { - "mimic-fn": "1.1.0" + "mimic-fn": "^1.0.0" } }, "optimist": { @@ -1470,8 +1470,8 @@ "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", "dev": true, "requires": { - "minimist": "0.0.8", - "wordwrap": "0.0.3" + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" } }, "ora": { @@ -1480,10 +1480,10 @@ "integrity": "sha1-gAeN0rkqk0r2ajrXKluRBpTt5Ro=", "dev": true, "requires": { - "chalk": "1.1.3", - "cli-cursor": "2.1.0", - "cli-spinners": "1.1.0", - "log-symbols": "1.0.2" + "chalk": "^1.1.1", + "cli-cursor": "^2.1.0", + "cli-spinners": "^1.0.0", + "log-symbols": "^1.0.2" }, "dependencies": { "ansi-regex": { @@ -1504,11 +1504,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "strip-ansi": { @@ -1517,7 +1517,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -1576,7 +1576,7 @@ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" } }, "prepend-http": { @@ -1624,13 +1624,13 @@ "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", "dev": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "safe-buffer": "5.1.1", - "string_decoder": "1.0.3", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.0.3", + "util-deprecate": "~1.0.1" } }, "recursive-readdir": { @@ -1648,7 +1648,7 @@ "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", "dev": true, "requires": { - "brace-expansion": "1.1.8" + "brace-expansion": "^1.0.0" } } } @@ -1665,28 +1665,28 @@ "integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==", "dev": true, "requires": { - "aws-sign2": "0.7.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.3.1", - "har-validator": "5.0.3", - "hawk": "6.0.2", - "http-signature": "1.2.0", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.17", - "oauth-sign": "0.8.2", - "performance-now": "2.1.0", - "qs": "6.5.1", - "safe-buffer": "5.1.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.3", - "tunnel-agent": "0.6.0", - "uuid": "3.1.0" + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "hawk": "~6.0.2", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "stringstream": "~0.0.5", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" } }, "restore-cursor": { @@ -1695,8 +1695,8 @@ "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "dev": true, "requires": { - "onetime": "2.0.1", - "signal-exit": "3.0.2" + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" } }, "right-align": { @@ -1706,7 +1706,7 @@ "dev": true, "optional": true, "requires": { - "align-text": "0.1.4" + "align-text": "^0.1.1" } }, "rimraf": { @@ -1715,7 +1715,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "run-async": { @@ -1724,7 +1724,7 @@ "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", "dev": true, "requires": { - "is-promise": "2.1.0" + "is-promise": "^2.1.0" } }, "rx-lite": { @@ -1739,7 +1739,7 @@ "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", "dev": true, "requires": { - "rx-lite": "4.0.8" + "rx-lite": "*" } }, "safe-buffer": { @@ -1754,7 +1754,7 @@ "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", "dev": true, "requires": { - "commander": "2.8.1" + "commander": "~2.8.1" }, "dependencies": { "commander": { @@ -1763,7 +1763,7 @@ "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", "dev": true, "requires": { - "graceful-readlink": "1.0.1" + "graceful-readlink": ">= 1.0.0" } } } @@ -1786,7 +1786,7 @@ "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", "dev": true, "requires": { - "hoek": "4.2.0" + "hoek": "4.x.x" } }, "source-map": { @@ -1795,7 +1795,7 @@ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", "dev": true, "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } }, "sprintf-js": { @@ -1810,14 +1810,14 @@ "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", "dev": true, "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "tweetnacl": "~0.14.0" } }, "stat-mode": { @@ -1832,8 +1832,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" } }, "string_decoder": { @@ -1842,7 +1842,7 @@ "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "~5.1.0" } }, "stringstream": { @@ -1857,7 +1857,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, "strip-dirs": { @@ -1866,7 +1866,7 @@ "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", "dev": true, "requires": { - "is-natural-number": "4.0.1" + "is-natural-number": "^4.0.1" } }, "strip-outer": { @@ -1875,7 +1875,7 @@ "integrity": "sha1-qsC6YNLpDF1PJ1/Yhp/ZotMQ/7g=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5" + "escape-string-regexp": "^1.0.2" } }, "supports-color": { @@ -1884,7 +1884,7 @@ "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", "dev": true, "requires": { - "has-flag": "2.0.0" + "has-flag": "^2.0.0" } }, "tar-stream": { @@ -1893,10 +1893,10 @@ "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", "dev": true, "requires": { - "bl": "1.2.1", - "end-of-stream": "1.4.0", - "readable-stream": "2.3.3", - "xtend": "4.0.1" + "bl": "^1.0.0", + "end-of-stream": "^1.0.0", + "readable-stream": "^2.0.0", + "xtend": "^4.0.0" } }, "through": { @@ -1917,7 +1917,7 @@ "integrity": "sha1-tSvlSN3+/aIOALWMYJZ2K0PdaIA=", "dev": true, "requires": { - "enable": "1.3.2" + "enable": "1" } }, "tildify": { @@ -1926,7 +1926,7 @@ "integrity": "sha1-3OwD9V3Km3qj5bBPIYF+tW5jWIo=", "dev": true, "requires": { - "os-homedir": "1.0.2" + "os-homedir": "^1.0.0" } }, "timed-out": { @@ -1941,7 +1941,7 @@ "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, "requires": { - "os-tmpdir": "1.0.2" + "os-tmpdir": "~1.0.2" } }, "toml": { @@ -1956,7 +1956,7 @@ "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=", "dev": true, "requires": { - "punycode": "1.4.1" + "punycode": "^1.4.1" } }, "trim-repeated": { @@ -1965,7 +1965,7 @@ "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5" + "escape-string-regexp": "^1.0.2" } }, "tunnel-agent": { @@ -1974,7 +1974,7 @@ "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", "dev": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "^5.0.1" } }, "tweetnacl": { @@ -1991,9 +1991,9 @@ "dev": true, "optional": true, "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" }, "dependencies": { "source-map": { @@ -2024,8 +2024,8 @@ "integrity": "sha512-izD3jxT8xkzwtXRUZjtmRwKnZoeECrfZ8ra/ketwOcusbZEp4mjULMnJOCfTDZBgGQAAY1AJ/IgxcwkavcX9Og==", "dev": true, "requires": { - "buffer": "3.6.0", - "through": "2.3.8" + "buffer": "^3.0.1", + "through": "^2.3.6" } }, "unyield": { @@ -2034,7 +2034,7 @@ "integrity": "sha1-FQ5l2kK/d0JEW5WKZOubhdHSsYA=", "dev": true, "requires": { - "co": "3.1.0" + "co": "~3.1.0" } }, "unzip-response": { @@ -2049,7 +2049,7 @@ "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", "dev": true, "requires": { - "prepend-http": "1.0.4" + "prepend-http": "^1.0.1" } }, "url-to-options": { @@ -2064,7 +2064,7 @@ "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", "dev": true, "requires": { - "os-homedir": "1.0.2" + "os-homedir": "^1.0.0" } }, "util-deprecate": { @@ -2085,7 +2085,7 @@ "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", "dev": true, "requires": { - "builtins": "1.0.3" + "builtins": "^1.0.3" } }, "verror": { @@ -2094,9 +2094,9 @@ "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", "dev": true, "requires": { - "assert-plus": "1.0.0", + "assert-plus": "^1.0.0", "core-util-is": "1.0.2", - "extsprintf": "1.3.0" + "extsprintf": "^1.2.0" } }, "vue-cli": { @@ -2105,26 +2105,26 @@ "integrity": "sha512-p0SP7fJKBSpA9BlgCSlJfKFjq0uGt7OJW0P7TVujQAr7kAgP9+rg8rNsF7U5TP/E+RjAe9LliCNf7M2O5G2USg==", "dev": true, "requires": { - "async": "2.6.0", - "chalk": "2.3.0", + "async": "^2.4.0", + "chalk": "^2.1.0", "coffee-script": "1.12.7", - "commander": "2.12.2", - "consolidate": "0.14.5", - "download-git-repo": "1.0.1", - "handlebars": "4.0.11", - "inquirer": "3.3.0", - "metalsmith": "2.3.0", - "minimatch": "3.0.4", - "multimatch": "2.1.0", - "ora": "1.3.0", - "read-metadata": "1.0.0", - "request": "2.83.0", - "rimraf": "2.6.2", - "semver": "5.4.1", - "tildify": "1.2.0", + "commander": "^2.9.0", + "consolidate": "^0.14.0", + "download-git-repo": "^1.0.1", + "handlebars": "^4.0.5", + "inquirer": "^3.3.0", + "metalsmith": "^2.1.0", + "minimatch": "^3.0.0", + "multimatch": "^2.1.0", + "ora": "^1.3.0", + "read-metadata": "^1.0.0", + "request": "^2.67.0", + "rimraf": "^2.5.0", + "semver": "^5.1.0", + "tildify": "^1.2.0", "uid": "0.0.2", - "user-home": "2.0.0", - "validate-npm-package-name": "3.0.0" + "user-home": "^2.0.0", + "validate-npm-package-name": "^3.0.0" } }, "ware": { @@ -2133,7 +2133,7 @@ "integrity": "sha1-0bFPOdLiy0q4xAmPdW/ksWTkc9Q=", "dev": true, "requires": { - "wrap-fn": "0.1.5" + "wrap-fn": "^0.1.0" } }, "win-fork": { @@ -2189,9 +2189,9 @@ "dev": true, "optional": true, "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", "window-size": "0.1.0" } }, @@ -2201,8 +2201,8 @@ "integrity": "sha1-qBmB6nCleUYTOIPwKcWCGok1mn8=", "dev": true, "requires": { - "buffer-crc32": "0.2.13", - "fd-slicer": "1.0.1" + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.0.1" } } } diff --git a/template/package.json b/template/package.json index 207322b98c..20d5aa3afa 100644 --- a/template/package.json +++ b/template/package.json @@ -26,7 +26,8 @@ }, "dependencies": { "vue": "^2.5.2"{{#router}}, - "vue-router": "^3.0.1"{{/router}} + "vue-router": "^3.0.1"{{/router}}{{#vuex}}, + "vuex": "^2.1.1"{{/vuex}} }, "devDependencies": { {{#lint}} diff --git a/template/src/main.js b/template/src/main.js index 48833b5ab7..1d2ace9d15 100644 --- a/template/src/main.js +++ b/template/src/main.js @@ -8,6 +8,12 @@ import App from './App' import router from './router' {{/router}} +{{#vuex}} //vuex init +import Vuex from 'vuex'{{#if_eq lintConfig "airbnb"}};{{/if_eq}} +import store from './store/store'{{#if_eq lintConfig "airbnb"}};{{/if_eq}} +Vue.use(Vuex){{#if_eq lintConfig "airbnb"}};{{/if_eq}} +{{/vuex}} + Vue.config.productionTip = false /* eslint-disable no-new */ diff --git a/template/src/mock/index.js b/template/src/mock/index.js new file mode 100644 index 0000000000..e69de29bb2 diff --git a/template/src/router/index.js b/template/src/router/index.js index 5fa7f9d319..c709554f44 100644 --- a/template/src/router/index.js +++ b/template/src/router/index.js @@ -1,15 +1,22 @@ import Vue from 'vue' import Router from 'vue-router' import HelloWorld from '@/components/HelloWorld' - -Vue.use(Router) - -export default new Router({ - routes: [ - { - path: '/', - name: 'HelloWorld', - component: HelloWorld - } - ] -}) +const component = { + template: '' +}; +const path = [ + { + path: '/', + name: 'index', + component HelloWorld + } +]; +Vue.use(Router); +const router = new Router({ + routes: path, + mode: 'history', + scrollBehavior (to, from, savedPosition) { + return { x: 0, y: 0 } + } +}); +export default router; diff --git a/template/src/view/layout.vue b/template/src/view/layout.vue new file mode 100644 index 0000000000..9c4d1bb30e --- /dev/null +++ b/template/src/view/layout.vue @@ -0,0 +1,35 @@ + + + \ No newline at end of file From e18e708c76e11c0081f17afefabb75680801a1ad Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 13:53:32 +0800 Subject: [PATCH 05/23] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- meta.js | 28 ++++- template/package.json | 3 +- template/src/App.vue | 25 +--- template/src/api/index.js | 3 + template/src/assets/reset.scss | 78 +++++++++++++ template/src/components/HelloWorld.vue | 113 ------------------- template/src/components/common/headerBox.vue | 36 ++++++ template/src/components/index.js | 20 ++++ template/src/config/index.js | 4 + template/src/config/plugins.js | 8 ++ template/src/config/util.js | 1 + template/src/main.js | 2 +- template/src/mock/index.js | 6 + template/src/router/index.js | 6 +- template/src/view/index.vue | 36 ++++++ template/src/view/layout.vue | 112 +++++++++++++++++- 16 files changed, 339 insertions(+), 142 deletions(-) create mode 100644 template/src/api/index.js create mode 100644 template/src/assets/reset.scss delete mode 100644 template/src/components/HelloWorld.vue create mode 100644 template/src/components/common/headerBox.vue create mode 100644 template/src/components/index.js create mode 100644 template/src/config/index.js create mode 100644 template/src/config/plugins.js create mode 100644 template/src/config/util.js create mode 100644 template/src/view/index.vue diff --git a/meta.js b/meta.js index c9f4852a6b..2ff5f47881 100644 --- a/meta.js +++ b/meta.js @@ -44,13 +44,30 @@ module.exports = { type: 'string', required: false, message: 'Project description', - default: 'A Vue.js project', + default: 'A metaTeam template project.', }, author: { when: 'isNotTest', type: 'string', message: 'Author', }, + platform: { + when: 'isNotTest', + type: 'list', + message: '平台模板', + choices: [ + { + name: 'admin-template', + value: 'adminTmp', + short: 'adminTmp' + }, + { + name: 'web-app-template', + value: 'webApp', + short: 'webApp' + } + ] + }, build: { when: 'isNotTest', type: 'list', @@ -74,10 +91,15 @@ module.exports = { type: 'confirm', message: 'Install vue-router?', }, - vues: { + vuex: { + when: 'isNotTest', + type: 'confirm', + message: 'Use vuex ?', + }, + mock: { when: 'isNotTest', type: 'confirm', - message: 'Use vues ?', + message: 'Use mock.js ?', }, lint: { when: 'isNotTest', diff --git a/template/package.json b/template/package.json index 20d5aa3afa..a6027a7ed4 100644 --- a/template/package.json +++ b/template/package.json @@ -27,7 +27,8 @@ "dependencies": { "vue": "^2.5.2"{{#router}}, "vue-router": "^3.0.1"{{/router}}{{#vuex}}, - "vuex": "^2.1.1"{{/vuex}} + "vuex": "^3.0.1"{{/vuex}}{{#mock}}, + "mock": "^1.0.1"{{/mock}} }, "devDependencies": { {{#lint}} diff --git a/template/src/App.vue b/template/src/App.vue index 0156030e49..c950b7a2b7 100644 --- a/template/src/App.vue +++ b/template/src/App.vue @@ -1,34 +1,19 @@ diff --git a/template/src/api/index.js b/template/src/api/index.js new file mode 100644 index 0000000000..ff2dbcee82 --- /dev/null +++ b/template/src/api/index.js @@ -0,0 +1,3 @@ +export default { + +} \ No newline at end of file diff --git a/template/src/assets/reset.scss b/template/src/assets/reset.scss new file mode 100644 index 0000000000..eadd635e6b --- /dev/null +++ b/template/src/assets/reset.scss @@ -0,0 +1,78 @@ +// base reset +*{ + font-family: "Microsoft YaHei"; + padding: 0; + margin:0; + -webkit-tap-highlight-color: transparent; + -webkit-overflow-scrolling: touch; + backface-visibility: hidden; + user-select: none; + } + body, html{ + width: 100%; + height: 100%; + -webkit-overflow-scrolling: touch; + overflow: hidden; + } + ::-webkit-scrollbar { + display: none; + } + ::-webkit-scrollbar-track { + //-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); + background-color: $---webkit-scrollbar-track; + } + /*定义滑块 内阴影+圆角*/ + ::-webkit-scrollbar-thumb { + display: none; + border-radius: 2px; + background-color: $---webkit-scrollbar-thumb; + } + textarea { + user-select: text !important; + } + + input { + user-select: text !important; + } + +// ::selection { +// background:$--color-warning; +// color:#fff; +// } + + button { + outline: none; + } + + +// ui 框架reset + +// 文字color +i{ + list-style: none; + font-size: none; + &.red{ + color: red; + } +} + +// transition 动画reset 默认添加 .3s 动画 +.animate{ + transition: all .3s; +} + +// 布局reset +#app, #layout{ + height: 100%; + overflow: hidden; +} +#app { + display: flex; + justify-content: center; +} +#layout{ + max-width: 540px; + box-sizing: border-box; + position: relative; + overflow: hidden; +} diff --git a/template/src/components/HelloWorld.vue b/template/src/components/HelloWorld.vue deleted file mode 100644 index ce0edd8ac1..0000000000 --- a/template/src/components/HelloWorld.vue +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - diff --git a/template/src/components/common/headerBox.vue b/template/src/components/common/headerBox.vue new file mode 100644 index 0000000000..d8095dbb8b --- /dev/null +++ b/template/src/components/common/headerBox.vue @@ -0,0 +1,36 @@ + + + \ No newline at end of file diff --git a/template/src/components/index.js b/template/src/components/index.js new file mode 100644 index 0000000000..3eda19f7a9 --- /dev/null +++ b/template/src/components/index.js @@ -0,0 +1,20 @@ +import Vue from 'vue' + +function capitalizeFirstLetter(string) { + return string.charAt(0).toUpperCase() + string.slice(1) +} + +const requireComponent = require.context( + '.', true, /\.vue$/ + //找到components文件夹下以.vue命名的文件 +) +requireComponent.keys().forEach(fileName => { + // fileName = fileName.split('/').pop(); + const componentConfig = requireComponent(fileName) + + let componentName = capitalizeFirstLetter( + fileName.replace(/^\.\//, '').replace(/\.\w+$/, '') + ); + let trueName = componentName.split('/').pop(); + Vue.component(trueName, componentConfig.default || componentConfig); +}); diff --git a/template/src/config/index.js b/template/src/config/index.js new file mode 100644 index 0000000000..562a744941 --- /dev/null +++ b/template/src/config/index.js @@ -0,0 +1,4 @@ +export const conf = { + api: '/api/', + baseUrl: '' +} \ No newline at end of file diff --git a/template/src/config/plugins.js b/template/src/config/plugins.js new file mode 100644 index 0000000000..94d9892582 --- /dev/null +++ b/template/src/config/plugins.js @@ -0,0 +1,8 @@ +import Vue from 'vue'; +import utils from './util'; // 引入util 工具 +import '@/assets/reset.scss'; // 引入重置css +import '@/components'; // 引入自动加载组件 +{{#mick}} +require('@/mock'); +{{/mock}} +Vue.prototype.$util = utils; diff --git a/template/src/config/util.js b/template/src/config/util.js new file mode 100644 index 0000000000..b21ef462dd --- /dev/null +++ b/template/src/config/util.js @@ -0,0 +1 @@ +export const util = {}; \ No newline at end of file diff --git a/template/src/main.js b/template/src/main.js index 1d2ace9d15..e606dc6315 100644 --- a/template/src/main.js +++ b/template/src/main.js @@ -7,7 +7,7 @@ import App from './App' {{#router}} import router from './router' {{/router}} - +import '@/config/plugins'; {{#vuex}} //vuex init import Vuex from 'vuex'{{#if_eq lintConfig "airbnb"}};{{/if_eq}} import store from './store/store'{{#if_eq lintConfig "airbnb"}};{{/if_eq}} diff --git a/template/src/mock/index.js b/template/src/mock/index.js index e69de29bb2..876f060029 100644 --- a/template/src/mock/index.js +++ b/template/src/mock/index.js @@ -0,0 +1,6 @@ +let Mock = require('mockjs'); +Mock.mock('/api/login', 'get', { + data: {}, + msg: '', + code: 200 +}); \ No newline at end of file diff --git a/template/src/router/index.js b/template/src/router/index.js index c709554f44..b8db643640 100644 --- a/template/src/router/index.js +++ b/template/src/router/index.js @@ -1,14 +1,14 @@ import Vue from 'vue' import Router from 'vue-router' -import HelloWorld from '@/components/HelloWorld' +const layout = resolve => require(['@/views/layout'], resolve); const component = { template: '' }; const path = [ { path: '/', - name: 'index', - component HelloWorld + name: 'layout', + component layout } ]; Vue.use(Router); diff --git a/template/src/view/index.vue b/template/src/view/index.vue new file mode 100644 index 0000000000..37efc96e58 --- /dev/null +++ b/template/src/view/index.vue @@ -0,0 +1,36 @@ + + + \ No newline at end of file diff --git a/template/src/view/layout.vue b/template/src/view/layout.vue index 9c4d1bb30e..d9e88ce271 100644 --- a/template/src/view/layout.vue +++ b/template/src/view/layout.vue @@ -1,14 +1,38 @@ \ No newline at end of file From c7f614a97fe9fbf9874dfb52e0fe517374544f8a Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 13:56:24 +0800 Subject: [PATCH 06/23] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=94=99=E5=88=AB?= =?UTF-8?q?=E5=AD=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/src/config/plugins.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template/src/config/plugins.js b/template/src/config/plugins.js index 94d9892582..e06dc469a4 100644 --- a/template/src/config/plugins.js +++ b/template/src/config/plugins.js @@ -2,7 +2,7 @@ import Vue from 'vue'; import utils from './util'; // 引入util 工具 import '@/assets/reset.scss'; // 引入重置css import '@/components'; // 引入自动加载组件 -{{#mick}} +{{#mock}} require('@/mock'); {{/mock}} Vue.prototype.$util = utils; From fcd99dfaac6cecd72641b9ca00130fbf135a9935 Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 14:00:42 +0800 Subject: [PATCH 07/23] =?UTF-8?q?=E4=BF=AE=E6=94=B9mockjs=20=E7=89=88?= =?UTF-8?q?=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template/package.json b/template/package.json index a6027a7ed4..d62d8be4f7 100644 --- a/template/package.json +++ b/template/package.json @@ -28,7 +28,7 @@ "vue": "^2.5.2"{{#router}}, "vue-router": "^3.0.1"{{/router}}{{#vuex}}, "vuex": "^3.0.1"{{/vuex}}{{#mock}}, - "mock": "^1.0.1"{{/mock}} + "mockjs": "^1.0.1"{{/mock}} }, "devDependencies": { {{#lint}} From 29108ae4c02dd74259a1cbbb9df304a6d7a0f037 Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 14:03:56 +0800 Subject: [PATCH 08/23] =?UTF-8?q?=E4=BF=AE=E6=94=B9mockjs=20=E7=89=88?= =?UTF-8?q?=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template/package.json b/template/package.json index d62d8be4f7..a8d87cc234 100644 --- a/template/package.json +++ b/template/package.json @@ -28,7 +28,7 @@ "vue": "^2.5.2"{{#router}}, "vue-router": "^3.0.1"{{/router}}{{#vuex}}, "vuex": "^3.0.1"{{/vuex}}{{#mock}}, - "mockjs": "^1.0.1"{{/mock}} + "mockjs": "^1.0.0"{{/mock}} }, "devDependencies": { {{#lint}} From 7553fa480b3e6632763f9d5d84e4f2c9bca8f21b Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 14:14:45 +0800 Subject: [PATCH 09/23] =?UTF-8?q?=E6=B7=BB=E5=8A=A0scss?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/package.json | 2 ++ template/src/router/index.js | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/template/package.json b/template/package.json index a8d87cc234..f365891c1b 100644 --- a/template/package.json +++ b/template/package.json @@ -31,6 +31,8 @@ "mockjs": "^1.0.0"{{/mock}} }, "devDependencies": { + "node-sass": "^4.9.3", + "sass-loader": "^7.1.0", {{#lint}} "babel-eslint": "^7.2.3", "eslint": "^4.15.0", diff --git a/template/src/router/index.js b/template/src/router/index.js index b8db643640..52c05bdaae 100644 --- a/template/src/router/index.js +++ b/template/src/router/index.js @@ -8,7 +8,7 @@ const path = [ { path: '/', name: 'layout', - component layout + component: layout } ]; Vue.use(Router); From 97bb2b7719e72d4703579f9650b70a371c1e8867 Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 15:04:00 +0800 Subject: [PATCH 10/23] =?UTF-8?q?=E4=BC=98=E5=8C=96vuex?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/src/router/index.js | 2 +- template/src/store/store.js | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 template/src/store/store.js diff --git a/template/src/router/index.js b/template/src/router/index.js index 52c05bdaae..1fc44cf41e 100644 --- a/template/src/router/index.js +++ b/template/src/router/index.js @@ -1,6 +1,6 @@ import Vue from 'vue' import Router from 'vue-router' -const layout = resolve => require(['@/views/layout'], resolve); +const layout = resolve => require(['@/view/layout'], resolve); const component = { template: '' }; diff --git a/template/src/store/store.js b/template/src/store/store.js new file mode 100644 index 0000000000..249133e22d --- /dev/null +++ b/template/src/store/store.js @@ -0,0 +1,12 @@ +const Vuex = require('Vuex'); +const store = newx Vuex.Store({ + state: { + count: 0 + }, + mutations: { + increment (state) { + state.count++ + } + } +}) +export default store; \ No newline at end of file From b2e15a5bead2040caff847c0197edacecf175fab Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 15:19:31 +0800 Subject: [PATCH 11/23] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/config/index.js | 2 +- template/src/assets/reset.scss | 2 ++ template/src/config/plugins.js | 4 ++-- template/src/main.js | 3 +++ template/src/store/store.js | 28 +++++++++++++++++----------- 5 files changed, 25 insertions(+), 14 deletions(-) diff --git a/template/config/index.js b/template/config/index.js index 820109957f..f649f77547 100644 --- a/template/config/index.js +++ b/template/config/index.js @@ -13,7 +13,7 @@ module.exports = { proxyTable: {}, // Various Dev Server settings - host: 'localhost', // can be overwritten by process.env.HOST + host: '0.0.0.0', // can be overwritten by process.env.HOST port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined autoOpenBrowser: false, errorOverlay: true, diff --git a/template/src/assets/reset.scss b/template/src/assets/reset.scss index eadd635e6b..73f7076d97 100644 --- a/template/src/assets/reset.scss +++ b/template/src/assets/reset.scss @@ -71,7 +71,9 @@ i{ justify-content: center; } #layout{ + {{#if_eq platform "webApp"}} max-width: 540px; + {{/if_eq}} box-sizing: border-box; position: relative; overflow: hidden; diff --git a/template/src/config/plugins.js b/template/src/config/plugins.js index e06dc469a4..fbf3494ce8 100644 --- a/template/src/config/plugins.js +++ b/template/src/config/plugins.js @@ -1,8 +1,8 @@ import Vue from 'vue'; -import utils from './util'; // 引入util 工具 +import {util} from './util'; // 引入util 工具 import '@/assets/reset.scss'; // 引入重置css import '@/components'; // 引入自动加载组件 {{#mock}} require('@/mock'); {{/mock}} -Vue.prototype.$util = utils; +Vue.prototype.$util = util; diff --git a/template/src/main.js b/template/src/main.js index e606dc6315..6ace114523 100644 --- a/template/src/main.js +++ b/template/src/main.js @@ -22,6 +22,9 @@ new Vue({ {{#router}} router, {{/router}} + {{#vuex}} + store, + {{/vuex}} {{#if_eq build "runtime"}} render: h => h(App) {{/if_eq}} diff --git a/template/src/store/store.js b/template/src/store/store.js index 249133e22d..cc9832c96e 100644 --- a/template/src/store/store.js +++ b/template/src/store/store.js @@ -1,12 +1,18 @@ -const Vuex = require('Vuex'); -const store = newx Vuex.Store({ - state: { - count: 0 + +import Vue from 'vue'; +import Vuex from 'vuex'; + + +Vue.use(Vuex); + + +const store = new Vuex.Store({ + modules: { + }, - mutations: { - increment (state) { - state.count++ - } - } -}) -export default store; \ No newline at end of file + //不要在发布环境下启用严格模式!严格模式会深度监测状态树来检测不合规的状态变更——请确保在发布环境下关闭严格模式,以避免性能损失。 + strict: process.env.NODE_ENV !== 'production', //是否开启严格模式 + }); + + +export default store \ No newline at end of file From 1f0e665c43b324c47f98a2def2541621e40b7ae0 Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 15:20:25 +0800 Subject: [PATCH 12/23] layout --- template/src/view/layout.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/template/src/view/layout.vue b/template/src/view/layout.vue index d9e88ce271..f831a80669 100644 --- a/template/src/view/layout.vue +++ b/template/src/view/layout.vue @@ -113,6 +113,7 @@ height: 100%; overflow: hidden; display: flex; + flex: 1; flex-direction: column; .headerBox{ } From 3045456dfd3470da33bc096964242579e31a180f Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 15:34:05 +0800 Subject: [PATCH 13/23] =?UTF-8?q?=E5=88=A0=E9=99=A4scss=E5=A4=9A=E4=BD=99?= =?UTF-8?q?=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/src/assets/reset.scss | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/template/src/assets/reset.scss b/template/src/assets/reset.scss index 73f7076d97..7b7a3a5b2a 100644 --- a/template/src/assets/reset.scss +++ b/template/src/assets/reset.scss @@ -19,13 +19,13 @@ } ::-webkit-scrollbar-track { //-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); - background-color: $---webkit-scrollbar-track; + background-color:#a2a2a2; } /*定义滑块 内阴影+圆角*/ ::-webkit-scrollbar-thumb { display: none; border-radius: 2px; - background-color: $---webkit-scrollbar-thumb; + background-color: #a3a3a3; } textarea { user-select: text !important; From 945634018d8f2ab57933cae3daecd28f7a4ad726 Mon Sep 17 00:00:00 2001 From: bhabgs Date: Fri, 9 Nov 2018 16:11:33 +0800 Subject: [PATCH 14/23] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=B8=83=E5=B1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/src/assets/reset.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/template/src/assets/reset.scss b/template/src/assets/reset.scss index 7b7a3a5b2a..b67b199ab5 100644 --- a/template/src/assets/reset.scss +++ b/template/src/assets/reset.scss @@ -69,10 +69,14 @@ i{ #app { display: flex; justify-content: center; + {{#if_eq platform "webApp"}} + background-color: #000; + {{/if_eq}} } #layout{ {{#if_eq platform "webApp"}} max-width: 540px; + background-color: #fff; {{/if_eq}} box-sizing: border-box; position: relative; From 64c743f83f74be808e9d92595c596fecb50c0d9f Mon Sep 17 00:00:00 2001 From: bhabgs Date: Mon, 12 Nov 2018 08:53:37 +0800 Subject: [PATCH 15/23] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/src/router/index.js | 25 ++++++++++++++++--------- template/src/view/index.vue | 2 +- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/template/src/router/index.js b/template/src/router/index.js index 1fc44cf41e..d96479dca1 100644 --- a/template/src/router/index.js +++ b/template/src/router/index.js @@ -1,22 +1,29 @@ import Vue from 'vue' import Router from 'vue-router' -const layout = resolve => require(['@/view/layout'], resolve); -const component = { +const layout = resolve => require(['@/view/layout'], resolve) +const index = resolve => require(['@/view/index'], resolve) +const component = { template: '' -}; +} const path = [ { path: '/', - name: 'layout', - component: layout + component: layout, + children: [ + { + path: '/', + component: index, + name: 'index' + } + ] } -]; -Vue.use(Router); +] +Vue.use(Router) const router = new Router({ routes: path, mode: 'history', scrollBehavior (to, from, savedPosition) { return { x: 0, y: 0 } } -}); -export default router; +}) +export default router diff --git a/template/src/view/index.vue b/template/src/view/index.vue index 37efc96e58..056c4af0e4 100644 --- a/template/src/view/index.vue +++ b/template/src/view/index.vue @@ -30,7 +30,7 @@ } } - \ No newline at end of file From e89160293d07c0f2d72af2c63a521fed0d1a92e7 Mon Sep 17 00:00:00 2001 From: bhabgs Date: Mon, 12 Nov 2018 09:08:00 +0800 Subject: [PATCH 16/23] change error --- template/src/config/index.js | 2 +- template/src/config/plugins.js | 6 +++--- template/src/config/util.js | 2 +- template/src/view/layout.vue | 2 +- template/test/unit/specs/HelloWorld.spec.js | 6 +++--- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/template/src/config/index.js b/template/src/config/index.js index 562a744941..c2124aeb4e 100644 --- a/template/src/config/index.js +++ b/template/src/config/index.js @@ -1,4 +1,4 @@ -export const conf = { +export default { api: '/api/', baseUrl: '' } \ No newline at end of file diff --git a/template/src/config/plugins.js b/template/src/config/plugins.js index fbf3494ce8..ddfb83cd4a 100644 --- a/template/src/config/plugins.js +++ b/template/src/config/plugins.js @@ -1,8 +1,8 @@ import Vue from 'vue'; import {util} from './util'; // 引入util 工具 -import '@/assets/reset.scss'; // 引入重置css -import '@/components'; // 引入自动加载组件 +import '~@/assets/reset.scss'; // 引入重置css +import '~@/components'; // 引入自动加载组件 {{#mock}} -require('@/mock'); +require('~@/mock'); {{/mock}} Vue.prototype.$util = util; diff --git a/template/src/config/util.js b/template/src/config/util.js index b21ef462dd..7c645e42fb 100644 --- a/template/src/config/util.js +++ b/template/src/config/util.js @@ -1 +1 @@ -export const util = {}; \ No newline at end of file +export default {}; \ No newline at end of file diff --git a/template/src/view/layout.vue b/template/src/view/layout.vue index f831a80669..b4c41bc717 100644 --- a/template/src/view/layout.vue +++ b/template/src/view/layout.vue @@ -95,7 +95,7 @@ }, watch: { $route(to, from) { - if (from.name == "login" || from.path.indexOf("home") > -1) { + if (from.name === "login" || from.path.indexOf("home") > -1) { this.direction = "slide-left"; } else if (to.path.indexOf("home") > -1) { this.direction = "slide-right"; diff --git a/template/test/unit/specs/HelloWorld.spec.js b/template/test/unit/specs/HelloWorld.spec.js index 1c75ca64cd..4d7a6504e3 100644 --- a/template/test/unit/specs/HelloWorld.spec.js +++ b/template/test/unit/specs/HelloWorld.spec.js @@ -1,9 +1,9 @@ import Vue from 'vue' -import HelloWorld from '@/components/HelloWorld' +import headerBox from '@/components/common/headerBox' -describe('HelloWorld.vue', () => { +describe('headerBox.vue', () => { it('should render correct contents', () => { - const Constructor = Vue.extend(HelloWorld) + const Constructor = Vue.extend(headerBox) const vm = new Constructor().$mount() expect(vm.$el.querySelector('.hello h1').textContent) {{#if_eq runner "karma"}}.to.equal('Welcome to Your Vue.js App'){{/if_eq}}{{#if_eq runner "jest"}}.toEqual('Welcome to Your Vue.js App'){{/if_eq}} From 690b6406dd5b070a0c3c30b77a16e37d12ac3ee7 Mon Sep 17 00:00:00 2001 From: bhabgs Date: Mon, 12 Nov 2018 09:29:03 +0800 Subject: [PATCH 17/23] =?UTF-8?q?=E4=BF=AE=E6=94=B9headerBox=20test=20spec?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template/src/components/common/headerBox.vue | 2 +- template/src/config/plugins.js | 2 +- template/test/unit/specs/HelloWorld.spec.js | 11 ----------- 3 files changed, 2 insertions(+), 13 deletions(-) delete mode 100644 template/test/unit/specs/HelloWorld.spec.js diff --git a/template/src/components/common/headerBox.vue b/template/src/components/common/headerBox.vue index d8095dbb8b..74b51196b9 100644 --- a/template/src/components/common/headerBox.vue +++ b/template/src/components/common/headerBox.vue @@ -1,6 +1,6 @@