From 327dfbb4c214edeb9e6e15e25b0000676d83e646 Mon Sep 17 00:00:00 2001
From: Thomas Citharel <tcit@tcit.fr>
Date: Wed, 29 Sep 2021 20:24:55 +0200
Subject: [PATCH] Rollback Phoenix client to 1.5 because of issues with Jest

See https://github.com/phoenixframework/phoenix/pull/4512

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
---
 js/package.json              |  7 ++++---
 js/src/typings/absinthe.d.ts |  2 --
 js/src/vue-apollo.ts         |  6 +++---
 js/yarn.lock                 | 37 ++++++++++++++++++++----------------
 4 files changed, 28 insertions(+), 24 deletions(-)

diff --git a/js/package.json b/js/package.json
index 9e1549666..71edda7a6 100644
--- a/js/package.json
+++ b/js/package.json
@@ -45,7 +45,7 @@
     "lodash": "^4.17.11",
     "ngeohash": "^0.6.3",
     "p-debounce": "^4.0.0",
-    "phoenix": "^1.4.11",
+    "phoenix": "1.5",
     "register-service-worker": "^1.7.2",
     "tippy.js": "^6.2.3",
     "unfetch": "^4.2.0",
@@ -66,6 +66,7 @@
     "@types/leaflet.locatecontrol": "^0.60.7",
     "@types/lodash": "^4.14.141",
     "@types/ngeohash": "^0.6.2",
+    "@types/phoenix": "^1.5.2",
     "@types/prosemirror-inputrules": "^1.0.2",
     "@types/prosemirror-model": "^1.7.2",
     "@types/prosemirror-state": "^1.2.4",
@@ -83,6 +84,7 @@
     "@vue/eslint-config-prettier": "^6.0.0",
     "@vue/eslint-config-typescript": "^7.0.0",
     "@vue/test-utils": "^1.1.0",
+    "@vue/vue2-jest": "^27.0.0-alpha.2",
     "cypress": "^8.3.0",
     "eslint": "^7.20.0",
     "eslint-plugin-cypress": "^2.10.3",
@@ -97,10 +99,9 @@
     "prettier-eslint": "^13.0.0",
     "sass": "^1.34.1",
     "sass-loader": "^12.0.0",
-    "ts-jest": "^27.0.5",
+    "ts-jest": "27",
     "typescript": "~4.4.3",
     "vue-i18n-extract": "^1.0.2",
-    "vue-jest": "^4.0.1",
     "vue-template-compiler": "^2.6.11",
     "webpack-cli": "^4.7.0"
   }
diff --git a/js/src/typings/absinthe.d.ts b/js/src/typings/absinthe.d.ts
index f4a7d7dbf..b388a9d11 100644
--- a/js/src/typings/absinthe.d.ts
+++ b/js/src/typings/absinthe.d.ts
@@ -2,6 +2,4 @@ declare module "@absinthe/socket";
 
 declare module "@absinthe/socket-apollo-link";
 
-declare module "phoenix";
-
 declare module "apollo-absinthe-upload-link";
diff --git a/js/src/vue-apollo.ts b/js/src/vue-apollo.ts
index abfa694f6..4801cc62f 100644
--- a/js/src/vue-apollo.ts
+++ b/js/src/vue-apollo.ts
@@ -12,14 +12,14 @@ import {
   split,
 } from "@apollo/client/core";
 import { RetryLink } from "@apollo/client/link/retry";
-import buildCurrentUserResolver from "@/apollo/user";
-import { AUTH_ACCESS_TOKEN } from "@/constants";
-import { logout } from "@/utils/auth";
 import { Socket as PhoenixSocket } from "phoenix";
 import * as AbsintheSocket from "@absinthe/socket";
 import { createAbsintheSocketLink } from "@absinthe/socket-apollo-link";
 import { getMainDefinition } from "@apollo/client/utilities";
 import fetch from "unfetch";
