Authored by 陈峰

commit

@@ -19,6 +19,7 @@ const cpPaths = [ @@ -19,6 +19,7 @@ const cpPaths = [
19 'doraemon', 19 'doraemon',
20 'utils', 20 'utils',
21 'apps/index.html', 21 'apps/index.html',
  22 + 'dist/degrade.html',
22 'dist/manifest.json', 23 'dist/manifest.json',
23 'dist/manifest.server.json' 24 'dist/manifest.server.json'
24 ]; 25 ];
1 const webpack = require('webpack'); 1 const webpack = require('webpack');
2 const merge = require('webpack-merge'); 2 const merge = require('webpack-merge');
3 const path = require('path'); 3 const path = require('path');
  4 +const HtmlWebpackPlugin = require('html-webpack-plugin');
4 const MiniCssExtractPlugin = require('mini-css-extract-plugin'); 5 const MiniCssExtractPlugin = require('mini-css-extract-plugin');
5 const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin; 6 const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
6 const VueSSRClientPlugin = require('vue-server-renderer/client-plugin'); 7 const VueSSRClientPlugin = require('vue-server-renderer/client-plugin');
@@ -110,6 +111,11 @@ const webpackConfig = merge(baseConfig, { @@ -110,6 +111,11 @@ const webpackConfig = merge(baseConfig, {
110 }), 111 }),
111 new webpack.DefinePlugin({ 112 new webpack.DefinePlugin({
112 'process.env.VUE_ENV': '"client"' 113 'process.env.VUE_ENV': '"client"'
  114 + }),
  115 + new HtmlWebpackPlugin({
  116 + filename: '../../degrade.html',
  117 + template: 'apps/index.html',
  118 + inject: true
113 }) 119 })
114 ] 120 ]
115 }); 121 });
@@ -220,6 +220,7 @@ if (isProduction) { @@ -220,6 +220,7 @@ if (isProduction) {
220 port: 8086, 220 port: 8086,
221 db: 'web_monitor', 221 db: 'web_monitor',
222 }, 222 },
  223 + zookeeperServer: 'zk01-yohoops-org:2181',
