From e5103c0e184ac1317112c1437a3d5c7543f8dfa7 Mon Sep 17 00:00:00 2001
From: Jure Triglav <juretriglav@gmail.com>
Date: Fri, 15 Nov 2019 23:44:47 +0100
Subject: [PATCH] chore: migrate from react-apollo and update dependencies

---
 .../Navigation/ConnectedNavigation.jsx        |   2 +-
 .../Navigation/queries/currentUser.js         |   2 +-
 package.json                                  |  18 +-
 yarn.lock                                     | 477 +++++-------------
 4 files changed, 150 insertions(+), 349 deletions(-)

diff --git a/app/components/Navigation/ConnectedNavigation.jsx b/app/components/Navigation/ConnectedNavigation.jsx
index 08345c9..7f4bdaf 100644
--- a/app/components/Navigation/ConnectedNavigation.jsx
+++ b/app/components/Navigation/ConnectedNavigation.jsx
@@ -1,5 +1,5 @@
 import React from 'react'
-import { Query, ApolloConsumer } from 'react-apollo'
+import { Query, ApolloConsumer } from '@apollo/react-components'
 import gql from 'graphql-tag'
 import Navigation from './Navigation'
 
diff --git a/app/components/Navigation/queries/currentUser.js b/app/components/Navigation/queries/currentUser.js
index f81808e..833f06b 100644
--- a/app/components/Navigation/queries/currentUser.js
+++ b/app/components/Navigation/queries/currentUser.js
@@ -1,7 +1,7 @@
 import React from 'react'
 import PropTypes from 'prop-types'
 