+import buildCurrentUserResolver from "@/apollo/user";
+import { AUTH_ACCESS_TOKEN } from "@/constants";
+import { logout } from "@/utils/auth";
 import { GRAPHQL_API_ENDPOINT, GRAPHQL_API_FULL_PATH } from "./api/_entrypoint";
 import {
   possibleTypes,
diff --git a/js/yarn.lock b/js/yarn.lock
index fbb37e026..75c28ca22 100644
--- a/js/yarn.lock
+++ b/js/yarn.lock
@@ -1887,6 +1887,11 @@
   resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
   integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
 
+"@types/phoenix@^1.5.2":
+  version "1.5.2"
+  resolved "https://registry.yarnpkg.com/@types/phoenix/-/phoenix-1.5.2.tgz#9846009959b752e04b3560e31f213ddbc137e499"
+  integrity sha512-eAr6f4apLMY0COa1WIZikziSUBq4plqE5TwzzUeDyXvfuWLnLckeMF43byOwbk6W5ioIJXSHP42iR3Wo7U3RiQ==
+
 "@types/prettier@^2.1.5":
   version "2.4.1"
   resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.1.tgz#e1303048d5389563e130f5bdd89d37a99acb75eb"
@@ -2603,6 +2608,17 @@
     vue-hot-reload-api "^2.3.0"
     vue-style-loader "^4.1.0"
 
+"@vue/vue2-jest@^27.0.0-alpha.2":
+  version "27.0.0-alpha.2"
+  resolved "https://registry.yarnpkg.com/@vue/vue2-jest/-/vue2-jest-27.0.0-alpha.2.tgz#0af6893b091cebaf4adb08daaae8fca0636f41bb"
+  integrity sha512-lcrdUgQuNXVd5oMbpiiuHMuZ88B55B1zHxW+KZuO/h5nnNUMjHKjKc9NZfqXYReWFytYquTGlejLFH2Vo7e4Gw==
+  dependencies:
+    "@babel/plugin-transform-modules-commonjs" "^7.2.0"
+    "@vue/component-compiler-utils" "^3.1.0"
+    chalk "^2.1.0"
+    extract-from-css "^0.4.4"
+    source-map "0.5.6"
+
 "@vue/web-component-wrapper@^1.3.0":
   version "1.3.0"
   resolved "https://registry.yarnpkg.com/@vue/web-component-wrapper/-/web-component-wrapper-1.3.0.tgz#b6b40a7625429d2bd7c2281ddba601ed05dc7f1a"
@@ -7881,10 +7897,10 @@ performance-now@^2.1.0:
   resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
   integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
 
-phoenix@^1.4.11:
-  version "1.6.0"
-  resolved "https://registry.yarnpkg.com/phoenix/-/phoenix-1.6.0.tgz#8aaec3a472930de89abec6fe4fae5ba876388719"
-  integrity sha512-gslo1W8kJMXKux4cOiR+JAGkF5hE80hEZKoHtBEv27GCWVWDu8uh4bTODV0B2PRSO4L8P8SMbufRQRInur8E9Q==
+phoenix@1.5:
+  version "1.5.13"
+  resolved "https://registry.yarnpkg.com/phoenix/-/phoenix-1.5.13.tgz#ae141abb664fb2ae2001752ed61ae0faf3af7f8e"
+  integrity sha512-aJKbnuCTtgH8qT7AzHhPwhOP3bqhja3ogFMQmUdY7jNzl/91nsUtpnz0M3HDW7j+IvfjiM2/TIkOaGwzW9BKhg==
 
 picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3:
   version "2.3.0"
@@ -9733,7 +9749,7 @@ ts-invariant@^0.9.0:
   dependencies:
     tslib "^2.1.0"
 
-ts-jest@^27.0.5:
+ts-jest@27:
   version "27.0.5"
   resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.5.tgz#0b0604e2271167ec43c12a69770f0bb65ad1b750"
   integrity sha512-lIJApzfTaSSbtlksfFNHkWOzLJuuSm4faFAfo5kvzOiRAuoN4/eKxVJ2zEAho8aecE04qX6K1pAzfH5QHL1/8w==
@@ -10102,17 +10118,6 @@ vue-i18n@^8.14.0:
   resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.26.2.tgz#86a1ab9330bae7a56f58f23a52355f68aad00222"
   integrity sha512-koaC7gEYcedlzq9M8usTbD/v3DdLZ8suvwuanrs6aBIiM/sVqq2nQPbeuNPrpHaXgpR/pff2+/R+lFGKl7S1cQ==
 
-vue-jest@^4.0.1:
-  version "4.0.1"
-  resolved "https://registry.yarnpkg.com/vue-jest/-/vue-jest-4.0.1.tgz#683efc351c24456865b1356bae69d5bb663dafb5"
-  integrity sha512-4jewjN8HVgpIW0ZdEwzCWz5vcRLIs1PxMs+5IqJ/6f9KRbEQ+DEqEKHUzIjoNzW2UJOUYBZzWpBnVHakpc/k5w==
-  dependencies:
-    "@babel/plugin-transform-modules-commonjs" "^7.2.0"
-    "@vue/component-compiler-utils" "^3.1.0"
-    chalk "^2.1.0"
-    extract-from-css "^0.4.4"
-    source-map "0.5.6"
-
 vue-loader@^16.4.0:
   version "16.8.1"
   resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-16.8.1.tgz#354f12bc0897954158b71590f800295713a7792d"