223 loggers: { 224 loggers: {
224 infoFile: { 225 infoFile: {
225 name: 'info', 226 name: 'info',
@@ -21,6 +21,20 @@ exports.createApp = async(app) => { @@ -21,6 +21,20 @@ exports.createApp = async(app) => {
21 app.locals.proEnv = app.get('env') === 'production'; 21 app.locals.proEnv = app.get('env') === 'production';
22 app.locals.version = pkg.version; 22 app.locals.version = pkg.version;
23 23
  24 + if (config.zookeeperServer) {
  25 + const monitor = global.yoho.monitorSender;
  26 + const monitorType = _.get(monitor, 'type.ZOOKEEPER');
  27 +
  28 + require('yoho-zookeeper')(config.zookeeperServer, 'wap', app.locals.wap = {}, false, {
  29 + onerror: (err) => {
  30 + monitor.tallyFail(monitorType, {
  31 + code: err.code,
  32 + message: err.name
  33 + });
  34 + }
  35 + });
  36 + }
  37 +
24 app.use('/node/status.html', (req, res) => { 38 app.use('/node/status.html', (req, res) => {
25 res.status(200).end(); 39 res.status(200).end();
26 }); 40 });
@@ -16,10 +16,13 @@ const isDev = process.env.NODE_ENV === 'development' || !process.env.NODE_ENV; @@ -16,10 +16,13 @@ const isDev = process.env.NODE_ENV === 'development' || !process.env.NODE_ENV;
16 16
17 let renderer; 17 let renderer;
18 let serverBundle; 18 let serverBundle;
  19 +let degradeHtml;
19 20
20 if (!isDev) { 21 if (!isDev) {
21 const template = fs.readFileSync(path.join(__dirname, '../../index.html'), 'utf-8'); 22 const template = fs.readFileSync(path.join(__dirname, '../../index.html'), 'utf-8');
22 23
  24 + degradeHtml = fs.readFileSync(path.join(__dirname, '../../degrade.html'), 'utf-8');
  25 +
23 serverBundle = require('../../manifest.server.json'); 26 serverBundle = require('../../manifest.server.json');
24 const clientManifest = require('../../manifest.json'); 27 const clientManifest = require('../../manifest.json');
25 28
@@ -71,6 +74,7 @@ const render = (route) => { @@ -71,6 +74,7 @@ const render = (route) => {
71 return async(req, res, next) => { 74 return async(req, res, next) => {
72 try { 75 try {
73 res.setHeader('X-YOHO-Version', pkg.version); 76 res.setHeader('X-YOHO-Version', pkg.version);
  77 + const isDegrade = _.get(req.app.locals.wap, 'webapp.degrade', false);
74 const ck = route.cackeKey ? getCacheKey(req.url, route.cackeKey) : void 0; 78 const ck = route.cackeKey ? getCacheKey(req.url, route.cackeKey) : void 0;
75 79
76 if (config.useCache && route.cache && ck) { 80 if (config.useCache && route.cache && ck) {
@@ -66,7 +66,8 @@ @@ -66,7 +66,8 @@
66 "yoho-md5": "^2.1.0", 66 "yoho-md5": "^2.1.0",
67 "yoho-node-lib": "=0.6.41", 67 "yoho-node-lib": "=0.6.41",
68 "yoho-qs": "^1.0.1", 68 "yoho-qs": "^1.0.1",
69 - "yoho-store": "^1.3.20" 69 + "yoho-store": "^1.3.20",
  70 + "yoho-zookeeper": "^1.0.11"
70 }, 71 },
71 "devDependencies": { 72 "devDependencies": {
72 "@babel/core": "^7.2.0", 73 "@babel/core": "^7.2.0",
@@ -91,6 +92,7 @@ @@ -91,6 +92,7 @@
91 "eslint-plugin-vue": "^5.0.0", 92 "eslint-plugin-vue": "^5.0.0",
92 "file-loader": "^2.0.0", 93 "file-loader": "^2.0.0",
93 "friendly-errors-webpack-plugin": "^1.7.0", 94 "friendly-errors-webpack-plugin": "^1.7.0",
  95 + "html-webpack-plugin": "^3.2.0",
94 "husky": "^1.2.0", 96 "husky": "^1.2.0",
95 "ignore-loader": "^0.1.2", 97 "ignore-loader": "^0.1.2",
96 "memory-fs": "^0.4.1", 98 "memory-fs": "^0.4.1",
@@ -1002,6 +1002,10 @@ async@^2.5.0, async@^2.6.0: @@ -1002,6 +1002,10 @@ async@^2.5.0, async@^2.6.0:
1002 dependencies: 1002 dependencies:
1003 lodash "^4.17.10" 1003 lodash "^4.17.10"
1004 1004
  1005 +async@~0.2.7:
  1006 + version "0.2.10"
  1007 + resolved "http://npm.yohops.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1"
  1008 +
1005 async@~1.0.0: 1009 async@~1.0.0:
1006 version "1.0.0" 1010 version "1.0.0"
1007 resolved "http://npm.yohops.com/async/-/async-1.0.0.tgz#f8fc04ca3a13784ade9e1641af98578cfbd647a9" 1011 resolved "http://npm.yohops.com/async/-/async-1.0.0.tgz#f8fc04ca3a13784ade9e1641af98578cfbd647a9"
@@ -1209,6 +1213,10 @@ bonjour@^3.5.0: @@ -1209,6 +1213,10 @@ bonjour@^3.5.0:
1209 multicast-dns "^6.0.1" 1213 multicast-dns "^6.0.1"
1210 multicast-dns-service-types "^1.1.0" 1214 multicast-dns-service-types "^1.1.0"
1211 1215
  1216 +boolbase@~1.0.0:
  1217 + version "1.0.0"
  1218 + resolved "http://npm.yohops.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
  1219 +
1212 boxen@^1.2.1: 1220 boxen@^1.2.1:
1213 version "1.3.0" 1221 version "1.3.0"
1214 resolved "http://npm.yohops.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b" 1222 resolved "http://npm.yohops.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b"
@@ -1431,6 +1439,13 @@ callsites@^2.0.0: @@ -1431,6 +1439,13 @@ callsites@^2.0.0:
1431 version "2.0.0" 1439 version "2.0.0"
1432 resolved "http://npm.yohops.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" 1440 resolved "http://npm.yohops.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50"
1433 1441
  1442 +camel-case@3.0.x:
  1443 + version "3.0.0"
  1444 + resolved "http://npm.yohops.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73"
  1445 + dependencies:
  1446 + no-case "^2.2.0"
  1447 + upper-case "^1.1.1"
  1448 +
1434 camelcase-keys@^2.0.0: 1449 camelcase-keys@^2.0.0:
1435 version "2.1.0" 1450 version "2.1.0"
1436 resolved "http://npm.yohops.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" 1451 resolved "http://npm.yohops.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7"
@@ -1589,6 +1604,12 @@ class-utils@^0.3.5: @@ -1589,6 +1604,12 @@ class-utils@^0.3.5:
1589 isobject "^3.0.0" 1604 isobject "^3.0.0"
1590 static-extend "^0.1.1" 1605 static-extend "^0.1.1"
1591 1606
  1607 +clean-css@4.2.x:
  1608 + version "4.2.1"
  1609 + resolved "http://npm.yohops.com/clean-css/-/clean-css-4.2.1.tgz#2d411ef76b8569b6d0c84068dabe85b0aa5e5c17"
  1610 + dependencies:
  1611 + source-map "~0.6.0"
  1612 +
1592 cli-boxes@^1.0.0: 1613 cli-boxes@^1.0.0:
1593 version "1.0.0" 1614 version "1.0.0"
1594 resolved "http://npm.yohops.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" 1615 resolved "http://npm.yohops.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143"
@@ -1715,6 +1736,10 @@ combined-stream@^1.0.6, combined-stream@~1.0.6: @@ -1715,6 +1736,10 @@ combined-stream@^1.0.6, combined-stream@~1.0.6:
1715 dependencies: 1736 dependencies:
1716 delayed-stream "~1.0.0" 1737 delayed-stream "~1.0.0"
1717 1738
  1739 +commander@2.17.x, commander@~2.17.1:
  1740 + version "2.17.1"
  1741 + resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf"
  1742 +
1718 commander@^2.18.0: 1743 commander@^2.18.0:
1719 version "2.19.0" 1744 version "2.19.0"
1720 resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" 1745 resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a"
@@ -1723,10 +1748,6 @@ commander@~2.14.1: @@ -1723,10 +1748,6 @@ commander@~2.14.1:
1723 version "2.14.1" 1748 version "2.14.1"
1724 resolved "http://npm.yohops.com/commander/-/commander-2.14.1.tgz#2235123e37af8ca3c65df45b026dbd357b01b9aa" 1749 resolved "http://npm.yohops.com/commander/-/commander-2.14.1.tgz#2235123e37af8ca3c65df45b026dbd357b01b9aa"
1725 1750
1726 -commander@~2.17.1:  
1727 - version "2.17.1"  
1728 - resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf"  
1729 -  
1730 commondir@^1.0.1: 1751 commondir@^1.0.1:
1731 version "1.0.1" 1752 version "1.0.1"
1732 resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" 1753 resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
@@ -2005,6 +2026,15 @@ css-parse@1.7.x: @@ -2005,6 +2026,15 @@ css-parse@1.7.x:
2005 version "1.7.0" 2026 version "1.7.0"
2006 resolved "http://npm.yohops.com/css-parse/-/css-parse-1.7.0.tgz#321f6cf73782a6ff751111390fc05e2c657d8c9b" 2027 resolved "http://npm.yohops.com/css-parse/-/css-parse-1.7.0.tgz#321f6cf73782a6ff751111390fc05e2c657d8c9b"
2007 2028
  2029 +css-select@^1.1.0:
  2030 + version "1.2.0"
  2031 + resolved "http://npm.yohops.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858"
  2032 + dependencies:
  2033 + boolbase "~1.0.0"
  2034 + css-what "2.1"
  2035 + domutils "1.5.1"
  2036 + nth-check "~1.0.1"
  2037 +
2008 css-selector-tokenizer@^0.7.0: 2038 css-selector-tokenizer@^0.7.0:
2009 version "0.7.1" 2039 version "0.7.1"
2010 resolved "http://npm.yohops.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d" 2040 resolved "http://npm.yohops.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d"
@@ -2017,6 +2047,10 @@ css-unit-converter@^1.1.1: @@ -2017,6 +2047,10 @@ css-unit-converter@^1.1.1:
2017 version "1.1.1" 2047 version "1.1.1"
2018 resolved "http://npm.yohops.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz#d9b9281adcfd8ced935bdbaba83786897f64e996" 2048 resolved "http://npm.yohops.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz#d9b9281adcfd8ced935bdbaba83786897f64e996"
2019 2049
  2050 +css-what@2.1:
  2051 + version "2.1.2"
  2052 + resolved "http://npm.yohops.com/css-what/-/css-what-2.1.2.tgz#c0876d9d0480927d7d4920dcd72af3595649554d"
  2053 +
2020 cssesc@^0.1.0: 2054 cssesc@^0.1.0:
2021 version "0.1.0" 2055 version "0.1.0"
2022 resolved "http://npm.yohops.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" 2056 resolved "http://npm.yohops.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4"
@@ -2254,6 +2288,12 @@ doctrine@^2.1.0: @@ -2254,6 +2288,12 @@ doctrine@^2.1.0:
2254 dependencies: 2288 dependencies:
2255 esutils "^2.0.2" 2289 esutils "^2.0.2"
2256 2290
  2291 +dom-converter@~0.2:
  2292 + version "0.2.0"
  2293 + resolved "http://npm.yohops.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768"
  2294 + dependencies:
  2295 + utila "~0.4"
  2296 +
2257 dom-serializer@0: 2297 dom-serializer@0:
2258 version "0.1.0" 2298 version "0.1.0"
2259 resolved "http://npm.yohops.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" 2299 resolved "http://npm.yohops.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82"
@@ -2279,12 +2319,31 @@ domelementtype@~1.1.1: @@ -2279,12 +2319,31 @@ domelementtype@~1.1.1:
2279 version "1.1.3" 2319 version "1.1.3"
2280 resolved "http://npm.yohops.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" 2320 resolved "http://npm.yohops.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b"
2281 2321
  2322 +domhandler@2.1:
  2323 + version "2.1.0"
  2324 + resolved "http://npm.yohops.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594"
  2325 + dependencies:
  2326 + domelementtype "1"
  2327 +
2282 domhandler@^2.3.0: 2328 domhandler@^2.3.0:
2283 version "2.4.2" 2329 version "2.4.2"
2284 resolved "http://npm.yohops.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" 2330 resolved "http://npm.yohops.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803"
2285 dependencies: 2331 dependencies:
2286 domelementtype "1" 2332 domelementtype "1"
2287 2333
  2334 +domutils@1.1:
  2335 + version "1.1.6"
  2336 + resolved "http://npm.yohops.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485"
  2337 + dependencies:
  2338 + domelementtype "1"
  2339 +
  2340 +domutils@1.5.1:
  2341 + version "1.5.1"
  2342 + resolved "http://npm.yohops.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf"
  2343 + dependencies:
  2344 + dom-serializer "0"
  2345 + domelementtype "1"
  2346 +
2288 domutils@^1.5.1: 2347 domutils@^1.5.1:
2289 version "1.7.0" 2348 version "1.7.0"
2290 resolved "http://npm.yohops.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" 2349 resolved "http://npm.yohops.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a"
@@ -3299,7 +3358,7 @@ hash.js@^1.0.0, hash.js@^1.0.3: @@ -3299,7 +3358,7 @@ hash.js@^1.0.0, hash.js@^1.0.3:
3299 inherits "^2.0.3" 3358 inherits "^2.0.3"
3300 minimalistic-assert "^1.0.1" 3359 minimalistic-assert "^1.0.1"
3301 3360
3302 -he@^1.1.0: 3361 +he@1.2.x, he@^1.1.0:
3303 version "1.2.0" 3362 version "1.2.0"
3304 resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" 3363 resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
3305 3364
@@ -3342,10 +3401,34 @@ html-entities@^1.2.0: @@ -3342,10 +3401,34 @@ html-entities@^1.2.0:
3342 version "1.2.1" 3401 version "1.2.1"
3343 resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" 3402 resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f"
3344 3403
  3404 +html-minifier@^3.2.3:
  3405 + version "3.5.21"
  3406 + resolved "http://npm.yohops.com/html-minifier/-/html-minifier-3.5.21.tgz#d0040e054730e354db008463593194015212d20c"
  3407 + dependencies:
  3408 + camel-case "3.0.x"
  3409 + clean-css "4.2.x"
  3410 + commander "2.17.x"
  3411 + he "1.2.x"
  3412 + param-case "2.1.x"
  3413 + relateurl "0.2.x"
  3414 + uglify-js "3.4.x"
  3415 +
3345 html-tags@^2.0.0: 3416 html-tags@^2.0.0:
3346 version "2.0.0" 3417 version "2.0.0"
3347 resolved "http://npm.yohops.com/html-tags/-/html-tags-2.0.0.tgz#10b30a386085f43cede353cc8fa7cb0deeea668b" 3418 resolved "http://npm.yohops.com/html-tags/-/html-tags-2.0.0.tgz#10b30a386085f43cede353cc8fa7cb0deeea668b"
3348 3419
  3420 +html-webpack-plugin@^3.2.0:
  3421 + version "3.2.0"
  3422 + resolved "http://npm.yohops.com/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz#b01abbd723acaaa7b37b6af4492ebda03d9dd37b"
  3423 + dependencies:
  3424 + html-minifier "^3.2.3"
  3425 + loader-utils "^0.2.16"
  3426 + lodash "^4.17.3"
  3427 + pretty-error "^2.0.2"
  3428 + tapable "^1.0.0"
  3429 + toposort "^1.0.0"
  3430 + util.promisify "1.0.0"
  3431 +
3349 htmlparser2@^3.10.0, htmlparser2@^3.9.2: 3432 htmlparser2@^3.10.0, htmlparser2@^3.9.2:
3350 version "3.10.0" 3433 version "3.10.0"
3351 resolved "http://npm.yohops.com/htmlparser2/-/htmlparser2-3.10.0.tgz#5f5e422dcf6119c0d983ed36260ce9ded0bee464" 3434 resolved "http://npm.yohops.com/htmlparser2/-/htmlparser2-3.10.0.tgz#5f5e422dcf6119c0d983ed36260ce9ded0bee464"
@@ -3357,6 +3440,15 @@ htmlparser2@^3.10.0, htmlparser2@^3.9.2: @@ -3357,6 +3440,15 @@ htmlparser2@^3.10.0, htmlparser2@^3.9.2:
3357 inherits "^2.0.1" 3440 inherits "^2.0.1"
3358 readable-stream "^3.0.6" 3441 readable-stream "^3.0.6"
3359 3442
  3443 +htmlparser2@~3.3.0:
  3444 + version "3.3.0"
  3445 + resolved "http://npm.yohops.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe"
  3446 + dependencies:
  3447 + domelementtype "1"
  3448 + domhandler "2.1"
  3449 + domutils "1.1"
  3450 + readable-stream "1.0"
  3451 +
3360 http-deceiver@^1.2.7: 3452 http-deceiver@^1.2.7:
3361 version "1.2.7" 3453 version "1.2.7"
3362 resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" 3454 resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87"
@@ -3916,6 +4008,10 @@ is-wsl@^1.1.0: @@ -3916,6 +4008,10 @@ is-wsl@^1.1.0:
3916 version "1.1.0" 4008 version "1.1.0"
3917 resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" 4009 resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d"
3918 4010
  4011 +isarray@0.0.1:
  4012 + version "0.0.1"
  4013 + resolved "http://npm.yohops.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
  4014 +
3919 isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: 4015 isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
3920 version "1.0.0" 4016 version "1.0.0"
3921 resolved "http://npm.yohops.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 4017 resolved "http://npm.yohops.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
@@ -4114,6 +4210,15 @@ loader-runner@^2.3.0: @@ -4114,6 +4210,15 @@ loader-runner@^2.3.0:
4114 version "2.3.1" 4210 version "2.3.1"
4115 resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.1.tgz#026f12fe7c3115992896ac02ba022ba92971b979" 4211 resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.1.tgz#026f12fe7c3115992896ac02ba022ba92971b979"
4116 4212
  4213 +loader-utils@^0.2.16:
  4214 + version "0.2.17"
  4215 + resolved "http://npm.yohops.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
  4216 + dependencies:
  4217 + big.js "^3.1.3"
  4218 + emojis-list "^2.0.0"
  4219 + json5 "^0.5.0"
  4220 + object-assign "^4.0.1"
  4221 +
4117 loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: 4222 loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0:
4118 version "1.1.0" 4223 version "1.1.0"
4119 resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" 4224 resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd"
@@ -4203,7 +4308,7 @@ lodash.uniq@^4.5.0: @@ -4203,7 +4308,7 @@ lodash.uniq@^4.5.0:
4203 version "4.5.0" 4308 version "4.5.0"
4204 resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" 4309 resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
4205 4310
4206 -lodash@^4.0.0, lodash@^4.13.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5, lodash@~4.17.10: 4311 +lodash@^4.0.0, lodash@^4.13.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@~4.17.10:
4207 version "4.17.11" 4312 version "4.17.11"
4208 resolved "http://npm.yohops.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" 4313 resolved "http://npm.yohops.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d"
4209 4314
@@ -4256,6 +4361,10 @@ loud-rejection@^1.0.0: @@ -4256,6 +4361,10 @@ loud-rejection@^1.0.0:
4256 currently-unhandled "^0.4.1" 4361 currently-unhandled "^0.4.1"
4257 signal-exit "^3.0.0" 4362 signal-exit "^3.0.0"
4258 4363
  4364 +lower-case@^1.1.1:
  4365 + version "1.1.4"
  4366 + resolved "http://npm.yohops.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac"
  4367 +
4259 lowercase-keys@^1.0.0: 4368 lowercase-keys@^1.0.0:
4260 version "1.0.0" 4369 version "1.0.0"
4261 resolved "http://npm.yohops.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" 4370 resolved "http://npm.yohops.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306"
@@ -4677,6 +4786,12 @@ nice-try@^1.0.4: @@ -4677,6 +4786,12 @@ nice-try@^1.0.4:
4677 version "1.0.5" 4786 version "1.0.5"
4678 resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 4787 resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
4679 4788
  4789 +no-case@^2.2.0:
  4790 + version "2.3.2"
  4791 + resolved "http://npm.yohops.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac"
  4792 + dependencies:
  4793 + lower-case "^1.1.1"
  4794 +
4680 node-forge@0.7.5: 4795 node-forge@0.7.5:
4681 version "0.7.5" 4796 version "0.7.5"
4682 resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" 4797 resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df"
@@ -4781,6 +4896,13 @@ node-sass@^4.11.0: @@ -4781,6 +4896,13 @@ node-sass@^4.11.0:
4781 stdout-stream "^1.4.0" 4896 stdout-stream "^1.4.0"
4782 "true-case-path" "^1.0.2" 4897 "true-case-path" "^1.0.2"
4783 4898
  4899 +node-zookeeper-client@^0.2.2:
  4900 + version "0.2.3"
  4901 + resolved "http://npm.yohops.com/node-zookeeper-client/-/node-zookeeper-client-0.2.3.tgz#48c79129c56b8e898df9bd3bdad9e27dcad63851"
  4902 + dependencies:
  4903 + async "~0.2.7"
  4904 + underscore "~1.4.4"
  4905 +
4784 nodemon@^1.18.8: 4906 nodemon@^1.18.8:
4785 version "1.18.8" 4907 version "1.18.8"
4786 resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-1.18.8.tgz#eb4c0052dc81395bdc503f3c8ae3cba86ca7146a" 4908 resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-1.18.8.tgz#eb4c0052dc81395bdc503f3c8ae3cba86ca7146a"
@@ -4864,6 +4986,12 @@ npm-run-path@^2.0.0: @@ -4864,6 +4986,12 @@ npm-run-path@^2.0.0:
4864 gauge "~2.7.3" 4986 gauge "~2.7.3"
4865 set-blocking "~2.0.0" 4987 set-blocking "~2.0.0"
4866 4988
  4989 +nth-check@~1.0.1:
  4990 + version "1.0.2"
  4991 + resolved "http://npm.yohops.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c"
  4992 + dependencies:
  4993 + boolbase "~1.0.0"
  4994 +
4867 num2fraction@^1.2.2: 4995 num2fraction@^1.2.2:
4868 version "1.2.2" 4996 version "1.2.2"
4869 resolved "http://npm.yohops.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" 4997 resolved "http://npm.yohops.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede"
@@ -5077,6 +5205,12 @@ parallel-transform@^1.1.0: @@ -5077,6 +5205,12 @@ parallel-transform@^1.1.0:
5077 inherits "^2.0.3" 5205 inherits "^2.0.3"
5078 readable-stream "^2.1.5" 5206 readable-stream "^2.1.5"
5079 5207
  5208 +param-case@2.1.x:
  5209 + version "2.1.1"
  5210 + resolved "http://npm.yohops.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247"
  5211 + dependencies:
  5212 + no-case "^2.2.0"
  5213 +
5080 parse-asn1@^5.0.0: 5214 parse-asn1@^5.0.0:
5081 version "5.1.1" 5215 version "5.1.1"
5082 resolved "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8" 5216 resolved "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8"
@@ -5447,6 +5581,13 @@ prettier@1.13.7: @@ -5447,6 +5581,13 @@ prettier@1.13.7:
5447 version "1.13.7" 5581 version "1.13.7"
5448 resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.13.7.tgz#850f3b8af784a49a6ea2d2eaa7ed1428a34b7281" 5582 resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.13.7.tgz#850f3b8af784a49a6ea2d2eaa7ed1428a34b7281"
5449 5583
  5584 +pretty-error@^2.0.2:
  5585 + version "2.1.1"
  5586 + resolved "http://npm.yohops.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3"
  5587 + dependencies:
  5588 + renderkid "^2.0.1"
  5589 + utila "~0.4"
  5590 +
5450 private@^0.1.6: 5591 private@^0.1.6:
5451 version "0.1.8" 5592 version "0.1.8"
5452 resolved "http://npm.yohops.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" 5593 resolved "http://npm.yohops.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
@@ -5653,6 +5794,15 @@ read-pkg@^4.0.1: @@ -5653,6 +5794,15 @@ read-pkg@^4.0.1:
5653 string_decoder "~1.1.1" 5794 string_decoder "~1.1.1"
5654 util-deprecate "~1.0.1" 5795 util-deprecate "~1.0.1"
5655 5796
  5797 +readable-stream@1.0:
  5798 + version "1.0.34"
  5799 + resolved "http://npm.yohops.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c"
  5800 + dependencies:
  5801 + core-util-is "~1.0.0"
  5802 + inherits "~2.0.1"
  5803 + isarray "0.0.1"
  5804 + string_decoder "~0.10.x"
  5805 +
5656 readable-stream@^2.0.2, readable-stream@^2.0.6: 5806 readable-stream@^2.0.2, readable-stream@^2.0.6:
5657 version "2.3.4" 5807 version "2.3.4"
5658 resolved "http://npm.yohops.com/readable-stream/-/readable-stream-2.3.4.tgz#c946c3f47fa7d8eabc0b6150f4a12f69a4574071" 5808 resolved "http://npm.yohops.com/readable-stream/-/readable-stream-2.3.4.tgz#c946c3f47fa7d8eabc0b6150f4a12f69a4574071"
@@ -5805,6 +5955,10 @@ regjsparser@^0.6.0: @@ -5805,6 +5955,10 @@ regjsparser@^0.6.0:
5805 dependencies: 5955 dependencies:
5806 jsesc "~0.5.0" 5956 jsesc "~0.5.0"
5807 5957
  5958 +relateurl@0.2.x:
  5959 + version "0.2.7"
  5960 + resolved "http://npm.yohops.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
  5961 +
5808 remark-parse@^5.0.0: 5962 remark-parse@^5.0.0:
5809 version "5.0.0" 5963 version "5.0.0"
5810 resolved "http://npm.yohops.com/remark-parse/-/remark-parse-5.0.0.tgz#4c077f9e499044d1d5c13f80d7a98cf7b9285d95" 5964 resolved "http://npm.yohops.com/remark-parse/-/remark-parse-5.0.0.tgz#4c077f9e499044d1d5c13f80d7a98cf7b9285d95"
@@ -5856,6 +6010,16 @@ remove-trailing-separator@^1.0.1: @@ -5856,6 +6010,16 @@ remove-trailing-separator@^1.0.1:
5856 version "1.1.0" 6010 version "1.1.0"
5857 resolved "http://npm.yohops.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" 6011 resolved "http://npm.yohops.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
5858 6012
  6013 +renderkid@^2.0.1:
  6014 + version "2.0.2"
  6015 + resolved "http://npm.yohops.com/renderkid/-/renderkid-2.0.2.tgz#12d310f255360c07ad8fde253f6c9e9de372d2aa"
  6016 + dependencies:
  6017 + css-select "^1.1.0"
  6018 + dom-converter "~0.2"
  6019 + htmlparser2 "~3.3.0"
  6020 + strip-ansi "^3.0.0"
  6021 + utila "^0.4.0"
  6022 +
5859 repeat-element@^1.1.2: 6023 repeat-element@^1.1.2:
5860 version "1.1.2" 6024 version "1.1.2"
5861 resolved "http://npm.yohops.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" 6025 resolved "http://npm.yohops.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a"
@@ -6376,7 +6540,7 @@ source-map@^0.5.0, source-map@^0.5.6: @@ -6376,7 +6540,7 @@ source-map@^0.5.0, source-map@^0.5.6:
6376 version "0.5.7" 6540 version "0.5.7"
6377 resolved "http://npm.yohops.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 6541 resolved "http://npm.yohops.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
6378 6542
6379 -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: 6543 +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1:
6380 version "0.6.1" 6544 version "0.6.1"
6381 resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 6545 resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
6382 6546
@@ -6559,6 +6723,10 @@ string_decoder@^1.0.0, string_decoder@^1.1.1: @@ -6559,6 +6723,10 @@ string_decoder@^1.0.0, string_decoder@^1.1.1:
6559 dependencies: 6723 dependencies:
6560 safe-buffer "~5.1.0" 6724 safe-buffer "~5.1.0"
6561 6725
  6726 +string_decoder@~0.10.x:
  6727 + version "0.10.31"
  6728 + resolved "http://npm.yohops.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
  6729 +
6562 string_decoder@~1.0.3: 6730 string_decoder@~1.0.3:
6563 version "1.0.3" 6731 version "1.0.3"
6564 resolved "http://npm.yohops.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" 6732 resolved "http://npm.yohops.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab"
@@ -6881,6 +7049,10 @@ toidentifier@1.0.0: @@ -6881,6 +7049,10 @@ toidentifier@1.0.0:
6881 version "1.0.0" 7049 version "1.0.0"
6882 resolved "http://npm.yohops.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" 7050 resolved "http://npm.yohops.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553"
6883 7051
  7052 +toposort@^1.0.0:
  7053 + version "1.0.7"
  7054 + resolved "http://npm.yohops.com/toposort/-/toposort-1.0.7.tgz#2e68442d9f64ec720b8cc89e6443ac6caa950029"
  7055 +
6884 touch@^3.1.0: 7056 touch@^3.1.0:
6885 version "3.1.0" 7057 version "3.1.0"
6886 resolved "http://npm.yohops.com/touch/-/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b" 7058 resolved "http://npm.yohops.com/touch/-/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b"
@@ -6981,7 +7153,7 @@ uglify-es@^3.3.4: @@ -6981,7 +7153,7 @@ uglify-es@^3.3.4:
6981 commander "~2.14.1" 7153 commander "~2.14.1"
6982 source-map "~0.6.1" 7154 source-map "~0.6.1"
6983 7155
6984 -uglify-js@^3.0.0, uglify-js@^3.1.4: 7156 +uglify-js@3.4.x, uglify-js@^3.0.0, uglify-js@^3.1.4:
6985 version "3.4.9" 7157 version "3.4.9"
6986 resolved "http://npm.yohops.com/uglify-js/-/uglify-js-3.4.9.tgz#af02f180c1207d76432e473ed24a28f4a782bae3" 7158 resolved "http://npm.yohops.com/uglify-js/-/uglify-js-3.4.9.tgz#af02f180c1207d76432e473ed24a28f4a782bae3"
6987 dependencies: 7159 dependencies:
@@ -7026,6 +7198,10 @@ undefsafe@^2.0.2: @@ -7026,6 +7198,10 @@ undefsafe@^2.0.2:
7026 dependencies: 7198 dependencies:
7027 debug "^2.2.0" 7199 debug "^2.2.0"
7028 7200
  7201 +underscore@~1.4.4:
  7202 + version "1.4.4"
  7203 + resolved "http://npm.yohops.com/underscore/-/underscore-1.4.4.tgz#61a6a32010622afa07963bf325203cf12239d604"
  7204 +
7029 unherit@^1.0.4: 7205 unherit@^1.0.4:
7030 version "1.1.1" 7206 version "1.1.1"
7031 resolved "http://npm.yohops.com/unherit/-/unherit-1.1.1.tgz#132748da3e88eab767e08fabfbb89c5e9d28628c" 7207 resolved "http://npm.yohops.com/unherit/-/unherit-1.1.1.tgz#132748da3e88eab767e08fabfbb89c5e9d28628c"
@@ -7160,6 +7336,10 @@ update-notifier@^2.5.0: @@ -7160,6 +7336,10 @@ update-notifier@^2.5.0:
7160 semver-diff "^2.0.0" 7336 semver-diff "^2.0.0"
7161 xdg-basedir "^3.0.0" 7337 xdg-basedir "^3.0.0"
7162 7338
  7339 +upper-case@^1.1.1:
  7340 + version "1.1.3"
  7341 + resolved "http://npm.yohops.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598"
  7342 +
7163 uri-js@^4.2.2: 7343 uri-js@^4.2.2:
7164 version "4.2.2" 7344 version "4.2.2"
7165 resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" 7345 resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0"
@@ -7210,7 +7390,7 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: @@ -7210,7 +7390,7 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1:
7210 version "1.0.2" 7390 version "1.0.2"
7211 resolved "http://npm.yohops.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 7391 resolved "http://npm.yohops.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
7212 7392
7213 -util.promisify@^1.0.0: 7393 +util.promisify@1.0.0, util.promisify@^1.0.0:
7214 version "1.0.0" 7394 version "1.0.0"
7215 resolved "http://npm.yohops.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" 7395 resolved "http://npm.yohops.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030"
7216 dependencies: 7396 dependencies:
@@ -7229,6 +7409,10 @@ util@^0.10.3: @@ -7229,6 +7409,10 @@ util@^0.10.3:
7229 dependencies: 7409 dependencies:
7230 inherits "2.0.3" 7410 inherits "2.0.3"
7231 7411
  7412 +utila@^0.4.0, utila@~0.4:
  7413 + version "0.4.0"
  7414 + resolved "http://npm.yohops.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c"
  7415 +
7232 utils-merge@1.0.0: 7416 utils-merge@1.0.0:
7233 version "1.0.0" 7417 version "1.0.0"
7234 resolved "http://npm.yohops.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" 7418 resolved "http://npm.yohops.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8"
@@ -7835,3 +8019,9 @@ yoho-qs@^1.0.1: @@ -7835,3 +8019,9 @@ yoho-qs@^1.0.1:
7835 yoho-store@^1.3.20: 8019 yoho-store@^1.3.20:
7836 version "1.3.20" 8020 version "1.3.20"
7837 resolved "http://npm.yohops.com/yoho-store/-/yoho-store-1.3.20.tgz#bebf6c383720f12a527eab139cf6f8e6886ae721" 8021 resolved "http://npm.yohops.com/yoho-store/-/yoho-store-1.3.20.tgz#bebf6c383720f12a527eab139cf6f8e6886ae721"
  8022 +
  8023 +yoho-zookeeper@^1.0.11:
  8024 + version "1.0.11"
  8025 + resolved "http://npm.yohops.com/yoho-zookeeper/-/yoho-zookeeper-1.0.11.tgz#a4fe2a7176de91971be4f03c9552720b93a9ffe3"
  8026 + dependencies:
  8027 + node-zookeeper-client "^0.2.2"