From 47208b7f660450c45e0ee1dad094a098f6821881 Mon Sep 17 00:00:00 2001 From: Alex Grintsvayg Date: Mon, 30 Oct 2017 15:34:00 -0400 Subject: [PATCH 01/14] simplify check for initial claim. fix #290 --- ui/js/rewards.js | 53 ++---------------------------------------------- 1 file changed, 2 insertions(+), 51 deletions(-) diff --git a/ui/js/rewards.js b/ui/js/rewards.js index 0a3475246..2c8eae8a2 100644 --- a/ui/js/rewards.js +++ b/ui/js/rewards.js @@ -1,4 +1,3 @@ -const hashes = require("jshashes"); import lbry from "lbry"; import lbryio from "lbryio"; import { doShowSnackBar } from "actions/app"; @@ -37,54 +36,6 @@ function rewardMessage(type, amount) { }[type]; } -function toHex(s) { - let h = ""; - for (var i = 0; i < s.length; i++) { - let c = s.charCodeAt(i).toString(16); - if (c.length < 2) { - c = "0".concat(c); - } - h += c; - } - return h; -} - -function fromHex(h) { - let s = ""; - for (let i = 0; i < h.length; i += 2) { - s += String.fromCharCode(parseInt(h.substr(i, 2), 16)); - } - return s; -} - -function reverseString(s) { - let o = ""; - for (let i = s.length - 1; i >= 0; i--) { - o += s[i]; - } - return o; -} - -function pack(num) { - return ( - "" + - String.fromCharCode(num & 0xff) + - String.fromCharCode((num >> 8) & 0xff) + - String.fromCharCode((num >> 16) & 0xff) + - String.fromCharCode((num >> 24) & 0xff) - ); -} - -// Returns true if claim is an initial claim, false if it's an update to an existing claim -function isInitialClaim(claim) { - const reversed = reverseString(fromHex(claim.txid)); - const concat = reversed.concat(pack(claim.nout)); - const sha256 = new hashes.SHA256({ utf8: false }).raw(concat); - const ripemd160 = new hashes.RMD160({ utf8: false }).raw(sha256); - const hash = toHex(reverseString(ripemd160)); - return hash == claim.claim_id; -} - const rewards = {}; rewards.TYPE_NEW_DEVELOPER = "new_developer"; @@ -149,7 +100,7 @@ rewards.claimReward = function(type) { claim.name.length && claim.name[0] == "@" && claim.txid.length && - isInitialClaim(claim) + claim.category == "claim" ); }); if (claim) { @@ -173,7 +124,7 @@ rewards.claimReward = function(type) { claim.name.length && claim.name[0] != "@" && claim.txid.length && - isInitialClaim(claim) + claim.category == "claim" ); }); if (claim) { From 76b21801ab263a87cd40a463aae1f7b99c57fcc6 Mon Sep 17 00:00:00 2001 From: Alex Grintsvayg Date: Mon, 30 Oct 2017 17:37:57 -0400 Subject: [PATCH 02/14] changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ca0ac67d6..a2d30638e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ Web UI version numbers should always match the corresponding version of LBRY App ### Fixed * Fixed console errors on settings page related to improper React input properties. + * Fixed bug that prevented new channel reward from being claimed (#290) ### Deprecated * From db064895434a9231524c8413f88447b60e899193 Mon Sep 17 00:00:00 2001 From: Thomas Zarebczan Date: Mon, 30 Oct 2017 17:46:53 -0400 Subject: [PATCH 03/14] update to include first publish also update to include first publish also --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a2d30638e..67c51e3b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,7 +18,7 @@ Web UI version numbers should always match the corresponding version of LBRY App ### Fixed * Fixed console errors on settings page related to improper React input properties. - * Fixed bug that prevented new channel reward from being claimed (#290) + * Fixed bug that prevented new channel and first publish rewards from being claimed (#290) ### Deprecated * From 41174bcb30a57c2f8ae187b1bb6b85ae59feecf4 Mon Sep 17 00:00:00 2001 From: Alex Grintsvayg Date: Tue, 31 Oct 2017 09:48:07 -0400 Subject: [PATCH 04/14] fix build version hash length --- build/upload_assets.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/upload_assets.py b/build/upload_assets.py index bc702b26b..c20e28344 100644 --- a/build/upload_assets.py +++ b/build/upload_assets.py @@ -29,7 +29,7 @@ def get_asset_filename(): def upload_to_s3(folder): - tag = subprocess.check_output(['git', 'describe', '--always', 'HEAD']).strip() + tag = subprocess.check_output(['git', 'describe', '--always', '--abbrev=8', ''HEAD']).strip() commit_date = subprocess.check_output([ 'git', 'show', '-s', '--format=%cd', '--date=format:%Y%m%d-%H%I%S', 'HEAD']).strip() From 556b5f5e9636cd137d30b30930b68eefd204d5fd Mon Sep 17 00:00:00 2001 From: Alex Grintsvayg Date: Tue, 31 Oct 2017 11:15:41 -0400 Subject: [PATCH 05/14] typo --- build/upload_assets.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/upload_assets.py b/build/upload_assets.py index c20e28344..ed40c9ec7 100644 --- a/build/upload_assets.py +++ b/build/upload_assets.py @@ -29,7 +29,7 @@ def get_asset_filename(): def upload_to_s3(folder): - tag = subprocess.check_output(['git', 'describe', '--always', '--abbrev=8', ''HEAD']).strip() + tag = subprocess.check_output(['git', 'describe', '--always', '--abbrev=8', 'HEAD']).strip() commit_date = subprocess.check_output([ 'git', 'show', '-s', '--format=%cd', '--date=format:%Y%m%d-%H%I%S', 'HEAD']).strip() From 567bb17c6336744e9a2f2d40457e68eb4e47877b Mon Sep 17 00:00:00 2001 From: Alex Grintsvayg Date: Tue, 31 Oct 2017 14:23:03 -0400 Subject: [PATCH 06/14] wget required --- build/prebuild.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/prebuild.sh b/build/prebuild.sh index 568c93c59..16f4e4d19 100755 --- a/build/prebuild.sh +++ b/build/prebuild.sh @@ -41,7 +41,7 @@ set -eu if $LINUX; then INSTALL="$SUDO apt-get install --no-install-recommends -y" - $INSTALL build-essential libssl-dev libffi-dev libgmp3-dev python2.7-dev libsecret-1-dev + $INSTALL build-essential libssl-dev libffi-dev libgmp3-dev python2.7-dev libsecret-1-dev wget elif $OSX && ! cmd_exists brew ; then /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" fi From c33b7df732f0481d6f0bfb1c000038abf63b91bf Mon Sep 17 00:00:00 2001 From: Jeremy Kauffman Date: Tue, 7 Nov 2017 09:35:49 -0500 Subject: [PATCH 07/14] increase modal width by 20px, fixes #709 --- ui/js/modal/modalCreditIntro/view.jsx | 3 +-- ui/scss/_vars.scss | 1 + ui/scss/component/_modal.scss | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ui/js/modal/modalCreditIntro/view.jsx b/ui/js/modal/modalCreditIntro/view.jsx index 9675ba275..73604985d 100644 --- a/ui/js/modal/modalCreditIntro/view.jsx +++ b/ui/js/modal/modalCreditIntro/view.jsx @@ -4,8 +4,7 @@ import { CreditAmount, CurrencySymbol } from "component/common"; import Link from "component/link/index"; const ModalCreditIntro = props => { - const { closeModal, currentBalance, totalRewardValue, verifyAccount } = props; - + const { closeModal, totalRewardValue, verifyAccount } = props; const totalRewardRounded = Math.round(totalRewardValue / 10) * 10; return ( diff --git a/ui/scss/_vars.scss b/ui/scss/_vars.scss index b7c3a9057..44c6087aa 100644 --- a/ui/scss/_vars.scss +++ b/ui/scss/_vars.scss @@ -128,6 +128,7 @@ $text-color: #000; --card-small-width: $spacing-vertical * 10; /* Modal */ + --modal-width: 420px; --modal-bg: var(--color-bg); --modal-overlay-bg: rgba(#F5F5F5, 0.75); // --color-canvas: #F5F5F5 --modal-border: 1px solid rgb(204, 204, 204); diff --git a/ui/scss/component/_modal.scss b/ui/scss/component/_modal.scss index cb664e4c1..26fa408df 100644 --- a/ui/scss/component/_modal.scss +++ b/ui/scss/component/_modal.scss @@ -29,7 +29,7 @@ border-radius: 4px; padding: $spacing-vertical; box-shadow: var(--box-shadow-layer); - max-width: 400px; + max-width: var(--modal-width); word-break: break-word; } @@ -70,13 +70,13 @@ .error-modal { max-width: none; - width: 400px; + width: var(--modal-width); } .error-modal__error-list { /*shitty hack/temp fix for long errors making modal unusable*/ border: 1px solid var(--input-border-color); padding: 8px; list-style: none; max-height: 400px; - max-width: 400px; + max-width: var(--modal-width); overflow-y: hidden; } From f9e419adb9ca136c8eebfd4e40318503aa96c5ab Mon Sep 17 00:00:00 2001 From: Jeremy Kauffman Date: Tue, 7 Nov 2017 09:36:22 -0500 Subject: [PATCH 08/14] add changelog for previous commit --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 67c51e3b4..c765e1cea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ Web UI version numbers should always match the corresponding version of LBRY App ### Fixed * Fixed console errors on settings page related to improper React input properties. + * Fixed modals being too narrow after font change (#709) * Fixed bug that prevented new channel and first publish rewards from being claimed (#290) ### Deprecated From 7ee84b6ae9222d5161588612fc6aaf56890e93a3 Mon Sep 17 00:00:00 2001 From: Josh Finer Date: Tue, 7 Nov 2017 10:29:11 -0500 Subject: [PATCH 09/14] Update view.jsx loading message update --- ui/js/component/video/view.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/js/component/video/view.jsx b/ui/js/component/video/view.jsx index fb1bd3420..31f0d9e23 100644 --- a/ui/js/component/video/view.jsx +++ b/ui/js/component/video/view.jsx @@ -74,7 +74,7 @@ class Video extends React.PureComponent { ); } else if (isLoading) { loadStatusMessage = __( - "Requesting stream... it may sit here for like 15-20 seconds in a really awkward way... we're working on it" + "Requesting stream..." ); } else if (isDownloading) { loadStatusMessage = __("Downloading stream... not long left now!"); From f14884d8a0bfdeb19470d0a7b23c87b5d8773c36 Mon Sep 17 00:00:00 2001 From: Alex Grintsvayg Date: Tue, 7 Nov 2017 12:43:31 -0500 Subject: [PATCH 10/14] categories are in order these days --- ui/js/actions/content.js | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/ui/js/actions/content.js b/ui/js/actions/content.js index b9891751a..a87e39e2e 100644 --- a/ui/js/actions/content.js +++ b/ui/js/actions/content.js @@ -78,25 +78,18 @@ export function doFetchFeaturedUris() { type: types.FETCH_FEATURED_CONTENT_STARTED, }); - const success = ({ Categories, Uris }) => { - let featuredUris = {}; + const success = ({ Uris }) => { let urisToResolve = []; - Categories.forEach(category => { - if (Uris[category] && Uris[category].length) { - const uris = Uris[category]; - - featuredUris[category] = uris; - urisToResolve = [...urisToResolve, ...uris]; - } - }); + for (let category in Uris) { + urisToResolve = [...urisToResolve, ...Uris[category]]; + } const actions = [ doResolveUris(urisToResolve), { type: types.FETCH_FEATURED_CONTENT_COMPLETED, data: { - categories: Categories, - uris: featuredUris, + uris: Uris, success: true, }, }, @@ -108,15 +101,12 @@ export function doFetchFeaturedUris() { dispatch({ type: types.FETCH_FEATURED_CONTENT_COMPLETED, data: { - categories: [], uris: {}, }, }); }; - lbryio - .call("file", "list_homepage", { version: "early-access" }) - .then(success, failure); + lbryio.call("file", "list_homepage").then(success, failure); }; } From f877ac39f8fe1034a8cf2d0e3d4ba11b64175d60 Mon Sep 17 00:00:00 2001 From: Sean Yesmunt Date: Tue, 7 Nov 2017 19:54:22 -0800 Subject: [PATCH 11/14] merge common webpack configs --- ui/package.json | 3 +- ui/watch.sh | 4 +- ui/webpack.common.js | 55 ++++++ ui/webpack.dev.js | 22 +++ ui/webpack.prod.js | 11 ++ ui/yarn.lock | 426 ++++++++++++++++++++++++++++++++++++------- 6 files changed, 456 insertions(+), 65 deletions(-) create mode 100644 ui/webpack.common.js create mode 100644 ui/webpack.dev.js create mode 100644 ui/webpack.prod.js diff --git a/ui/package.json b/ui/package.json index 8b820fb0d..93b023d35 100644 --- a/ui/package.json +++ b/ui/package.json @@ -70,8 +70,9 @@ "node-loader": "^0.6.0", "prettier": "^1.4.2", "style-loader": "^0.18.2", - "webpack": "^2.6.1", + "webpack": "^3.0.0", "webpack-dev-server": "^2.4.4", + "webpack-merge": "^4.1.1", "webpack-notifier": "^1.5.0", "webpack-target-electron-renderer": "^0.4.0" }, diff --git a/ui/watch.sh b/ui/watch.sh index 6a60eb10c..e7092699d 100755 --- a/ui/watch.sh +++ b/ui/watch.sh @@ -21,5 +21,5 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" node_modules/.bin/node-sass --output $DIR/../app/dist/css --sourcemap=none $DIR/scss/ node_modules/.bin/node-sass --output $DIR/../app/dist/css --sourcemap=none --watch $DIR/scss/ & - node_modules/.bin/webpack --config webpack.dev.config.js --progress --colors --watch -) + node_modules/.bin/webpack --config webpack.dev.js --progress --colors --watch +) \ No newline at end of file diff --git a/ui/webpack.common.js b/ui/webpack.common.js new file mode 100644 index 000000000..d2d7e0719 --- /dev/null +++ b/ui/webpack.common.js @@ -0,0 +1,55 @@ +const path = require("path"); +const webpack = require("webpack") +const appPath = path.resolve(__dirname, "js"); + +process.traceDeprecation = true; + +const PATHS = { + app: path.join(__dirname, "app"), + dist: path.join(__dirname, "dist") +}; + +module.exports = { + entry: ["babel-polyfill", "./js/main.js"], + output: { + path: path.join(PATHS.dist, "js"), + publicPath: "/js/", + filename: "bundle.js" + }, + resolve: { + modules: [appPath, "node_modules"], + extensions: [".js", ".jsx", ".css"] + }, + module: { + rules: [ + { + test: /\.jsx?$/, + enforce: "pre", + loaders: ["eslint"], + // define an include so we check just the files we need + include: PATHS.app + }, + { + test: /\.node$/, + use: ["node-loader"] + }, + { + test: /\.css$/, + use: ["style-loader", "css-loader"] + }, + { + test: /\.jsx?$/, + exclude: /node_modules/, + use: { + loader: "babel-loader", + options: { + cacheDirectory: true, + presets: [ "es2015", "react", "stage-2" ] + } + } + } + ] + }, + target: "electron-main", +}; + diff --git a/ui/webpack.dev.js b/ui/webpack.dev.js new file mode 100644 index 000000000..073dfdc23 --- /dev/null +++ b/ui/webpack.dev.js @@ -0,0 +1,22 @@ +const path = require("path"); +const webpack = require("webpack") +const WebpackNotifierPlugin = require("webpack-notifier") +const merge = require('webpack-merge'); +const common = require('./webpack.common.js'); + +module.exports = merge(common, { + output: { + pathinfo: true + }, + cache: true, + devtool: "eval", + plugins: [ + new WebpackNotifierPlugin(), + new webpack.DefinePlugin({ + ENV: JSON.stringify("development"), + }), + new webpack.LoaderOptionsPlugin({ + debug: true + }) + ] +}); \ No newline at end of file diff --git a/ui/webpack.prod.js b/ui/webpack.prod.js new file mode 100644 index 000000000..142f6bbfb --- /dev/null +++ b/ui/webpack.prod.js @@ -0,0 +1,11 @@ +const webpack = require("webpack") +const merge = require('webpack-merge'); +const common = require('./webpack.common.js'); + +module.exports = merge(common, { + plugins: [ + new webpack.DefinePlugin({ + ENV: JSON.stringify("production") + }) + ] +}); diff --git a/ui/yarn.lock b/ui/yarn.lock index 63f3c02d8..47ed8fe93 100644 --- a/ui/yarn.lock +++ b/ui/yarn.lock @@ -41,10 +41,14 @@ acorn@^5.0.0, acorn@^5.0.1: version "5.0.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.0.3.tgz#c460df08491463f028ccb82eab3730bf01087b3d" -ajv-keywords@^1.0.0, ajv-keywords@^1.1.1: +ajv-keywords@^1.0.0: version "1.5.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" +ajv-keywords@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" + ajv@^4.7.0, ajv@^4.9.1: version "4.11.8" resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" @@ -61,6 +65,15 @@ ajv@^5.0.0: json-schema-traverse "^0.3.0" json-stable-stringify "^1.0.1" +ajv@^5.1.5: + version "5.3.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.3.0.tgz#4414ff74a50879c208ee5fdc826e32c303549eda" + dependencies: + co "^4.6.0" + fast-deep-equal "^1.0.0" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.3.0" + align-text@^0.1.1, align-text@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" @@ -116,6 +129,10 @@ aproba@^1.0.3: version "1.1.2" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1" +aproba@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + are-we-there-yet@~1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" @@ -966,6 +983,10 @@ block-stream@*: dependencies: inherits "~2.0.0" +bluebird@^3.5.0: + version "3.5.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" + bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.7" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.7.tgz#ddb048e50d9482790094c13eb3fcfc833ce7ab46" @@ -1098,6 +1119,24 @@ bytes@2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.3.0.tgz#d5b680a165b6201739acb611542aabc2d8ceb070" +cacache@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.0.tgz#3bba88bf62b0773fd9a691605f60c9d3c595e853" + dependencies: + bluebird "^3.5.0" + chownr "^1.0.1" + glob "^7.1.2" + graceful-fs "^4.1.11" + lru-cache "^4.1.1" + mississippi "^1.3.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.1" + ssri "^5.0.0" + unique-filename "^1.1.0" + y18n "^3.2.1" + caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" @@ -1127,6 +1166,10 @@ camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" +camelcase@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" + caniuse-api@^1.5.2: version "1.6.1" resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c" @@ -1168,7 +1211,7 @@ chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chokidar@^1.0.0, chokidar@^1.4.3, chokidar@^1.6.0, chokidar@^1.6.1: +chokidar@^1.0.0, chokidar@^1.6.0, chokidar@^1.6.1, chokidar@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" dependencies: @@ -1183,6 +1226,10 @@ chokidar@^1.0.0, chokidar@^1.4.3, chokidar@^1.6.0, chokidar@^1.6.1: optionalDependencies: fsevents "^1.0.0" +chownr@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" + ci-info@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.0.0.tgz#dc5285f2b4e251821683681c381c3388f46ec534" @@ -1347,6 +1394,10 @@ commander@^2.5.0, commander@^2.8.1, commander@^2.9.0: dependencies: graceful-readlink ">= 1.0.0" +commander@~2.11.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" + commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" @@ -1404,7 +1455,7 @@ concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" -concat-stream@^1.5.2: +concat-stream@^1.5.0, concat-stream@^1.5.2: version "1.6.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" dependencies: @@ -1454,6 +1505,17 @@ cookie@0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" +copy-concurrently@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + dependencies: + aproba "^1.1.1" + fs-write-stream-atomic "^1.0.8" + iferr "^0.1.5" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.0" + core-js@^1.0.0: version "1.2.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" @@ -1644,6 +1706,10 @@ currently-unhandled@^0.4.1: dependencies: array-find-index "^1.0.1" +cyclist@~0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" + d@1: version "1.0.0" resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" @@ -1823,6 +1889,15 @@ domain-browser@^1.1.1: version "1.1.7" resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" +duplexify@^3.1.2, duplexify@^3.4.2: + version "3.5.1" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.1.tgz#4e1516be68838bc90a49994f0b39a6e5960befcd" + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + ecc-jsbn@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" @@ -1885,20 +1960,20 @@ encoding@0.1.12, encoding@^0.1.11: dependencies: iconv-lite "~0.4.13" -end-of-stream@^1.1.0: +end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.0" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.0.tgz#7a90d833efda6cfa6eac0f4949dbb0fad3a63206" dependencies: once "^1.4.0" -enhanced-resolve@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.1.0.tgz#9f4b626f577245edcf4b2ad83d86e17f4f421dec" +enhanced-resolve@^3.4.0: + version "3.4.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e" dependencies: graceful-fs "^4.1.2" memory-fs "^0.4.0" object-assign "^4.0.1" - tapable "^0.2.5" + tapable "^0.2.7" enhanced-resolve@~0.9.0: version "0.9.1" @@ -1919,7 +1994,7 @@ envify@^3.0.0: jstransform "^11.0.3" through "~2.3.4" -errno@^0.1.3: +errno@^0.1.3, errno@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.4.tgz#b896e23a9e5e8ba33871fc996abd3635fc9a1c7d" dependencies: @@ -2312,6 +2387,14 @@ fast-deep-equal@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-0.1.0.tgz#5c6f4599aba6b333ee3342e2ed978672f1001f8d" +fast-deep-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" + +fast-json-stable-stringify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" + fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" @@ -2440,6 +2523,13 @@ flatten@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" +flush-write-stream@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.2.tgz#c81b90d8746766f1a609a46809946c45dd8ae417" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.4" + for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -2474,7 +2564,7 @@ fresh@0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e" -from2@^2.3.0: +from2@^2.1.0, from2@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" dependencies: @@ -2501,6 +2591,15 @@ fs-readdir-recursive@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz#8cd1745c8b4f8a29c8caec392476921ba195f560" +fs-write-stream-atomic@^1.0.8: + version "1.0.10" + resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + dependencies: + graceful-fs "^4.1.2" + iferr "^0.1.5" + imurmurhash "^0.1.4" + readable-stream "1 || 2" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -2609,7 +2708,7 @@ glob@^5.0.15: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@~7.1.1: +glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@~7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -2653,7 +2752,7 @@ globule@^1.0.0: lodash "~4.17.4" minimatch "~3.0.2" -graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6: +graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" @@ -2847,6 +2946,10 @@ ieee754@^1.1.4: version "1.1.8" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" +iferr@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + ignore@^3.2.0: version "3.3.3" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d" @@ -3411,7 +3514,7 @@ loader-runner@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" -loader-utils@^0.2.11, loader-utils@^0.2.16: +loader-utils@^0.2.11: version "0.2.17" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" dependencies: @@ -3420,7 +3523,7 @@ loader-utils@^0.2.11, loader-utils@^0.2.16: json5 "^0.5.0" object-assign "^4.0.1" -loader-utils@^1.0.2: +loader-utils@^1.0.2, loader-utils@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" dependencies: @@ -3604,7 +3707,7 @@ loud-rejection@^1.0.0: currently-unhandled "^0.4.1" signal-exit "^3.0.0" -lru-cache@^4.0.1: +lru-cache@^4.0.1, lru-cache@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" dependencies: @@ -3663,6 +3766,12 @@ mediasource@^2.0.0, mediasource@^2.1.0: readable-stream "^2.0.5" to-arraybuffer "^1.0.1" +mem@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" + dependencies: + mimic-fn "^1.0.0" + memory-fs@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.2.0.tgz#f2bb25368bc121e391c2520de92969caee0a0290" @@ -3773,12 +3882,38 @@ minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" +mississippi@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-1.3.0.tgz#d201583eb12327e3c5c1642a404a9cacf94e34f5" + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^1.0.0" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: minimist "0.0.8" +move-concurrently@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + dependencies: + aproba "^1.1.1" + copy-concurrently "^1.0.0" + fs-write-stream-atomic "^1.0.8" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.3" + mp4-box-encoding@^1.1.0, mp4-box-encoding@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/mp4-box-encoding/-/mp4-box-encoding-1.1.2.tgz#39850ee05ba5370460070b3a2acbd07616e2d831" @@ -4206,6 +4341,14 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" +os-locale@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" + dependencies: + execa "^0.7.0" + lcid "^1.0.0" + mem "^1.1.0" + os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -4247,6 +4390,14 @@ pako@~0.2.0: version "0.2.9" resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" +parallel-transform@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" + dependencies: + cyclist "~0.2.2" + inherits "^2.0.3" + readable-stream "^2.1.5" + parse-asn1@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712" @@ -4666,6 +4817,10 @@ progress@^1.1.8: version "1.1.8" resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + promise@^7.0.3, promise@^7.1.1: version "7.3.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" @@ -4704,13 +4859,21 @@ public-encrypt@^4.0.0: parse-asn1 "^5.0.0" randombytes "^2.0.1" -pump@^1.0.1: +pump@^1.0.0, pump@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.2.tgz#3b3ee6512f94f0e575538c17995f9f16990a5d51" dependencies: end-of-stream "^1.1.0" once "^1.3.1" +pumpify@^1.3.3: + version "1.3.5" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.3.5.tgz#1b671c619940abcaeac0ad0e3a3c164be760993b" + dependencies: + duplexify "^3.1.2" + inherits "^2.0.1" + pump "^1.0.0" + punycode@1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" @@ -4906,6 +5069,18 @@ read-pkg@^2.0.0: normalize-package-data "^2.3.2" path-type "^2.0.0" +"readable-stream@1 || 2", readable-stream@^2.0.4, readable-stream@^2.1.5: + version "2.3.3" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" + dependencies: + 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" + "readable-stream@>=1.0.33-1 <1.1.0-0": version "1.0.34" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" @@ -5211,6 +5386,12 @@ rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: dependencies: glob "^7.0.5" +rimraf@^2.5.4: + version "2.6.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" + dependencies: + glob "^7.0.5" + ripemd160@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-0.2.0.tgz#2bf198bde167cacfa51c0a928e84b68bbe171fce" @@ -5228,6 +5409,12 @@ run-async@^0.1.0: dependencies: once "^1.3.0" +run-queue@^1.0.0, run-queue@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + dependencies: + aproba "^1.1.1" + rx-lite@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102" @@ -5238,7 +5425,7 @@ rxjs@^5.0.0-beta.11, rxjs@^5.1.1: dependencies: symbol-observable "^1.0.1" -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" @@ -5423,9 +5610,9 @@ source-list-map@^0.1.7, source-list-map@~0.1.7: version "0.1.8" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106" -source-list-map@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-1.1.2.tgz#9889019d1024cce55cdc069498337ef6186a11a1" +source-list-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085" source-map-support@^0.4.2: version "0.4.15" @@ -5445,10 +5632,14 @@ source-map@^0.4.2, source-map@~0.4.1: dependencies: amdefine ">=0.0.4" -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.0, source-map@~0.5.1, source-map@~0.5.3: +source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.0, source-map@~0.5.1: version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" +source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + spawn-rx@^2.0.10: version "2.0.11" resolved "https://registry.yarnpkg.com/spawn-rx/-/spawn-rx-2.0.11.tgz#65451ad65662801daea75549832a782de0048dbf" @@ -5512,6 +5703,12 @@ sshpk@^1.7.0: jsbn "~0.1.0" tweetnacl "~0.14.0" +ssri@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.0.0.tgz#13c19390b606c821f2a10d02b351c1729b94d8cf" + dependencies: + safe-buffer "^5.1.0" + staged-git-files@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/staged-git-files/-/staged-git-files-0.0.4.tgz#d797e1b551ca7a639dec0237dc6eb4bb9be17d35" @@ -5533,6 +5730,13 @@ stream-browserify@^2.0.1: inherits "~2.0.1" readable-stream "^2.0.2" +stream-each@^1.1.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.2.tgz#8e8c463f91da8991778765873fe4d960d8f616bd" + dependencies: + end-of-stream "^1.1.0" + stream-shift "^1.0.0" + stream-http@^2.3.1: version "2.7.2" resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.7.2.tgz#40a050ec8dc3b53b33d9909415c02c0bf1abfbad" @@ -5543,6 +5747,10 @@ stream-http@^2.3.1: to-arraybuffer "^1.0.0" xtend "^4.0.0" +stream-shift@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" + stream-to-blob-url@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/stream-to-blob-url/-/stream-to-blob-url-2.1.0.tgz#c341d10502ec51250607327258ec2f586b07d626" @@ -5590,7 +5798,7 @@ string_decoder@^0.10.25, string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" -string_decoder@~1.0.0: +string_decoder@~1.0.0, string_decoder@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" dependencies: @@ -5653,6 +5861,12 @@ supports-color@^4.0.0: dependencies: has-flag "^2.0.0" +supports-color@^4.2.1: + version "4.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" + dependencies: + has-flag "^2.0.0" + svgo@^0.7.0: version "0.7.2" resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" @@ -5684,9 +5898,9 @@ tapable@^0.1.8, tapable@~0.1.8: version "0.1.10" resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.1.10.tgz#29c35707c2b70e50d07482b5d202e8ed446dafd4" -tapable@^0.2.5, tapable@~0.2.5: - version "0.2.6" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.6.tgz#206be8e188860b514425375e6f1ae89bfb01fd8d" +tapable@^0.2.7: + version "0.2.8" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.8.tgz#99372a5c999bf2df160afc0d74bed4f47948cd22" tar-pack@^3.4.0: version "3.4.0" @@ -5732,6 +5946,13 @@ through2@^0.6.2, through2@^0.6.5: readable-stream ">=1.0.33-1 <1.1.0-0" xtend ">=4.0.0 <4.1.0-0" +through2@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" + dependencies: + readable-stream "^2.1.5" + xtend "~4.0.1" + through@^2.3.6, through@~2.3.4: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" @@ -5811,7 +6032,14 @@ ua-parser-js@^0.7.9: version "0.7.13" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.13.tgz#cd9dd2f86493b3f44dbeeef3780fda74c5ee14be" -uglify-js@^2.8.27: +uglify-es@^3.1.3: + version "3.1.6" + resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.1.6.tgz#b0f818c055a7e9538abc2286e70c743f2938311f" + dependencies: + commander "~2.11.0" + source-map "~0.6.1" + +uglify-js@^2.8.29: version "2.8.29" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" dependencies: @@ -5833,6 +6061,26 @@ uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" +uglifyjs-webpack-plugin@^0.4.6: + version "0.4.6" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz#b951f4abb6bd617e66f63eb891498e391763e309" + dependencies: + source-map "^0.5.6" + uglify-js "^2.8.29" + webpack-sources "^1.0.1" + +uglifyjs-webpack-plugin@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.0.1.tgz#d324da7144d321202df0968c09f6f8e057d5cdc2" + dependencies: + cacache "^10.0.0" + find-cache-dir "^1.0.0" + schema-utils "^0.3.0" + source-map "^0.5.6" + uglify-es "^3.1.3" + webpack-sources "^1.0.1" + worker-farm "^1.4.1" + uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" @@ -5855,6 +6103,18 @@ uniqs@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" +unique-filename@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.0.tgz#d05f2fe4032560871f30e93cbe735eea201514f3" + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz#db6676e7c7cc0629878ff196097c78855ae9f4ab" + dependencies: + imurmurhash "^0.1.4" + unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -5974,12 +6234,12 @@ watchpack@^0.2.1: chokidar "^1.0.0" graceful-fs "^4.1.2" -watchpack@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.3.1.tgz#7d8693907b28ce6013e7f3610aa2a1acf07dad87" +watchpack@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.4.0.tgz#4a1472bcbb952bd0a9bb4036801f954dfb39faac" dependencies: async "^2.1.2" - chokidar "^1.4.3" + chokidar "^1.7.0" graceful-fs "^4.1.2" wbuf@^1.1.0, wbuf@^1.7.2: @@ -6030,6 +6290,12 @@ webpack-dev-server@^2.4.4: webpack-dev-middleware "^1.10.2" yargs "^6.0.0" +webpack-merge@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.1.1.tgz#f1197a0a973e69c6fbeeb6d658219aa8c0c13555" + dependencies: + lodash "^4.17.4" + webpack-notifier@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/webpack-notifier/-/webpack-notifier-1.5.0.tgz#c010007d448cebc34defc99ecf288fa5e8c6baf6" @@ -6038,12 +6304,12 @@ webpack-notifier@^1.5.0: object-assign "^4.1.0" strip-ansi "^3.0.1" -webpack-sources@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.2.3.tgz#17c62bfaf13c707f9d02c479e0dcdde8380697fb" +webpack-sources@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.0.2.tgz#d0148ec083b3b5ccef1035a6b3ec16442983b27a" dependencies: - source-list-map "^1.1.1" - source-map "~0.5.3" + source-list-map "^2.0.0" + source-map "~0.6.1" webpack-target-electron-renderer@^0.4.0: version "0.4.0" @@ -6051,6 +6317,33 @@ webpack-target-electron-renderer@^0.4.0: dependencies: webpack "^1.12.0" +webpack@3: + version "3.8.1" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.8.1.tgz#b16968a81100abe61608b0153c9159ef8bb2bd83" + dependencies: + acorn "^5.0.0" + acorn-dynamic-import "^2.0.0" + ajv "^5.1.5" + ajv-keywords "^2.0.0" + async "^2.1.2" + enhanced-resolve "^3.4.0" + escope "^3.6.0" + interpret "^1.0.0" + json-loader "^0.5.4" + json5 "^0.5.1" + loader-runner "^2.3.0" + loader-utils "^1.1.0" + memory-fs "~0.4.1" + mkdirp "~0.5.0" + node-libs-browser "^2.0.0" + source-map "^0.5.3" + supports-color "^4.2.1" + tapable "^0.2.7" + uglifyjs-webpack-plugin "^0.4.6" + watchpack "^1.4.0" + webpack-sources "^1.0.1" + yargs "^8.0.2" + webpack@^1.12.0: version "1.15.0" resolved "https://registry.yarnpkg.com/webpack/-/webpack-1.15.0.tgz#4ff31f53db03339e55164a9d468ee0324968fe98" @@ -6071,32 +6364,6 @@ webpack@^1.12.0: watchpack "^0.2.1" webpack-core "~0.6.9" -webpack@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-2.6.1.tgz#2e0457f0abb1ac5df3ab106c69c672f236785f07" - dependencies: - acorn "^5.0.0" - acorn-dynamic-import "^2.0.0" - ajv "^4.7.0" - ajv-keywords "^1.1.1" - async "^2.1.2" - enhanced-resolve "^3.0.0" - interpret "^1.0.0" - json-loader "^0.5.4" - json5 "^0.5.1" - loader-runner "^2.3.0" - loader-utils "^0.2.16" - memory-fs "~0.4.1" - mkdirp "~0.5.0" - node-libs-browser "^2.0.0" - source-map "^0.5.3" - supports-color "^3.1.0" - tapable "~0.2.5" - uglify-js "^2.8.27" - watchpack "^1.3.1" - webpack-sources "^0.2.3" - yargs "^6.0.0" - websocket-driver@>=0.5.1: version "0.6.5" resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz#5cb2556ceb85f4373c6d8238aa691c8454e13a36" @@ -6123,6 +6390,10 @@ which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + which@1, which@^1.0.5, which@^1.2.10, which@^1.2.9: version "1.2.14" resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" @@ -6151,6 +6422,13 @@ wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" +worker-farm@^1.4.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.5.1.tgz#8e9f4a7da4f3c595aa600903051b969390423fa1" + dependencies: + errno "^0.1.4" + xtend "^4.0.1" + wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" @@ -6172,7 +6450,7 @@ xss-filters@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/xss-filters/-/xss-filters-1.2.7.tgz#59fa1de201f36f2f3470dcac5f58ccc2830b0a9a" -"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0: +"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" @@ -6196,6 +6474,12 @@ yargs-parser@^5.0.0: dependencies: camelcase "^3.0.0" +yargs-parser@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" + dependencies: + camelcase "^4.1.0" + yargs@^6.0.0: version "6.6.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" @@ -6232,6 +6516,24 @@ yargs@^7.0.0, yargs@^7.0.2: y18n "^3.2.1" yargs-parser "^5.0.0" +yargs@^8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360" + dependencies: + camelcase "^4.1.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + read-pkg-up "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^7.0.0" + yargs@~3.10.0: version "3.10.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" From 7a0a0c468ee1a341edbbec637a899089a967e85e Mon Sep 17 00:00:00 2001 From: hackrush Date: Thu, 14 Sep 2017 13:06:41 +0530 Subject: [PATCH 12/14] Rudimentary implementation of tray minimization(WIP) Minimize app to tray @kauffj I was not sure about which icon to use so I used a 96x96 png as a placeholder. The feature is working well. Fixes #374 3 small changes Broken Minimization Fixed App-minization finally Bug fix and compatibility check Added Alt+F4 accelerator to quit the app Small features and fixes Homerun: Added Quit to Menu Fixes and changes --- CHANGELOG.md | 1 + app/main.js | 133 +++++++++++++++++++++++++++++++++++++- app/menu/main-menu.js | 12 ++++ ui/dist/img/fav/32x32.png | Bin 0 -> 1248 bytes ui/js/main.js | 23 +++---- yarn.lock | 4 +- 6 files changed, 153 insertions(+), 20 deletions(-) create mode 100644 ui/dist/img/fav/32x32.png diff --git a/CHANGELOG.md b/CHANGELOG.md index c765e1cea..54fcb29f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ Web UI version numbers should always match the corresponding version of LBRY App ### Added * Added new window menu options for reloading and help. * Rewards are now marked in transaction history (#660) + * Minimize LBRY app to tray (issue #374) * ### Changed diff --git a/app/main.js b/app/main.js index c11468b8f..31db07336 100644 --- a/app/main.js +++ b/app/main.js @@ -1,4 +1,5 @@ -const {app, BrowserWindow, ipcMain} = require('electron'); +module.exports = { safeQuit } +const {app, BrowserWindow, ipcMain, Menu, Tray, globalShortcut} = require('electron'); const url = require('url'); const isDebug = process.env.NODE_ENV === 'development'; const setMenu = require('./menu/main-menu.js'); @@ -55,6 +56,13 @@ let readyToQuit = false; // sendCredits it to, it's cached in this variable. let openUri = null; +// Set this to true to minimize on clicking close +// false for normal action +let minimize = true; + +// Keep the tray also, it is getting GC'd if put in createTray() +let tray = null; + function processRequestedUri(uri) { // Windows normalizes URIs when they're passed in from other apps. On Windows, // this function tries to restore the original URI that was typed. @@ -167,10 +175,47 @@ function createWindow () { }); } + win.removeAllListeners(); + + win.on('close', function(event) { + if (minimize) { + event.preventDefault(); + win.hide(); + } + }) + win.on('closed', () => { win = null }) + win.on("hide", () => { + // Checks what to show in the tray icon menu + if (minimize) updateTray(); + }); + + win.on("show", () => { + // Checks what to show in the tray icon menu + if (minimize) updateTray(); + }); + + win.on("blur", () => { + // Checks what to show in the tray icon menu + if (minimize) updateTray(); + + // Unregisters Alt+F4 shortcut + globalShortcut.unregister('Alt+F4'); + }); + + win.on("focus", () => { + // Checks what to show in the tray icon menu + if (minimize) updateTray(); + + // Registers shortcut for closing(quitting) the app + globalShortcut.register('Alt+F4', () => safeQuit()); + + win.webContents.send('window-is-focussed', null); + }); + // Menu bar win.setAutoHideMenuBar(true); win.setMenuBarVisibility(isDebug); @@ -178,14 +223,61 @@ function createWindow () { }; +function createTray () { + // Minimize to tray logic follows: + // Set the tray icon + const iconPath = path.join(app.getAppPath(), "/dist/img/fav/32x32.png"); + tray = new Tray(iconPath); + tray.setToolTip("LBRY App"); + tray.setTitle("LBRY"); + tray.on('double-click', () => { + win.show() + }) +} + +// This needs to be done as for linux the context menu doesn't update automatically(docs) +function updateTray() { + let contextMenu = Menu.buildFromTemplate(getMenuTemplate()); + tray.setContextMenu(contextMenu); +} + +function getMenuTemplate () { + return [ + getToggleItem(), + { + label: "Quit", + click: () => safeQuit(), + }, + ] + + function getToggleItem () { + if (win.isVisible() && win.isFocused()) { + return { + label: 'Hide LBRY App', + click: () => win.hide() + + } + } else { + return { + label: 'Show LBRY App', + click: () => win.show() + } + } + } +} + function handleOpenUriRequested(uri) { if (!win) { // Window not created yet, so store up requested URI for when it is openUri = processRequestedUri(uri); } else { + if (win.isMinimized()) { - win.restore(); + win.restore() + } else if (!win.isVisible()) { + win.show() } + win.focus(); win.webContents.send('open-uri-requested', processRequestedUri(uri)); } @@ -224,6 +316,15 @@ function launchDaemon() { daemonSubprocess.on('exit', handleDaemonSubprocessExited); } + +/* + * Quits by first killing the daemon, the calling quitting for real. + */ +function safeQuit() { + minimize = false; + app.quit(); +} + /* * Quits without any preparation. When a quit is requested (either through the * interface or through app.quit()), we abort the quit, try to shut down the daemon, @@ -231,7 +332,7 @@ function launchDaemon() { */ function quitNow() { readyToQuit = true; - app.quit(); + safeQuit(); } const isSecondaryInstance = app.makeSingleInstance((argv) => { @@ -240,6 +341,8 @@ const isSecondaryInstance = app.makeSingleInstance((argv) => { } else if (win) { if (win.isMinimized()) { win.restore(); + } else if (!win.isVisible()) { + win.show(); } win.focus(); } @@ -252,6 +355,14 @@ if (isSecondaryInstance) { // We're not in the original process, so quit app.on('ready', function(){ launchDaemonIfNotRunning(); + if (process.platform === "linux") { + checkLinuxTraySupport( err => { + if (!err) createTray(); + else minimize = false; + }) + } else { + createTray(); + } createWindow(); }); @@ -385,6 +496,22 @@ function upgrade(event, installerPath) { console.log('After the install is complete, please reopen the app.'); } +// Taken from webtorrent-desktop +function checkLinuxTraySupport (cb) { + // Check that we're on Ubuntu (or another debian system) and that we have + // libappindicator1. + child_process.exec('dpkg --get-selections libappindicator1', function (err, stdout) { + if (err) return cb(err) + // Unfortunately there's no cleaner way, as far as I can tell, to check + // whether a debian package is installed: + if (stdout.endsWith('\tinstall\n')) { + cb(null) + } else { + cb(new Error('debian package not installed')) + } + }) +} + ipcMain.on('upgrade', upgrade); app.setAsDefaultProtocolClient('lbry'); diff --git a/app/menu/main-menu.js b/app/menu/main-menu.js index 7b214bfca..93251992e 100644 --- a/app/menu/main-menu.js +++ b/app/menu/main-menu.js @@ -1,6 +1,18 @@ const { app, shell, Menu } = require('electron'); +const { safeQuit } = require('../main.js') + const baseTemplate = [ + { + label: 'File', + submenu: [ + { + label: 'Quit', + accelerator: "CommandOrControl+Q", + click: () => safeQuit(), + }, + ] + }, { label: 'Edit', submenu: [ diff --git a/ui/dist/img/fav/32x32.png b/ui/dist/img/fav/32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..ece10998cc9454bdd9887ccffbf558d1a3abbcf2 GIT binary patch literal 1248 zcmV<61Rwi}P)mZ+$d*Z_?ktY~Tp6^$Z9U=&%#A;SFnAVX)Qt*C=Z6TioMPVV=e zbI(2ZTtRq+|0@8K>@(>Fh^>KYpaBSb+0hpO>@E6%HEHQ|snq}jK>UQJ8(0KrnytjZUXyLuNJ>A}Nup6X|*I0Dzjhdi*|# z#9SmHW^EEJH*NsvfK9-p=c*ZlsMiBjov-0T?*%yfDygZfHtKiAY#Q z)3rbJrYvB}xP%xGI|3b@-D*NteukxsjEuZpj0cy0zeafcDrPu|35kv4m&Qwa({5ne ze+mI61BC#2`wn0&bw#;sIX7>&@vLZWZ6#)H66PWa%4Jd1);H))-vMupiZF;e8sOsP zCR~FS%@rg=a6u0iQldw4zbCHyJp-VYadjUXa7_}v!dZ^VBzbOTCX9@AiDQLBW zm=axTHL>fyMB*O^22p1K6qQ$C@8N}8Pzb6kSC|OwFFuNcrxyWHD~tp%KP&+I|aGOSvYjO zRCv(aCv>X2g}(j)VSDQ4B?7=Zjv`b|kI%jP-aR&EX&Glx_;X;5@BLZBwboHu{b8lZiDY@IQk+~sO28`=EX66@Q zC6*Bq8%O)yyGFMBgNLwFcw(pU#KFT$zw9Ca%<}TVPT@&r{%*8`##e7Zqah=27q)T* z&b~?xA1@t4{8N1cE`I)eFmFDU)n|=ts-`O_f|p>Y@Z|er$7%kvmGm8X08RQLEC)DJ zR*q<)KeloOTXyE7d8jqoNIN)4R(=69-8^udzmS6^$LQ?tCTeve<{}B}w`MUsJUr_E zP^%>&`EgHKxqc%98Vx`r&^6)`Y}knGff9h?6P1XS0ockEe6`~n1_m@nLLLo0V*9sy zdEb35R$>`GOT%ft-fHA?xU>v=_qn(RE#~5HmjQ->Fpg;13I0K^6HmHZV { } }); +const dock = remote.app.dock; + +ipcRenderer.on("window-is-focussed", (event, data) => { + if (!dock) return; + app.store.dispatch({ type: types.WINDOW_FOCUSED }); + dock.setBadge(""); +}); + document.addEventListener("click", event => { var target = event.target; while (target && target !== document) { @@ -52,21 +60,6 @@ document.addEventListener("click", event => { } }); -const application = remote.app; -const dock = application.dock; -const win = remote.getCurrentWindow(); - -// Tear down previous event listeners when reload -win.removeAllListeners(); - -// Clear the badge when the window is focused -win.on("focus", () => { - if (!dock) return; - - app.store.dispatch({ type: types.WINDOW_FOCUSED }); - dock.setBadge(""); -}); - const initialState = app.store.getState(); var init = function() { diff --git a/yarn.lock b/yarn.lock index 40bbafce5..3119be846 100644 --- a/yarn.lock +++ b/yarn.lock @@ -311,13 +311,13 @@ debug@2.2.0: dependencies: ms "0.7.1" -debug@2.6.0, debug@^2.3.2, debug@^2.6.0: +debug@2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.0.tgz#bc596bcabe7617f11d9fa15361eded5608b8499b" dependencies: ms "0.7.2" -debug@^2.1.3, debug@^2.2.0, debug@^2.6.8: +debug@^2.1.3, debug@^2.2.0, debug@^2.3.2, debug@^2.6.0, debug@^2.6.8: version "2.6.8" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" dependencies: From 350c4dc98c847f501df6f1ff34d6c1d192239645 Mon Sep 17 00:00:00 2001 From: Jeremy Kauffman Date: Wed, 8 Nov 2017 17:26:46 -0500 Subject: [PATCH 13/14] minor changes to tray functionality --- CHANGELOG.md | 2 +- app/main.js | 8 ++++++-- ui/js/main.js | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 54fcb29f8..b43b8f0a3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,9 +8,9 @@ Web UI version numbers should always match the corresponding version of LBRY App ## [Unreleased] ### Added + * The app now closes to the system tray unless specifically requested to quit. (#374) * Added new window menu options for reloading and help. * Rewards are now marked in transaction history (#660) - * Minimize LBRY app to tray (issue #374) * ### Changed diff --git a/app/main.js b/app/main.js index 31db07336..0774c081a 100644 --- a/app/main.js +++ b/app/main.js @@ -213,7 +213,7 @@ function createWindow () { // Registers shortcut for closing(quitting) the app globalShortcut.register('Alt+F4', () => safeQuit()); - win.webContents.send('window-is-focussed', null); + win.webContents.send('window-is-focused', null); }); // Menu bar @@ -238,7 +238,11 @@ function createTray () { // This needs to be done as for linux the context menu doesn't update automatically(docs) function updateTray() { let contextMenu = Menu.buildFromTemplate(getMenuTemplate()); - tray.setContextMenu(contextMenu); + if (tray) { + tray.setContextMenu(contextMenu); + } else { + console.log("How did update tray get called without a tray?"); + } } function getMenuTemplate () { diff --git a/ui/js/main.js b/ui/js/main.js index ed26e76e8..b074f4b6d 100644 --- a/ui/js/main.js +++ b/ui/js/main.js @@ -39,7 +39,7 @@ ipcRenderer.on("open-menu", (event, uri) => { const dock = remote.app.dock; -ipcRenderer.on("window-is-focussed", (event, data) => { +ipcRenderer.on("window-is-focused", (event, data) => { if (!dock) return; app.store.dispatch({ type: types.WINDOW_FOCUSED }); dock.setBadge(""); From 77774e6fbc42b1bf31e5776069568f1c9ca9da72 Mon Sep 17 00:00:00 2001 From: Jeremy Kauffman Date: Wed, 8 Nov 2017 17:37:16 -0500 Subject: [PATCH 14/14] update daemon to 0.18 --- app/package.json | 2 +- ui/yarn.lock | 274 ++++++----------------------------------------- 2 files changed, 33 insertions(+), 243 deletions(-) diff --git a/app/package.json b/app/package.json index 5a52e2887..cf52260ec 100644 --- a/app/package.json +++ b/app/package.json @@ -20,7 +20,7 @@ "electron-rebuild": "^1.5.11" }, "lbrySettings": { - "lbrynetDaemonVersion": "0.17.1", + "lbrynetDaemonVersion": "0.18.0rc1", "lbrynetDaemonUrlTemplate": "https://github.com/lbryio/lbry/releases/download/vDAEMONVER/lbrynet-daemon-vDAEMONVER-OSNAME.zip" }, "license": "MIT" diff --git a/ui/yarn.lock b/ui/yarn.lock index 47ed8fe93..99db2b20c 100644 --- a/ui/yarn.lock +++ b/ui/yarn.lock @@ -129,10 +129,6 @@ aproba@^1.0.3: version "1.1.2" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1" -aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - are-we-there-yet@~1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" @@ -983,10 +979,6 @@ block-stream@*: dependencies: inherits "~2.0.0" -bluebird@^3.5.0: - version "3.5.1" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" - bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.7" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.7.tgz#ddb048e50d9482790094c13eb3fcfc833ce7ab46" @@ -1119,24 +1111,6 @@ bytes@2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.3.0.tgz#d5b680a165b6201739acb611542aabc2d8ceb070" -cacache@^10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.0.tgz#3bba88bf62b0773fd9a691605f60c9d3c595e853" - dependencies: - bluebird "^3.5.0" - chownr "^1.0.1" - glob "^7.1.2" - graceful-fs "^4.1.11" - lru-cache "^4.1.1" - mississippi "^1.3.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.1" - ssri "^5.0.0" - unique-filename "^1.1.0" - y18n "^3.2.1" - caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" @@ -1226,10 +1200,6 @@ chokidar@^1.0.0, chokidar@^1.6.0, chokidar@^1.6.1, chokidar@^1.7.0: optionalDependencies: fsevents "^1.0.0" -chownr@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" - ci-info@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.0.0.tgz#dc5285f2b4e251821683681c381c3388f46ec534" @@ -1394,10 +1364,6 @@ commander@^2.5.0, commander@^2.8.1, commander@^2.9.0: dependencies: graceful-readlink ">= 1.0.0" -commander@~2.11.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" - commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" @@ -1455,7 +1421,7 @@ concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" -concat-stream@^1.5.0, concat-stream@^1.5.2: +concat-stream@^1.5.2: version "1.6.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" dependencies: @@ -1505,17 +1471,6 @@ cookie@0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - core-js@^1.0.0: version "1.2.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" @@ -1706,10 +1661,6 @@ currently-unhandled@^0.4.1: dependencies: array-find-index "^1.0.1" -cyclist@~0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" - d@1: version "1.0.0" resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" @@ -1889,15 +1840,6 @@ domain-browser@^1.1.1: version "1.1.7" resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" -duplexify@^3.1.2, duplexify@^3.4.2: - version "3.5.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.1.tgz#4e1516be68838bc90a49994f0b39a6e5960befcd" - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - ecc-jsbn@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" @@ -1960,7 +1902,7 @@ encoding@0.1.12, encoding@^0.1.11: dependencies: iconv-lite "~0.4.13" -end-of-stream@^1.0.0, end-of-stream@^1.1.0: +end-of-stream@^1.1.0: version "1.4.0" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.0.tgz#7a90d833efda6cfa6eac0f4949dbb0fad3a63206" dependencies: @@ -1994,7 +1936,7 @@ envify@^3.0.0: jstransform "^11.0.3" through "~2.3.4" -errno@^0.1.3, errno@^0.1.4: +errno@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.4.tgz#b896e23a9e5e8ba33871fc996abd3635fc9a1c7d" dependencies: @@ -2523,13 +2465,6 @@ flatten@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" -flush-write-stream@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.2.tgz#c81b90d8746766f1a609a46809946c45dd8ae417" - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.4" - for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -2564,7 +2499,7 @@ fresh@0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e" -from2@^2.1.0, from2@^2.3.0: +from2@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" dependencies: @@ -2591,15 +2526,6 @@ fs-readdir-recursive@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz#8cd1745c8b4f8a29c8caec392476921ba195f560" -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -2708,7 +2634,7 @@ glob@^5.0.15: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@~7.1.1: +glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@~7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -2752,7 +2678,7 @@ globule@^1.0.0: lodash "~4.17.4" minimatch "~3.0.2" -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6: +graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" @@ -2946,10 +2872,6 @@ ieee754@^1.1.4: version "1.1.8" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - ignore@^3.2.0: version "3.3.3" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d" @@ -3707,7 +3629,7 @@ loud-rejection@^1.0.0: currently-unhandled "^0.4.1" signal-exit "^3.0.0" -lru-cache@^4.0.1, lru-cache@^4.1.1: +lru-cache@^4.0.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" dependencies: @@ -3882,38 +3804,12 @@ minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -mississippi@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-1.3.0.tgz#d201583eb12327e3c5c1642a404a9cacf94e34f5" - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^1.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: minimist "0.0.8" -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - mp4-box-encoding@^1.1.0, mp4-box-encoding@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/mp4-box-encoding/-/mp4-box-encoding-1.1.2.tgz#39850ee05ba5370460070b3a2acbd07616e2d831" @@ -4390,14 +4286,6 @@ pako@~0.2.0: version "0.2.9" resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" -parallel-transform@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" - dependencies: - cyclist "~0.2.2" - inherits "^2.0.3" - readable-stream "^2.1.5" - parse-asn1@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712" @@ -4817,10 +4705,6 @@ progress@^1.1.8: version "1.1.8" resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - promise@^7.0.3, promise@^7.1.1: version "7.3.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" @@ -4859,21 +4743,13 @@ public-encrypt@^4.0.0: parse-asn1 "^5.0.0" randombytes "^2.0.1" -pump@^1.0.0, pump@^1.0.1: +pump@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.2.tgz#3b3ee6512f94f0e575538c17995f9f16990a5d51" dependencies: end-of-stream "^1.1.0" once "^1.3.1" -pumpify@^1.3.3: - version "1.3.5" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.3.5.tgz#1b671c619940abcaeac0ad0e3a3c164be760993b" - dependencies: - duplexify "^3.1.2" - inherits "^2.0.1" - pump "^1.0.0" - punycode@1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" @@ -5069,18 +4945,6 @@ read-pkg@^2.0.0: normalize-package-data "^2.3.2" path-type "^2.0.0" -"readable-stream@1 || 2", readable-stream@^2.0.4, readable-stream@^2.1.5: - version "2.3.3" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" - dependencies: - 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" - "readable-stream@>=1.0.33-1 <1.1.0-0": version "1.0.34" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" @@ -5386,12 +5250,6 @@ rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: dependencies: glob "^7.0.5" -rimraf@^2.5.4: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - dependencies: - glob "^7.0.5" - ripemd160@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-0.2.0.tgz#2bf198bde167cacfa51c0a928e84b68bbe171fce" @@ -5409,12 +5267,6 @@ run-async@^0.1.0: dependencies: once "^1.3.0" -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - dependencies: - aproba "^1.1.1" - rx-lite@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102" @@ -5425,7 +5277,7 @@ rxjs@^5.0.0-beta.11, rxjs@^5.1.1: dependencies: symbol-observable "^1.0.1" -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.1.0: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" @@ -5703,12 +5555,6 @@ sshpk@^1.7.0: jsbn "~0.1.0" tweetnacl "~0.14.0" -ssri@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.0.0.tgz#13c19390b606c821f2a10d02b351c1729b94d8cf" - dependencies: - safe-buffer "^5.1.0" - staged-git-files@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/staged-git-files/-/staged-git-files-0.0.4.tgz#d797e1b551ca7a639dec0237dc6eb4bb9be17d35" @@ -5730,13 +5576,6 @@ stream-browserify@^2.0.1: inherits "~2.0.1" readable-stream "^2.0.2" -stream-each@^1.1.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.2.tgz#8e8c463f91da8991778765873fe4d960d8f616bd" - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - stream-http@^2.3.1: version "2.7.2" resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.7.2.tgz#40a050ec8dc3b53b33d9909415c02c0bf1abfbad" @@ -5747,10 +5586,6 @@ stream-http@^2.3.1: to-arraybuffer "^1.0.0" xtend "^4.0.0" -stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - stream-to-blob-url@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/stream-to-blob-url/-/stream-to-blob-url-2.1.0.tgz#c341d10502ec51250607327258ec2f586b07d626" @@ -5798,7 +5633,7 @@ string_decoder@^0.10.25, string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" -string_decoder@~1.0.0, string_decoder@~1.0.3: +string_decoder@~1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" dependencies: @@ -5946,13 +5781,6 @@ through2@^0.6.2, through2@^0.6.5: readable-stream ">=1.0.33-1 <1.1.0-0" xtend ">=4.0.0 <4.1.0-0" -through2@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - dependencies: - readable-stream "^2.1.5" - xtend "~4.0.1" - through@^2.3.6, through@~2.3.4: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" @@ -6032,13 +5860,6 @@ ua-parser-js@^0.7.9: version "0.7.13" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.13.tgz#cd9dd2f86493b3f44dbeeef3780fda74c5ee14be" -uglify-es@^3.1.3: - version "3.1.6" - resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.1.6.tgz#b0f818c055a7e9538abc2286e70c743f2938311f" - dependencies: - commander "~2.11.0" - source-map "~0.6.1" - uglify-js@^2.8.29: version "2.8.29" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" @@ -6069,18 +5890,6 @@ uglifyjs-webpack-plugin@^0.4.6: uglify-js "^2.8.29" webpack-sources "^1.0.1" -uglifyjs-webpack-plugin@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.0.1.tgz#d324da7144d321202df0968c09f6f8e057d5cdc2" - dependencies: - cacache "^10.0.0" - find-cache-dir "^1.0.0" - schema-utils "^0.3.0" - source-map "^0.5.6" - uglify-es "^3.1.3" - webpack-sources "^1.0.1" - worker-farm "^1.4.1" - uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" @@ -6103,18 +5912,6 @@ uniqs@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" -unique-filename@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.0.tgz#d05f2fe4032560871f30e93cbe735eea201514f3" - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz#db6676e7c7cc0629878ff196097c78855ae9f4ab" - dependencies: - imurmurhash "^0.1.4" - unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -6317,7 +6114,27 @@ webpack-target-electron-renderer@^0.4.0: dependencies: webpack "^1.12.0" -webpack@3: +webpack@^1.12.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-1.15.0.tgz#4ff31f53db03339e55164a9d468ee0324968fe98" + dependencies: + acorn "^3.0.0" + async "^1.3.0" + clone "^1.0.2" + enhanced-resolve "~0.9.0" + interpret "^0.6.4" + loader-utils "^0.2.11" + memory-fs "~0.3.0" + mkdirp "~0.5.0" + node-libs-browser "^0.7.0" + optimist "~0.6.0" + supports-color "^3.1.0" + tapable "~0.1.8" + uglify-js "~2.7.3" + watchpack "^0.2.1" + webpack-core "~0.6.9" + +webpack@^3.0.0: version "3.8.1" resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.8.1.tgz#b16968a81100abe61608b0153c9159ef8bb2bd83" dependencies: @@ -6344,26 +6161,6 @@ webpack@3: webpack-sources "^1.0.1" yargs "^8.0.2" -webpack@^1.12.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-1.15.0.tgz#4ff31f53db03339e55164a9d468ee0324968fe98" - dependencies: - acorn "^3.0.0" - async "^1.3.0" - clone "^1.0.2" - enhanced-resolve "~0.9.0" - interpret "^0.6.4" - loader-utils "^0.2.11" - memory-fs "~0.3.0" - mkdirp "~0.5.0" - node-libs-browser "^0.7.0" - optimist "~0.6.0" - supports-color "^3.1.0" - tapable "~0.1.8" - uglify-js "~2.7.3" - watchpack "^0.2.1" - webpack-core "~0.6.9" - websocket-driver@>=0.5.1: version "0.6.5" resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz#5cb2556ceb85f4373c6d8238aa691c8454e13a36" @@ -6422,13 +6219,6 @@ wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" -worker-farm@^1.4.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.5.1.tgz#8e9f4a7da4f3c595aa600903051b969390423fa1" - dependencies: - errno "^0.1.4" - xtend "^4.0.1" - wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" @@ -6450,7 +6240,7 @@ xss-filters@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/xss-filters/-/xss-filters-1.2.7.tgz#59fa1de201f36f2f3470dcac5f58ccc2830b0a9a" -"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: +"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"