From 9f2956f14ee18ce3f7130d04fb7968e604778b4f Mon Sep 17 00:00:00 2001
From: Jure Triglav <juretriglav@gmail.com>
Date: Sat, 25 Jul 2020 04:51:15 +0200
Subject: [PATCH] feat: remove dual identity types

---
 app/Root.jsx                                   |  3 ---
 .../component-chat/src/Messages/Messages.jsx   | 18 +++++-------------
 .../component-profile/src/Profile.jsx          | 11 ++++-------
 app/fragmentTypes.json                         |  1 -
 app/queries/index.js                           | 11 ++++-------
 5 files changed, 13 insertions(+), 31 deletions(-)
 delete mode 100644 app/fragmentTypes.json

diff --git a/app/Root.jsx b/app/Root.jsx
index a9129436c9..3d73ac54e5 100644
--- a/app/Root.jsx
+++ b/app/Root.jsx
@@ -101,9 +101,6 @@ const makeApolloClient = (makeConfig, connectToWebSocket) => {
   const config = {
     link,
     cache: new InMemoryCache({
-      possibleTypes: {
-        Identity: ['LocalIdentity', 'ExternalIdentity'],
-      },
       typePolicies: {
         Manuscript: {
           fields: {
diff --git a/app/components/component-chat/src/Messages/Messages.jsx b/app/components/component-chat/src/Messages/Messages.jsx
index 8ca81aaf86..380869ac63 100644
--- a/app/components/component-chat/src/Messages/Messages.jsx
+++ b/app/components/component-chat/src/Messages/Messages.jsx
@@ -35,12 +35,8 @@ const GET_MESSAGES = gql`
           profilePicture
           online
           defaultIdentity {
-            ... on ExternalIdentity {
-              identifier
-            }
-            ... on LocalIdentity {
-              email
-            }
+            identifier
+            email
             type
             aff
             id
@@ -69,15 +65,11 @@ const MESSAGES_SUBSCRIPTION = gql`
         profilePicture
         online
         defaultIdentity {
-          id
-          ... on ExternalIdentity {
-            identifier
-          }
-          ... on LocalIdentity {
-            email
-          }
+          identifier
+          email
           type
           aff
+          id
           name
         }
       }
diff --git a/app/components/component-profile/src/Profile.jsx b/app/components/component-profile/src/Profile.jsx
index a137940b61..5ed55f5b30 100644
--- a/app/components/component-profile/src/Profile.jsx
+++ b/app/components/component-profile/src/Profile.jsx
@@ -19,15 +19,12 @@ const GET_CURRENT_USER = gql`
       profilePicture
       username
       defaultIdentity {
+        identifier
+        email
+        type
         aff
+        id
         name
-        type
-        ... on ExternalIdentity {
-          identifier
-        }
-        ... on LocalIdentity {
-          email
-        }
       }
     }
   }
diff --git a/app/fragmentTypes.json b/app/fragmentTypes.json
deleted file mode 100644
index 571ad559ce..0000000000
--- a/app/fragmentTypes.json
+++ /dev/null
@@ -1 +0,0 @@
-{"__schema":{"types":[{"kind":"INTERFACE","name":"Identity","possibleTypes":[{"name":"LocalIdentity"},{"name":"ExternalIdentity"}]},{"kind":"INTERFACE","name":"Object","possibleTypes":[{"name":"Manuscript"},{"name":"ManuscriptVersion"},{"name":"File"},{"name":"Review"},{"name":"Note"}]}]}}
\ No newline at end of file
diff --git a/app/queries/index.js b/app/queries/index.js
index 17d6b3ba20..6f86f24089 100644
--- a/app/queries/index.js
+++ b/app/queries/index.js
@@ -8,15 +8,12 @@ export const GET_CURRENT_USER = gql`
       username
       admin
       defaultIdentity {
+        identifier
+        email
+        type
         aff
+        id
         name
-        type
-        ... on ExternalIdentity {
-          identifier
-        }
-        ... on LocalIdentity {
-          email
-        }
       }
       online
       _currentRoles {
-- 
GitLab