-import { Query } from 'react-apollo'
+import { Query } from '@apollo/react-components'
 import gql from 'graphql-tag'
 
 const CURRENT_USER = gql`
diff --git a/package.json b/package.json
index f965ef3..499137d 100644
--- a/package.json
+++ b/package.json
@@ -10,25 +10,25 @@
   ],
   "main": "app.js",
   "dependencies": {
-    "@apollo/react-hoc": "^3.1.3",
     "@apollo/react-common": "^3.1.3",
+    "@apollo/react-hoc": "^3.1.3",
     "@pubsweet/coko-theme": "^5.1.13",
     "@pubsweet/component-password-reset-client": "^3.1.12",
     "@pubsweet/component-password-reset-server": "^2.1.12",
-    "@pubsweet/db-manager": "3.0.17",
-    "@pubsweet/default-theme": "4.1.10",
-    "@pubsweet/job-xsweet": "^1.2.7",
+    "@pubsweet/db-manager": "3.1.0",
+    "@pubsweet/default-theme": "4.1.14",
+    "@pubsweet/job-xsweet": "^2.1.0",
     "@pubsweet/logger": "^0.2.31",
-    "@pubsweet/model-blog": "^0.0.24",
-    "@pubsweet/model-blogpost": "^0.0.24",
+    "@pubsweet/model-blog": "^0.0.28",
+    "@pubsweet/model-blogpost": "^0.0.28",
     "@pubsweet/model-team": "^2.1.1",
     "@pubsweet/model-user": "^5.1.0",
-    "@pubsweet/models": "0.2.18",
-    "@pubsweet/ui": "^10.3.10",
+    "@pubsweet/models": "0.3.0",
+    "@pubsweet/ui": "^12.1.0",
     "authsome": "^0.1.0",
     "mini-css-extract-plugin": "^0.8.0",
     "pubsweet": "^5.0.1",
-    "pubsweet-client": "^9.2.13",
+    "pubsweet-client": "^10.1.0",
     "pubsweet-component-login": "^3.0.13",
     "pubsweet-component-signup": "^2.1.7",
     "pubsweet-server": "^13.6.1",
diff --git a/yarn.lock b/yarn.lock
index f50dfb9..c13d553 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,7 +2,7 @@
 # yarn lockfile v1
 
 
-"@apollo/react-common@^3.1.3":
+"@apollo/react-common@^3.0.1", "@apollo/react-common@^3.1.3":
   version "3.1.3"
   resolved "https://registry.yarnpkg.com/@apollo/react-common/-/react-common-3.1.3.tgz#ddc34f6403f55d47c0da147fd4756dfd7c73dac5"
   integrity sha512-Q7ZjDOeqjJf/AOGxUMdGxKF+JVClRXrYBGVq+SuVFqANRpd68MxtVV2OjCWavsFAN0eqYnRqRUrl7vtUCiJqeg==
@@ -10,7 +10,7 @@
     ts-invariant "^0.4.4"
     tslib "^1.10.0"
 
-"@apollo/react-components@^3.1.3":
+"@apollo/react-components@^3.0.1", "@apollo/react-components@^3.1.3":
   version "3.1.3"
   resolved "https://registry.yarnpkg.com/@apollo/react-components/-/react-components-3.1.3.tgz#8f6726847cd9b0eb4b22586b1a038d29aa8b1da4"
   integrity sha512-H0l2JKDQMz+LkM93QK7j3ThbNXkWQCduN3s3eKxFN3Rdg7rXsrikJWvx2wQ868jmqy0VhwJbS1vYdRLdh114uQ==
@@ -21,7 +21,7 @@
     ts-invariant "^0.4.4"
     tslib "^1.10.0"
 
-"@apollo/react-hoc@^3.1.3":
+"@apollo/react-hoc@^3.0.1", "@apollo/react-hoc@^3.1.3":
   version "3.1.3"
   resolved "https://registry.yarnpkg.com/@apollo/react-hoc/-/react-hoc-3.1.3.tgz#5742ee74f57611058f5ea1f966c38fc6429dda7b"
   integrity sha512-oCPma0uBVPTcYTR5sOvtMbpaWll4xDBvYfKr6YkDorUcQVeNzFu1LK1kmQjJP64bKsaziKYji5ibFaeCnVptmA==
@@ -844,14 +844,14 @@
     "@babel/plugin-transform-react-jsx-self" "^7.0.0"
     "@babel/plugin-transform-react-jsx-source" "^7.0.0"
 
-"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.4.0":
+"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.4.0", "@babel/runtime@^7.5.4":
   version "7.7.2"
   resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.2.tgz#111a78002a5c25fc8e3361bedc9529c696b85a6a"
   integrity sha512-JONRbXbTXc9WQE2mAZd1p0Z3DZ/6vaQIkgYMSTP3KjRCyd7rCZCcfhCyX+YjwcKxcZ82UrxbRD358bpExNgrjw==
   dependencies:
     regenerator-runtime "^0.13.2"
 
-"@babel/runtime@^7.0.0-beta.38", "@babel/runtime@^7.0.0-beta.51", "@babel/runtime@^7.4.5":
+"@babel/runtime@^7.4.5":
   version "7.5.5"
   resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132"
   integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ==
@@ -1027,7 +1027,7 @@
   resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
   integrity sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=
 
-"@pubsweet/base-model@^3.4.1", "@pubsweet/base-model@^3.5.1":
+"@pubsweet/base-model@^3.5.1":
   version "3.5.1"
   resolved "https://registry.yarnpkg.com/@pubsweet/base-model/-/base-model-3.5.1.tgz#23395467949f157242942a2e91687774c7457d79"
   integrity sha512-MiF2T7tQnwAV161Tw05g7y0/pgnK0gr6oPlHN2FmIz1fnONfZIMd9vDMGrPr8kmgGnmlKjUTOGNK91ZgPCR62w==
@@ -1083,23 +1083,7 @@
     aws-sdk "^2.185.0"
     nodemailer "^4.4.2"
 
-"@pubsweet/db-manager@3.0.17", "@pubsweet/db-manager@^3.0.16":
-  version "3.0.17"
-  resolved "https://registry.yarnpkg.com/@pubsweet/db-manager/-/db-manager-3.0.17.tgz#75021eace7d4361d49761029ad1a602b0ff4a1e2"
-  integrity sha512-atZ+qQktWRc5IyB/8X+P2BUkuSOMxo/O8vjHYkfLH//xtINYd4klv0DbaV5q0hV691y7u1Y9Ypq1ivEq1IPL7Q==
-  dependencies:
-    "@pubsweet/logger" "^0.2.31"
-    fs-extra "^4.0.2"
-    isomorphic-fetch "^2.2.1"
-    joi "^14.3.0"
-    knex "^0.16.3"
-    lodash "^4.17.11"
-    objection "^1.5.3"
-    pg "^7.8.0"
-    tmp-promise "^2.0.0"
-    umzug "^2.1.0"
-
-"@pubsweet/db-manager@^3.0.17", "@pubsweet/db-manager@^3.1.0":
+"@pubsweet/db-manager@3.1.0", "@pubsweet/db-manager@^3.1.0":
   version "3.1.0"
   resolved "https://registry.yarnpkg.com/@pubsweet/db-manager/-/db-manager-3.1.0.tgz#63867c5fc7460ff7d39b6e6cf11596363bb2f2be"
   integrity sha512-sKuwKvZmbVveAnYOJfLtGXngzumTH6tI7e762XVIeftNfLaGp6GbA12ogfOzFb4gDpdbfkPvu37pfR9QPEpC7Q==
@@ -1115,46 +1099,38 @@
     tmp-promise "^2.0.0"
     umzug "^2.1.0"
 
-"@pubsweet/default-theme@4.1.10":
-  version "4.1.10"
-  resolved "https://registry.yarnpkg.com/@pubsweet/default-theme/-/default-theme-4.1.10.tgz#f41606f337bbffdac55145bcd3a621b0bdca43f9"
-  integrity sha512-9AeysDbIF5cZYf9dNhjNopDhhfxWbWev50oRZcS0Y5/F5gtzaI1SIEGYe8d7gEh7JDwLBTPHzt/FEl8/pbe3iA==
+"@pubsweet/default-theme@4.1.14":
+  version "4.1.14"
+  resolved "https://registry.yarnpkg.com/@pubsweet/default-theme/-/default-theme-4.1.14.tgz#9ea1948fb672b3efd4548fe56034c72132424209"
+  integrity sha512-sxHWiHmYsqEkeBZ7boA++Or5B8jXvDaSjjg8duKW/YYszbLqmxW9GzQxnpZbIO5IX7LInm5aRiDUgbLULguRAQ==
   dependencies:
     styled-components "^4.1.1"
     typeface-noto-sans "^0.0.54"
     typeface-noto-serif "^0.0.54"
     typeface-ubuntu-mono "^0.0.54"
 
-"@pubsweet/errors@^2.0.21", "@pubsweet/errors@^2.0.25":
+"@pubsweet/errors@^2.0.25":
   version "2.0.25"
   resolved "https://registry.yarnpkg.com/@pubsweet/errors/-/errors-2.0.25.tgz#7132071ac6868de6b66114362f22c32afeb8c7aa"
   integrity sha512-uGPbN97UDyUPxWodmj2FB/ZapmeM25Qa3bEq4xBHJpAaxq9GmzuY3rOnhtYFcthV+dAJl12gQLEcw3dmarFdwQ==
   dependencies:
     http-status-codes "^1.3.0"
 
-"@pubsweet/job-xsweet@^1.2.7":
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/@pubsweet/job-xsweet/-/job-xsweet-1.3.0.tgz#1f66763539447dfd8d56e72cadc5891966621186"
-  integrity sha512-bbQauX88sP1NmfSyNYLdno/acEckBp3mYgr1oe3Bzeao11yRWMs3zsrTd7fEb9M3qDd9TlntAhqzPg76f8Bj1A==
+"@pubsweet/job-xsweet@^2.1.0":
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/@pubsweet/job-xsweet/-/job-xsweet-2.1.0.tgz#57fcefdcc6fabdb68814a68b1a012f4353b16840"
+  integrity sha512-sdoHw6wNQwKQATrOole0en72OS3j40axX0luA4TxcuvjDq57CXk9OwvuVJQ5VTQs56bEaIOd3sqhSlqxZLdOzA==
   dependencies:
-    "@pubsweet/db-manager" "^3.0.16"
-    "@pubsweet/logger" "^0.2.30"
+    "@pubsweet/db-manager" "^3.1.0"
+    "@pubsweet/logger" "^0.2.35"
     express-fileupload v1.1.1-alpha.2
+    node-wait-for-it "^0.2.0"
     passport "^0.4.0"
-    pubsweet-server "^13.6.0"
+    pubsweet-server "^13.8.0"
     tmp-promise "^2.0.0"
     waait "^1.0.5"
 
-"@pubsweet/logger@^0.2.30":
-  version "0.2.31"
-  resolved "https://registry.yarnpkg.com/@pubsweet/logger/-/logger-0.2.31.tgz#155318f56eb74813c588f2b75cf06ca2c9aa2a9d"
-  integrity sha512-hmJhPoE5t6Nt+iDMEqFxbKW2whgnK3ilFnMH3rrMgNwDVP4vgfi6ZoGt0GPIanY1IRPID1TPr7z7Oivig4HcEQ==
-  dependencies:
-    config "^3.0.1"
-    joi "^14.3.0"
-    lodash "^4.17.4"
-
-"@pubsweet/logger@^0.2.31", "@pubsweet/logger@^0.2.34", "@pubsweet/logger@^0.2.35":
+"@pubsweet/logger@^0.2.31", "@pubsweet/logger@^0.2.35":
   version "0.2.35"
   resolved "https://registry.yarnpkg.com/@pubsweet/logger/-/logger-0.2.35.tgz#5812c481c61a47c8fcd5639f53a3d39047dbaf99"
   integrity sha512-f4wjxPQrm0mRcgj97t95Cdtvns2Lbi4Wzv+FflpaNn67vnhViC540Kq4K/xSNEG+XoAVr3++ds/oVSmzEZCuQg==
@@ -1163,44 +1139,44 @@
     config "^3.0.1"
     lodash "^4.17.4"
 
-"@pubsweet/model-blog@^0.0.24":
-  version "0.0.24"
-  resolved "https://registry.yarnpkg.com/@pubsweet/model-blog/-/model-blog-0.0.24.tgz#840d82313a4e9553dd6651b2017ff66d952a61c6"
-  integrity sha512-esV7w/3gR3nwbxGCQWRBxYmn452MtHtwBQFGuaGBo60rup4XEs5J6LbqVsyuZu9FlIFoqib5Z+5t0jvbzdjIZg==
+"@pubsweet/model-blog@^0.0.28":
+  version "0.0.28"
+  resolved "https://registry.yarnpkg.com/@pubsweet/model-blog/-/model-blog-0.0.28.tgz#d235db58af05952ee8051ec85c03190cfd871ce6"
+  integrity sha512-N6A3NdktvhbbMm/lG70153Rr7hiIjqXr5oxV6T0hm7i7bSNN0NO48izgCSRTWH5oeChJ/ztlN9CyecLOS23KKQ==
   dependencies:
-    "@pubsweet/model-collection" "^4.0.18"
+    "@pubsweet/model-collection" "^4.0.22"
 
-"@pubsweet/model-blogpost@^0.0.24":
-  version "0.0.24"
-  resolved "https://registry.yarnpkg.com/@pubsweet/model-blogpost/-/model-blogpost-0.0.24.tgz#97679eb381d0b928f5711021104d7170b80cc3a5"
-  integrity sha512-XGwVAEm/sUyJT0QVCl4ZrvxN4wTaS1MQQnlX53+bGICyOBnW43D1pvVVAgxDqrGSrolIlN24PklQE21oMYnAww==
+"@pubsweet/model-blogpost@^0.0.28":
+  version "0.0.28"
+  resolved "https://registry.yarnpkg.com/@pubsweet/model-blogpost/-/model-blogpost-0.0.28.tgz#f6876eed9c92a8f264ac10b2d7137bada7189dbe"
+  integrity sha512-0imRTOGqKyyCo5iwZorqnOdoKcDDIRnM822cK+WD6wjXg5Q5wWZHjKdJYhyHXInhWc6TjOe5CEY1zlRxSLwC3Q==
   dependencies:
-    "@pubsweet/model-fragment" "^3.1.1"
+    "@pubsweet/model-fragment" "^3.1.5"
 
-"@pubsweet/model-collection@^4.0.18":
-  version "4.0.18"
-  resolved "https://registry.yarnpkg.com/@pubsweet/model-collection/-/model-collection-4.0.18.tgz#a69af4899c8a8be067a40f386996595312897c1a"
-  integrity sha512-3FVX70BpFvkdqlMlFMRSb1oO3EWsLGDCLLqSAA180rmcmNhyD0g79nOu0VDFFvgPdCx4n1JuLRolRNvnPLQcQQ==
+"@pubsweet/model-collection@^4.0.22":
+  version "4.0.22"
+  resolved "https://registry.yarnpkg.com/@pubsweet/model-collection/-/model-collection-4.0.22.tgz#969c6612dc02cd68bc5b0ed49ae338ffe667606f"
+  integrity sha512-VeMvSf/dbgrr9jNnTuEF7XXl4SVJjgV99DUp0po4froAdSJTdzpNkVvByhPwzwdVwceJRkCDazs1f8qknhjM+w==
   dependencies:
-    "@pubsweet/base-model" "^3.4.1"
+    "@pubsweet/base-model" "^3.5.1"
     http-status-codes "^1.3.0"
     passport "^0.4.0"
-    pubsweet-sse "^1.0.25"
+    pubsweet-sse "^1.0.29"
 
-"@pubsweet/model-fragment@^3.1.1":
-  version "3.1.1"
-  resolved "https://registry.yarnpkg.com/@pubsweet/model-fragment/-/model-fragment-3.1.1.tgz#ab150c459cde23a71d61f0efd963f5f9f309e594"
-  integrity sha512-xyonkaFDXg9K/9dyMFUbGP6NYh5m2RMB220dFVZQl04PNlp8B4UUcB7jXLsn4qhhEaDXSy9n+rxlnMxdsxlegA==
+"@pubsweet/model-fragment@^3.1.5":
+  version "3.1.5"
+  resolved "https://registry.yarnpkg.com/@pubsweet/model-fragment/-/model-fragment-3.1.5.tgz#cf16f7a8e12d56005328a9328147cf316ddf7c85"
+  integrity sha512-yRS/6AzwBVxHVT8nkr6uDVTxkY+RiYKvVxNcMOhzZ1lAmRAgcjSa+pyOAvrxu2I8aSlqV3ajyLedRFa9r0jZJA==
   dependencies:
-    "@pubsweet/base-model" "^3.4.1"
-    "@pubsweet/errors" "^2.0.21"
-    "@pubsweet/model-team" "^2.1.1"
-    "@pubsweet/models" "^0.2.18"
+    "@pubsweet/base-model" "^3.5.1"
+    "@pubsweet/errors" "^2.0.25"
+    "@pubsweet/model-team" "^2.2.0"
+    "@pubsweet/models" "^0.3.0"
     http-status-codes "^1.3.0"
     passport "^0.4.0"
-    pubsweet-sse "^1.0.25"
+    pubsweet-sse "^1.0.29"
 
-"@pubsweet/model-team@^2.1.1":
+"@pubsweet/model-team@^2.1.1", "@pubsweet/model-team@^2.2.0":
   version "2.2.0"
   resolved "https://registry.yarnpkg.com/@pubsweet/model-team/-/model-team-2.2.0.tgz#f2acd2cd0f1ea562d88d97e8ed97d2111b1da9fa"
   integrity sha512-wVhmVqSIfrFkC3FF6bderqgLA2OcsdzlCXo7FgB+kPbR4CPSmEL8fmynMuzCjqARkicv03PB3mpFzM1/h2sGTA==
@@ -1228,28 +1204,14 @@
     passport-http-bearer "^1.0.1"
     passport-local "^1.0.0"
 
-"@pubsweet/models@0.2.18":
-  version "0.2.18"
-  resolved "https://registry.yarnpkg.com/@pubsweet/models/-/models-0.2.18.tgz#ce1fc6c9177c9fe3720d436c7b6e76cd32fbc0c6"
-  integrity sha512-k8HsB6wmbiE5+kwn5rn2oqfKisvKU0afYJpC3oZ3VgTqakNp/6BBRtBl5nEKDYcVnBT+JhoQJrVjBDkZCHE/Yg==
-  dependencies:
-    "@pubsweet/logger" "^0.2.31"
-
-"@pubsweet/models@^0.2.18":
-  version "0.2.21"
-  resolved "https://registry.yarnpkg.com/@pubsweet/models/-/models-0.2.21.tgz#ef412424f051ddab2dca19678bf85a4f5ebf4b69"
-  integrity sha512-TYPo1DGZ03k+u9cgdgK+hdr4VbP0ewyfj7fKiJu3wUjNX1pBJJ8zra3G04Okgq5yfa8rQQsIiyns0OjraSZLxg==
-  dependencies:
-    "@pubsweet/logger" "^0.2.34"
-
-"@pubsweet/models@^0.3.0":
+"@pubsweet/models@0.3.0", "@pubsweet/models@^0.3.0":
   version "0.3.0"
   resolved "https://registry.yarnpkg.com/@pubsweet/models/-/models-0.3.0.tgz#65afdbe279efbc61c678e1e8c0162e42b7c93a30"
   integrity sha512-LiGN57Kp0GfBtnUooZ1xMkQVWDN4efRvfKvRL7exx8wX/wjm1/KbUuxXQ2O9NWd88v/ydNca0B7txnxUqvopug==
   dependencies:
     "@pubsweet/logger" "^0.2.35"
 
-"@pubsweet/ui-toolkit@^2.2.10", "@pubsweet/ui-toolkit@^2.2.14":
+"@pubsweet/ui-toolkit@^2.2.14":
   version "2.2.14"
   resolved "https://registry.yarnpkg.com/@pubsweet/ui-toolkit/-/ui-toolkit-2.2.14.tgz#d4162cebb45edd5434b90b6637356f2e814665f4"
   integrity sha512-BD7NOYwoRTE80SVH3vU0qsP4cJBnvk4aTFNOvWUf4b0J9DXODx+XIo3wttoVlQ3wySjqBTumjRb7PwIJmN0L7Q==
@@ -1258,28 +1220,6 @@
     lodash "^4.17.4"
     styled-components "^4.1.1"
 
-"@pubsweet/ui@^10.3.10":
-  version "10.3.10"
-  resolved "https://registry.yarnpkg.com/@pubsweet/ui/-/ui-10.3.10.tgz#a59e2d4828f33971183e9c31698b1ab3ef3f0aad"
-  integrity sha512-TIDAkB72DOrZqcHEiMD9NltNakVh8TjxL8woSjG/r5DekEWjKUTKzrs06uPndrEL42AnYSwXOeP3mNFRv+DScQ==
-  dependencies:
-    "@pubsweet/ui-toolkit" "^2.2.10"
-    classnames "^2.2.5"
-    enzyme "^3.7.0"
-    enzyme-adapter-react-16 "^1.12.1"
-    formik "^1.4.2"
-    invariant "^2.2.3"
-    lodash "^4.17.4"
-    moment "^2.22.1"
-    prop-types "^15.5.10"
-    react "^16.8.6"
-    react-dom "^16.8.6"
-    react-feather "^1.0.8"
-    react-router-dom "^5.0.0"
-    react-tag-autocomplete "^5.5.0"
-    recompose "^0.30.0"
-    styled-components "^4.1.1"
-
 "@pubsweet/ui@^12.1.0":
   version "12.1.0"
   resolved "https://registry.yarnpkg.com/@pubsweet/ui/-/ui-12.1.0.tgz#36995aaa20930d6b38fb5d646c5ef60972fda085"
@@ -1471,9 +1411,9 @@
   integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
 
 "@types/node@*":
-  version "12.12.7"
-  resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.7.tgz#01e4ea724d9e3bd50d90c11fd5980ba317d8fa11"
-  integrity sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w==
+  version "12.12.8"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.8.tgz#dab418655af39ce2fa99286a0bed21ef8072ac9d"
+  integrity sha512-XLla8N+iyfjvsa0KKV+BP/iGSoTmwxsu5Ci5sM33z9TjohF72DEz95iNvD6pPmemvbQgxAv/909G73gUn8QR7w==
 
 "@types/node@>=6":
   version "12.7.2"
@@ -1731,7 +1671,7 @@ aggregate-error@^3.0.0:
     clean-stack "^2.0.0"
     indent-string "^4.0.0"
 
-airbnb-prop-types@^2.13.2:
+airbnb-prop-types@^2.15.0:
   version "2.15.0"
   resolved "https://registry.yarnpkg.com/airbnb-prop-types/-/airbnb-prop-types-2.15.0.tgz#5287820043af1eb469f5b0af0d6f70da6c52aaef"
   integrity sha512-jUh2/hfKsRjNFC4XONQrxo/n/3GG4Tn6Hl0WlFQN5PY9OMC9loSCoAYKnZsWaP8wEfd5xcrPloK0Zg6iS1xwVA==
@@ -1892,7 +1832,7 @@ apollo-cache@1.3.2, apollo-cache@^1.3.2:
     apollo-utilities "^1.3.2"
     tslib "^1.9.3"
 
-apollo-client@^2.5.1:
+apollo-client@^2.6.4:
   version "2.6.4"
   resolved "https://registry.yarnpkg.com/apollo-client/-/apollo-client-2.6.4.tgz#872c32927263a0d34655c5ef8a8949fbb20b6140"
   integrity sha512-oWOwEOxQ9neHHVZrQhHDbI6bIibp9SHgxaLRVPoGvOFy7OH5XUykZE7hBQAVxq99tQjBzgytaZffQkeWo1B4VQ==
@@ -1959,7 +1899,7 @@ apollo-link-context@^1.0.17:
     apollo-link "^1.2.12"
     tslib "^1.9.3"
 
-apollo-link-http-common@^0.2.14, apollo-link-http-common@^0.2.4:
+apollo-link-http-common@^0.2.14:
   version "0.2.14"
   resolved "https://registry.yarnpkg.com/apollo-link-http-common/-/apollo-link-http-common-0.2.14.tgz#d3a195c12e00f4e311c417f121181dcc31f7d0c8"
   integrity sha512-v6mRU1oN6XuX8beVIRB6OpF4q1ULhSnmy7ScnHnuo1qV6GaFmDcbdvXqxIkAV1Q8SQCo2lsv4HeqJOWhFfApOg==
@@ -2098,14 +2038,15 @@ apollo-tracing@^0.8.5:
     apollo-server-env "^2.4.3"
     graphql-extensions "^0.10.4"
 
-apollo-upload-client@^8.0.0:
-  version "8.1.0"
-  resolved "https://registry.yarnpkg.com/apollo-upload-client/-/apollo-upload-client-8.1.0.tgz#db99eed6af926dbd54cb0bbde30345672c97fc5f"
-  integrity sha512-JEgStzhnwybj1ifE2nViLEl7NTM5+zS++fKbDL95PIpodg2AdYeeN7eEa7RXpYD14iC3FVcsfqgGMREv2+cSxw==
+apollo-upload-client@^11.0.0:
+  version "11.0.0"
+  resolved "https://registry.yarnpkg.com/apollo-upload-client/-/apollo-upload-client-11.0.0.tgz#465a2ed5756e6155f53befaf82d17bdb08c82060"
+  integrity sha512-JChTrBi1VSF8u6OPrkWUApJlyUvzwhw98kqRB3fSi7/CU6z0OUD42Mee9s5h8mfjKEfOanK6GNZhF4t2tIPXSw==
   dependencies:
-    "@babel/runtime" "^7.0.0-beta.51"
-    apollo-link-http-common "^0.2.4"
-    extract-files "^3.1.0"
+    "@babel/runtime" "^7.5.4"
+    apollo-link "^1.2.12"
+    apollo-link-http-common "^0.2.14"
+    extract-files "^5.0.1"
 
 apollo-utilities@1.3.2, apollo-utilities@^1.0.1, apollo-utilities@^1.2.1, apollo-utilities@^1.3.0, apollo-utilities@^1.3.2:
   version "1.3.2"
@@ -2261,12 +2202,12 @@ array.prototype.find@^2.1.0:
     es-abstract "^1.13.0"
 
 array.prototype.flat@^1.2.1:
-  version "1.2.1"
-  resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.1.tgz#812db8f02cad24d3fab65dd67eabe3b8903494a4"
-  integrity sha512-rVqIs330nLJvfC7JqYvEWwqVr5QjYF1ib02i3YJtR/fICO6527Tjpc/e4Mvmxh3GIePPreRXMdaGyC99YphWEw==
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.2.tgz#8f3c71d245ba349b6b64b4078f76f5576f1fd723"
+  integrity sha512-VXjh7lAL4KXKF2hY4FnEW9eRW6IhdvFW1sN/JwLbmECbCgACCnBHNyP3lFiYuttr0jxRN9Bsc5+G27dMseSWqQ==
   dependencies:
-    define-properties "^1.1.2"
-    es-abstract "^1.10.0"
+    define-properties "^1.1.3"
+    es-abstract "^1.15.0"
     function-bind "^1.1.1"
 
 arrify@^1.0.1:
@@ -4216,12 +4157,12 @@ commander@2.17.x:
   resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf"
   integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==
 
-commander@^2.11.0, commander@^2.14.1, commander@^2.19.0, commander@^2.9.0:
+commander@^2.11.0, commander@^2.14.1, commander@^2.9.0:
   version "2.20.0"
   resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422"
   integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==
 
-commander@^2.20.0, commander@^2.8.1:
+commander@^2.19.0, commander@^2.20.0, commander@^2.8.1:
   version "2.20.3"
   resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
   integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
@@ -4987,9 +4928,9 @@ dom-converter@^0.2:
     utila "~0.4"
 
 dom-serializer@0:
-  version "0.2.1"
-  resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.1.tgz#13650c850daffea35d8b626a4cfc4d3a17643fdb"
-  integrity sha512-sK3ujri04WyjwQXVoK4PU3y8ula1stq10GJZpqHIUgoGZdsGzAGu65BnU3d08aTVSvO7mGPZUc0wTEDL+qGE0Q==
+  version "0.2.2"
+  resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51"
+  integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==
   dependencies:
     domelementtype "^2.0.1"
     entities "^2.0.0"
@@ -5186,30 +5127,39 @@ entities@^2.0.0:
   integrity sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==
 
 enzyme-adapter-react-16@^1.12.1:
-  version "1.14.0"
-  resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.14.0.tgz#204722b769172bcf096cb250d33e6795c1f1858f"
-  integrity sha512-7PcOF7pb4hJUvjY7oAuPGpq3BmlCig3kxXGi2kFx0YzJHppqX1K8IIV9skT1IirxXlu8W7bneKi+oQ10QRnhcA==
+  version "1.15.1"
+  resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.1.tgz#8ad55332be7091dc53a25d7d38b3485fc2ba50d5"
+  integrity sha512-yMPxrP3vjJP+4wL/qqfkT6JAIctcwKF+zXO6utlGPgUJT2l4tzrdjMDWGd/Pp1BjHBcljhN24OzNEGRteibJhA==
   dependencies:
-    enzyme-adapter-utils "^1.12.0"
+    enzyme-adapter-utils "^1.12.1"
+    enzyme-shallow-equal "^1.0.0"
     has "^1.0.3"
     object.assign "^4.1.0"
     object.values "^1.1.0"
     prop-types "^15.7.2"
-    react-is "^16.8.6"
+    react-is "^16.10.2"
     react-test-renderer "^16.0.0-0"
     semver "^5.7.0"
 
-enzyme-adapter-utils@^1.12.0:
-  version "1.12.0"
-  resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.12.0.tgz#96e3730d76b872f593e54ce1c51fa3a451422d93"
-  integrity sha512-wkZvE0VxcFx/8ZsBw0iAbk3gR1d9hK447ebnSYBf95+r32ezBq+XDSAvRErkc4LZosgH8J7et7H7/7CtUuQfBA==
+enzyme-adapter-utils@^1.12.1:
+  version "1.12.1"
+  resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.12.1.tgz#e828e0d038e2b1efa4b9619ce896226f85c9dd88"
+  integrity sha512-KWiHzSjZaLEoDCOxY8Z1RAbUResbqKN5bZvenPbfKtWorJFVETUw754ebkuCQ3JKm0adx1kF8JaiR+PHPiP47g==
   dependencies:
-    airbnb-prop-types "^2.13.2"
-    function.prototype.name "^1.1.0"
+    airbnb-prop-types "^2.15.0"
+    function.prototype.name "^1.1.1"
     object.assign "^4.1.0"
-    object.fromentries "^2.0.0"
+    object.fromentries "^2.0.1"
     prop-types "^15.7.2"
-    semver "^5.6.0"
+    semver "^5.7.0"
+
+enzyme-shallow-equal@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.0.tgz#d8e4603495e6ea279038eef05a4bf4887b55dc69"
+  integrity sha512-VUf+q5o1EIv2ZaloNQQtWCJM9gpeux6vudGVH6vLmfPXFLRuxl5+Aq3U260wof9nn0b0i+P5OEUXm1vnxkRpXQ==
+  dependencies:
+    has "^1.0.3"
+    object-is "^1.0.1"
 
 enzyme@^3.7.0:
   version "3.10.0"
@@ -5259,19 +5209,7 @@ error-stack-parser@^1.3.3, error-stack-parser@^1.3.6:
   dependencies:
     stackframe "^0.3.1"
 
-es-abstract@^1.10.0, es-abstract@^1.13.0:
-  version "1.13.0"
-  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9"
-  integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==
-  dependencies:
-    es-to-primitive "^1.2.0"
-    function-bind "^1.1.1"
-    has "^1.0.3"
-    is-callable "^1.1.4"
-    is-regex "^1.0.4"
-    object-keys "^1.0.12"
-
-es-abstract@^1.12.0, es-abstract@^1.15.0, es-abstract@^1.5.1, es-abstract@^1.7.0:
+es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.15.0, es-abstract@^1.5.1, es-abstract@^1.7.0:
   version "1.16.0"
   resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.0.tgz#d3a26dc9c3283ac9750dca569586e976d9dcc06d"
   integrity sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==
@@ -5786,12 +5724,10 @@ extglob@^2.0.4:
     snapdragon "^0.8.1"
     to-regex "^3.0.1"
 
-extract-files@^3.1.0:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/extract-files/-/extract-files-3.1.0.tgz#b70424c9d4a1a4208efe22069388f428e4ae00f1"
-  integrity sha512-urkJPM4N88CMy1AfDw+Avudon6fToTsaG5j5VN0aybn88udv1yrERFCweV78NaZg7DOFsQULkFgvP64vNQFNMQ==
-  dependencies:
-    "@babel/runtime" "^7.0.0-beta.38"
+extract-files@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/extract-files/-/extract-files-5.0.1.tgz#c9492a8410be643e260a376f0151361993d5f659"
+  integrity sha512-qRW6y9eKF0VbCyOoOEtFhzJ3uykAw8GKwQVXyAIqwocyEWW4m+v+evec34RwtUkkxxHh7NKBLJ6AnXM8W4dH5w==
 
 extsprintf@1.3.0:
   version "1.3.0"
@@ -6263,9 +6199,9 @@ functional-red-black-tree@^1.0.1:
   integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
 
 functions-have-names@^1.1.1:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.1.1.tgz#79d35927f07b8e7103d819fed475b64ccf7225ea"
-  integrity sha512-U0kNHUoxwPNPWOJaMG7Z00d4a/qZVrFtzWJRaK8V9goaVOCXBSQSJpt3MYGNtkScKEBKovxLjnNdC9MlXwo5Pw==
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.0.tgz#83da7583e4ea0c9ac5ff530f73394b033e0bf77d"
+  integrity sha512-zKXyzksTeaCSw5wIX79iCA40YAa6CJMJgNg9wdkU/ERBrIdPSimPICYiLp65lRbSBqtiHql/HZfS2DyI/AH6tQ==
 
 g-status@^2.0.2:
   version "2.0.2"
@@ -6775,11 +6711,6 @@ hmac-drbg@^1.0.0:
     minimalistic-assert "^1.0.0"
     minimalistic-crypto-utils "^1.0.1"
 
-hoek@6.x.x:
-  version "6.1.3"
-  resolved "https://registry.yarnpkg.com/hoek/-/hoek-6.1.3.tgz#73b7d33952e01fe27a38b0457294b79dd8da242c"
-  integrity sha512-YXXAAhmF9zpQbC7LEcREFtXfGq5K1fmd+4PHkBq8NUqmzW3G+Dq10bI/i0KucLRwss3YYFQ0fSfoxBZYiGUqtQ==
-
 hoist-non-react-statics@^2.3.1:
   version "2.5.5"
   resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47"
@@ -7694,15 +7625,6 @@ joi-browser@^13.0.1:
   resolved "https://registry.yarnpkg.com/joi-browser/-/joi-browser-13.4.0.tgz#b72ba61b610e3f58e51b563a14e0f5225cfb6896"
   integrity sha512-TfzJd2JaJ/lg/gU+q5j9rLAjnfUNF9DUmXTP9w+GfmG79LjFOXFeM7hIFuXCBcZCivUDFwd9l1btTV9rhHumtQ==
 
-joi@^14.3.0:
-  version "14.3.1"
-  resolved "https://registry.yarnpkg.com/joi/-/joi-14.3.1.tgz#164a262ec0b855466e0c35eea2a885ae8b6c703c"
-  integrity sha512-LQDdM+pkOrpAn4Lp+neNIFV3axv1Vna3j38bisbQhETPMANYRbFJFUyOZcOClYvM/hppMhGWuKSFEK9vjrB+bQ==
-  dependencies:
-    hoek "6.x.x"
-    isemail "3.x.x"
-    topo "3.x.x"
-
 js-base64@^2.1.8:
   version "2.5.1"
   resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.5.1.tgz#1efa39ef2c5f7980bb1784ade4a8af2de3291121"
@@ -8862,9 +8784,9 @@ ncp@1.0.x:
   integrity sha1-0VNn5cuHQyuhF9K/gP30Wuz7QkY=
 
 nearley@^2.7.10:
-  version "2.18.0"
-  resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.18.0.tgz#a9193612dd6d528a2e47e743b1dc694cfe105223"
-  integrity sha512-/zQOMCeJcioI0xJtd5RpBiWw2WP7wLe6vq8/3Yu0rEwgus/G/+pViX80oA87JdVgjRt2895mZSv2VfZmy4W1uw==
+  version "2.19.0"
+  resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.19.0.tgz#37717781d0fd0f2bfc95e233ebd75678ca4bda46"
+  integrity sha512-2v52FTw7RPqieZr3Gth1luAXZR7Je6q3KaDHY5bjl/paDUdMu35fZ8ICNgiYJRr3tf3NMvIQQR1r27AvEr9CRA==
   dependencies:
     commander "^2.19.0"
     moo "^0.4.3"
@@ -9047,6 +8969,11 @@ node-version@^1.0.0:
   resolved "https://registry.yarnpkg.com/node-version/-/node-version-1.2.0.tgz#34fde3ffa8e1149bd323983479dda620e1b5060d"
   integrity sha512-ma6oU4Sk0qOoKEAymVoTvk8EdXEobdS7m/mAGhDJ8Rouugho48crHBORAmy5BoOcv8wraPM6xumapQp5hl4iIQ==
 
+node-wait-for-it@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/node-wait-for-it/-/node-wait-for-it-0.2.0.tgz#598f13cedd25be61f5d2ab1691eb1923eea17464"
+  integrity sha512-y3EiZ5xUhbP3vhptMVjyaVVWPtmb0mgXJUVRpMY6TM+CGjDg1tc1+foxF8sgiUVHqwOKtRZfqcfxDPNElNLofQ==
+
 nodemailer@5.0.0:
   version "5.0.0"
   resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-5.0.0.tgz#bcb409eca613114e85de42646d0ce7f1fa70b716"
@@ -9187,9 +9114,9 @@ object-copy@^0.1.0:
     kind-of "^3.0.3"
 
 object-inspect@^1.6.0:
-  version "1.6.0"
-  resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b"
-  integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67"
+  integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==
 
 object-is@^1.0.1:
   version "1.0.1"
@@ -9243,7 +9170,7 @@ object.entries@^1.0.4, object.entries@^1.1.0:
     function-bind "^1.1.1"
     has "^1.0.3"
 
-object.fromentries@^2.0.0:
+object.fromentries@^2.0.0, object.fromentries@^2.0.1:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.1.tgz#050f077855c7af8ae6649f45c80b16ee2d31e704"
   integrity sha512-PUQv8Hbg3j2QX0IQYv3iAGCbGcu4yY4KQ92/dhA4sFSixBmSmp13UpDLs6jGK8rBtbmhNNIK99LD2k293jpiGA==
@@ -9909,11 +9836,6 @@ pkginfo@0.3.x:
   resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.3.1.tgz#5b29f6a81f70717142e09e765bbeab97b4f81e21"
   integrity sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=
 
-pkginfo@0.x.x:
-  version "0.4.1"
-  resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.1.tgz#b5418ef0439de5425fc4995042dced14fb2a84ff"
-  integrity sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=
-
 please-upgrade-node@^3.0.2:
   version "3.2.0"
   resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942"
@@ -10102,19 +10024,7 @@ promisify-event@^1.0.0:
   dependencies:
     pinkie-promise "^2.0.0"
 
-prompt@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/prompt/-/prompt-1.0.0.tgz#8e57123c396ab988897fb327fd3aedc3e735e4fe"
-  integrity sha1-jlcSPDlquYiJf7Mn/Trtw+c15P4=
-  dependencies:
-    colors "^1.1.2"
-    pkginfo "0.x.x"
-    read "1.0.x"
-    revalidator "0.1.x"
-    utile "0.3.x"
-    winston "2.1.x"
-
-prompt@flatiron/prompt#1c95d1d8d333b5fbc13fa5f0619f3dcf0d514f87:
+prompt@^1.0.0, prompt@flatiron/prompt#1c95d1d8d333b5fbc13fa5f0619f3dcf0d514f87:
   version "1.0.0"
   resolved "https://codeload.github.com/flatiron/prompt/tar.gz/1c95d1d8d333b5fbc13fa5f0619f3dcf0d514f87"
   dependencies:
@@ -10318,20 +10228,23 @@ public-encrypt@^4.0.0:
     randombytes "^2.0.1"
     safe-buffer "^5.1.2"
 
-pubsweet-client@^9.2.13:
-  version "9.2.13"
-  resolved "https://registry.yarnpkg.com/pubsweet-client/-/pubsweet-client-9.2.13.tgz#1dbce545ecc4835af5d769902eae03a896acbae8"
-  integrity sha512-wZsV2pgQtz4I3PjyWHx93Pxq2JmDm+t2aLZAbjF/pjKC0iln4M19u/gymhdikPomsbE6CNgvlpET9s+I0WX9YQ==
+pubsweet-client@^10.1.0:
+  version "10.1.0"
+  resolved "https://registry.yarnpkg.com/pubsweet-client/-/pubsweet-client-10.1.0.tgz#2251c706fb8827b1df9de84e6def4d4a320b9a74"
+  integrity sha512-02QWx6iBgZe3Tf9ZUKesL2r7P/PAiSEX7iHeqyQ42S5VC5jTwNADVwobR5kVCBpCK23hn+OVXNpKyl28Wbi66w==
   dependencies:
-    "@pubsweet/ui" "^10.3.10"
-    "@pubsweet/ui-toolkit" "^2.2.10"
+    "@apollo/react-common" "^3.0.1"
+    "@apollo/react-components" "^3.0.1"
+    "@apollo/react-hoc" "^3.0.1"
+    "@pubsweet/ui" "^12.1.0"
+    "@pubsweet/ui-toolkit" "^2.2.14"
     apollo-cache-inmemory "^1.5.1"
-    apollo-client "^2.5.1"
+    apollo-client "^2.6.4"
     apollo-link "^1.2.11"
     apollo-link-context "^1.0.17"
     apollo-link-http "^1.5.14"
     apollo-link-ws "^1.0.17"
-    apollo-upload-client "^8.0.0"
+    apollo-upload-client "^11.0.0"
     apollo-utilities "^1.2.1"
     authsome "^0.1.0"
     config "^3.0.1"
@@ -10343,8 +10256,7 @@ pubsweet-client@^9.2.13:
     lint-staged "^8.1.5"
     lodash "^4.0.0"
     prop-types "^15.5.8"
-    react "^16.2.0"
-    react-apollo "^2.5.4"
+    react "^16.9.0"
     react-router "^5.0.0"
     react-router-dom "^5.0.0"
     reselect "^3.0.1"
@@ -10376,52 +10288,6 @@ pubsweet-component-signup@^2.1.7:
     prop-types "^15.5.10"
     recompose "^0.30.0"
 
-pubsweet-server@^13.6.0:
-  version "13.6.1"
-  resolved "https://registry.yarnpkg.com/pubsweet-server/-/pubsweet-server-13.6.1.tgz#9fe92abcefd26fcd872f7a0510e979d5eea76dda"
-  integrity sha512-M5Xzg0I9BGJwu9ukYhQrn83tTDap1bdu1vEKwhhBKeifW1w60yNd0i4oe0Sqo2pGTjEz9KNWSEgI3tIXGuXAcw==
-  dependencies:
-    "@pubsweet/db-manager" "^3.0.17"
-    "@pubsweet/errors" "^2.0.21"
-    "@pubsweet/logger" "^0.2.31"
-    "@pubsweet/models" "^0.2.18"
-    apollo-server-express "^2.4.8"
-    authsome "^0.1.0"
-    bluebird "^3.5.1"
-    body-parser "^1.15.2"
-    colors "^1.1.2"
-    config "^3.0.1"
-    cookie-parser "^1.4.3"
-    dataloader "^1.4.0"
-    dotenv "^4.0.0"
-    express "^4.16.1"
-    fs-extra "^7.0.1"
-    graphql "^14.2.1"
-    graphql-postgres-subscriptions "^1.0.4"
-    graphql-tools "^4.0.4"
-    helmet "^3.8.1"
-    http-status-codes "^1.0.6"
-    joi "^14.3.0"
-    jsonwebtoken "^8.4.0"
-    lodash "^4.0.0"
-    minimist "^1.2.0"
-    morgan "^1.8.2"
-    multer "^1.1.0"
-    objection "^1.5.3"
-    passport "^0.4.0"
-    passport-anonymous "^1.0.1"
-    passport-http-bearer "^1.0.1"
-    passport-local "^1.0.0"
-    pg "^7.4.1"
-    pg-boss "^3.1.2"
-    promise-queue "^2.2.3"
-    prompt "^1.0.0"
-    pubsweet-sse "^1.0.25"
-    subscriptions-transport-ws "^0.9.12"
-    uuid "^3.0.1"
-    waait "^1.0.2"
-    winston "^2.2.0"
-
 pubsweet-server@^13.6.1, pubsweet-server@^13.8.0:
   version "13.8.0"
   resolved "https://registry.yarnpkg.com/pubsweet-server/-/pubsweet-server-13.8.0.tgz#0060d5deca43bef7f5807af4749592f6f5588eea"
@@ -10468,7 +10334,7 @@ pubsweet-server@^13.6.1, pubsweet-server@^13.8.0:
     waait "^1.0.2"
     winston "^2.2.0"
 
-pubsweet-sse@^1.0.25, pubsweet-sse@^1.0.29:
+pubsweet-sse@^1.0.29:
   version "1.0.29"
   resolved "https://registry.yarnpkg.com/pubsweet-sse/-/pubsweet-sse-1.0.29.tgz#4dc5f57be59abc81fbbe57bdf67ba93758b02bfc"
   integrity sha512-ZF69y1HvAn+SGtQCUZSsLteMOLZJ8D1ECz6Z9rja1shYiYW7ca/THd5yU15tTVtgYN2To/0b5GWUJIeSLHp45w==
@@ -10657,29 +10523,6 @@ rc@^1.2.7:
     minimist "^1.2.0"
     strip-json-comments "~2.0.1"
 
-react-apollo@^2.5.4:
-  version "2.5.8"
-  resolved "https://registry.yarnpkg.com/react-apollo/-/react-apollo-2.5.8.tgz#c7a593b027efeefdd8399885e0ac6bec3b32623c"
-  integrity sha512-60yOQrnNosxU/tRbOxGDaYNLFcOKmQqxHPhxyvKTlGIaF/rRCXQRKixUgWVffpEupSHHD7psY5k5ZOuZsdsSGQ==
-  dependencies:
-    apollo-utilities "^1.3.0"
-    fast-json-stable-stringify "^2.0.0"
-    hoist-non-react-statics "^3.3.0"
-    lodash.isequal "^4.5.0"
-    prop-types "^15.7.2"
-    ts-invariant "^0.4.2"
-    tslib "^1.9.3"
-
-react-dom@^16.8.6:
-  version "16.9.0"
-  resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.9.0.tgz#5e65527a5e26f22ae3701131bcccaee9fb0d3962"
-  integrity sha512-YFT2rxO9hM70ewk9jq0y6sQk8cL02xm4+IzYBz75CQGlClQQ1Bxq0nhHF6OtSbit+AIahujJgb/CPRibFkMNJQ==
-  dependencies:
-    loose-envify "^1.1.0"
-    object-assign "^4.1.1"
-    prop-types "^15.6.2"
-    scheduler "^0.15.0"
-
 react-dom@^16.9.0:
   version "16.12.0"
   resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.12.0.tgz#0da4b714b8d13c2038c9396b54a92baea633fe11"
@@ -10714,16 +10557,11 @@ react-hot-loader@^4.8.3:
     shallowequal "^1.1.0"
     source-map "^0.7.3"
 
-react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1:
+react-is@^16.10.2, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.6, react-is@^16.9.0:
   version "16.12.0"
   resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c"
   integrity sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q==
 
-react-is@^16.8.6, react-is@^16.9.0:
-  version "16.9.0"
-  resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.9.0.tgz#21ca9561399aad0ff1a7701c01683e8ca981edcb"
-  integrity sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw==
-
 react-lifecycles-compat@^3.0.2, react-lifecycles-compat@^3.0.4:
   version "3.0.4"
   resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362"
@@ -10775,34 +10613,25 @@ react-router@^5.0.0:
     tiny-warning "^1.0.0"
 
 react-tag-autocomplete@^5.5.0:
-  version "5.11.1"
-  resolved "https://registry.yarnpkg.com/react-tag-autocomplete/-/react-tag-autocomplete-5.11.1.tgz#ee09dccc065c50fd41c31bed8e9129a1a911f4b0"
-  integrity sha512-oniQEAC8OJFh/h9TnTHIWYhp9bCbBlr+UlayhG+/QJZguBjJe18Ay0POe91J9DE9v1ZxUUzMQWEerZ3uOENGCg==
+  version "5.11.2"
+  resolved "https://registry.yarnpkg.com/react-tag-autocomplete/-/react-tag-autocomplete-5.11.2.tgz#6a547015dca591f8936e07609ce3d20d53077717"
+  integrity sha512-kuxCI/CtMyeu4QLDc/iuPJHikl0Ti6rvpatFHi8Y8V5iUqwvchKD9X0P26nIzp+QdagkggXc5gJzTaTRYiPFCw==
 
 react-test-renderer@^16.0.0-0:
-  version "16.9.0"
-  resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.9.0.tgz#7ed657a374af47af88f66f33a3ef99c9610c8ae9"
-  integrity sha512-R62stB73qZyhrJo7wmCW9jgl/07ai+YzvouvCXIJLBkRlRqLx4j9RqcLEAfNfU3OxTGucqR2Whmn3/Aad6L3hQ==
+  version "16.12.0"
+  resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.12.0.tgz#11417ffda579306d4e841a794d32140f3da1b43f"
+  integrity sha512-Vj/teSqt2oayaWxkbhQ6gKis+t5JrknXfPVo+aIJ8QwYAqMPH77uptOdrlphyxl8eQI/rtkOYg86i/UWkpFu0w==
   dependencies:
     object-assign "^4.1.1"
     prop-types "^15.6.2"
-    react-is "^16.9.0"
-    scheduler "^0.15.0"
+    react-is "^16.8.6"
+    scheduler "^0.18.0"
 
 react-uid@^2.2.0:
   version "2.2.0"
   resolved "https://registry.yarnpkg.com/react-uid/-/react-uid-2.2.0.tgz#0f77e1e0594fbf29fc4fe528cc9aa415c5bf9159"
   integrity sha512-z+g5+hFOQ08hCfrGcJ1PNs+cmvH8Uq2CVzCmPeWBsUi5A4W4NWXR5jouledzy3oSKGMU9HOzf8zFuGi15TXJoQ==
 
-react@^16.2.0, react@^16.8.6:
-  version "16.9.0"
-  resolved "https://registry.yarnpkg.com/react/-/react-16.9.0.tgz#40ba2f9af13bc1a38d75dbf2f4359a5185c4f7aa"
-  integrity sha512-+7LQnFBwkiw+BobzOF6N//BdoNw0ouwmSJTEm9cglOOmsg/TMiFHZLe2sEoN5M7LgJTj9oHH0gxklfnQe66S1w==
-  dependencies:
-    loose-envify "^1.1.0"
-    object-assign "^4.1.1"
-    prop-types "^15.6.2"
-
 react@^16.9.0:
   version "16.12.0"
   resolved "https://registry.yarnpkg.com/react/-/react-16.12.0.tgz#0c0a9c6a142429e3614834d5a778e18aa78a0b83"
@@ -11388,14 +11217,6 @@ sax@>=0.6.0, sax@^1.2.1, sax@^1.2.4:
   resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
   integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
 
-scheduler@^0.15.0:
-  version "0.15.0"
-  resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.15.0.tgz#6bfcf80ff850b280fed4aeecc6513bc0b4f17f8e"
-  integrity sha512-xAefmSfN6jqAa7Kuq7LIJY0bwAPG3xlCj0HMEBQk1lxYiDKZscY2xJ5U/61ZTrYbmNQbXa+gc7czPkVo11tnCg==
-  dependencies:
-    loose-envify "^1.1.0"
-    object-assign "^4.1.1"
-
 scheduler@^0.18.0:
   version "0.18.0"
   resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.18.0.tgz#5901ad6659bc1d8f3fdaf36eb7a67b0d6746b1c4"
@@ -12571,13 +12392,6 @@ toidentifier@1.0.0:
   resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553"
   integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==
 
-topo@3.x.x:
-  version "3.0.3"
-  resolved "https://registry.yarnpkg.com/topo/-/topo-3.0.3.tgz#d5a67fb2e69307ebeeb08402ec2a2a6f5f7ad95c"
-  integrity sha512-IgpPtvD4kjrJ7CRA3ov2FhWQADwv+Tdqbsf1ZnPUSAtCJ9e1Z44MmoSGDXGk4IppoZA7jd/QRkNddlLJWlUZsQ==
-  dependencies:
-    hoek "6.x.x"
-
 toposort@^1.0.0:
   version "1.0.7"
   resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.7.tgz#2e68442d9f64ec720b8cc89e6443ac6caa950029"
@@ -12632,7 +12446,7 @@ truncate-utf8-bytes@^1.0.0:
   dependencies:
     utf8-byte-length "^1.0.1"
 
-ts-invariant@^0.4.0, ts-invariant@^0.4.2, ts-invariant@^0.4.4:
+ts-invariant@^0.4.0, ts-invariant@^0.4.4:
   version "0.4.4"
   resolved "https://registry.yarnpkg.com/ts-invariant/-/ts-invariant-0.4.4.tgz#97a523518688f93aafad01b0e80eb803eb2abd86"
   integrity sha512-uEtWkFM/sdZvRNNDL3Ehu4WVpwaulhwQszV8mrtcdeE8nN00BV9mAmQ88RkrBhFgl9gMgvjJLAQcZbnPXI9mlA==
@@ -13235,19 +13049,6 @@ winston@0.8.x:
     pkginfo "0.3.x"
     stack-trace "0.0.x"
 
-winston@2.1.x:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/winston/-/winston-2.1.1.tgz#3c9349d196207fd1bdff9d4bc43ef72510e3a12e"
-  integrity sha1-PJNJ0ZYgf9G9/51LxD73JRDjoS4=
-  dependencies:
-    async "~1.0.0"
-    colors "1.0.x"
-    cycle "1.0.x"
-    eyes "0.1.x"
-    isstream "0.1.x"
-    pkginfo "0.3.x"
-    stack-trace "0.0.x"
-
 winston@2.x, winston@^2.2.0:
   version "2.4.4"
   resolved "https://registry.yarnpkg.com/winston/-/winston-2.4.4.tgz#a01e4d1d0a103cf4eada6fc1f886b3110d71c34b"
-- 
GitLab