From f4336b40f65660320fbd92341285ef8a81e29453 Mon Sep 17 00:00:00 2001 From: Tony Rewin Date: Mon, 9 Oct 2023 18:30:52 +0300 Subject: [PATCH] inbox-client --- src/context/inbox.tsx | 4 ++-- src/graphql/privateGraphQLClient.ts | 5 +++++ src/utils/apiClient.ts | 17 +++++++++-------- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/context/inbox.tsx b/src/context/inbox.tsx index 311bb409..75622f44 100644 --- a/src/context/inbox.tsx +++ b/src/context/inbox.tsx @@ -1,7 +1,7 @@ import type { Accessor, JSX } from 'solid-js' import { createContext, createSignal, useContext } from 'solid-js' import type { Chat, Message, MutationCreateMessageArgs } from '../graphql/types.gen' -import { apiClient } from '../utils/apiClient' +import { inboxClient } from '../utils/apiClient' import { loadMessages } from '../stores/inbox' @@ -26,7 +26,7 @@ export function useInbox() { export const InboxProvider = (props: { children: JSX.Element }) => { const [chats, setChats] = createSignal([]) const [messages, setMessages] = createSignal([]) - const eventSource = new EventSource('testapi.discours.io/connect') + const eventSource = new EventSource('chat.discours.io/connect') // TODO: call /disconnect some time // eslint-disable-next-line unicorn/prefer-add-event-listener eventSource.onmessage = function (event) { diff --git a/src/graphql/privateGraphQLClient.ts b/src/graphql/privateGraphQLClient.ts index f09bee37..369ae773 100644 --- a/src/graphql/privateGraphQLClient.ts +++ b/src/graphql/privateGraphQLClient.ts @@ -45,3 +45,8 @@ const options: ClientOptions = { } export const privateGraphQLClient = createClient(options) + +export const privateInboxGraphQLClient = createClient({ + ...options, + url: 'https://chat.discours.io' +}) diff --git a/src/utils/apiClient.ts b/src/utils/apiClient.ts index 346a75f9..b2849a6f 100644 --- a/src/utils/apiClient.ts +++ b/src/utils/apiClient.ts @@ -18,7 +18,7 @@ import type { Shout } from '../graphql/types.gen' import { publicGraphQLClient } from '../graphql/publicGraphQLClient' -import { getToken, privateGraphQLClient } from '../graphql/privateGraphQLClient' +import { getToken, privateGraphQLClient, privateInboxGraphQLClient } from '../graphql/privateGraphQLClient' import topicsAll from '../graphql/query/topics-all' import mySession from '../graphql/mutation/my-session' import authLogoutQuery from '../graphql/mutation/auth-logout' @@ -349,30 +349,31 @@ export const apiClient = { .toPromise() // console.debug(resp) return resp.data.loadReactionsBy - }, + } +} - // inbox +export const inboxClient = { getChats: async (options: QueryLoadChatsArgs): Promise => { - const resp = await privateGraphQLClient.query(myChats, options).toPromise() + const resp = await privateInboxGraphQLClient.query(myChats, options).toPromise() return resp.data.loadChats.chats }, createChat: async (options: MutationCreateChatArgs) => { - const resp = await privateGraphQLClient.mutation(createChat, options).toPromise() + const resp = await privateInboxGraphQLClient.mutation(createChat, options).toPromise() return resp.data.createChat }, createMessage: async (options: MutationCreateMessageArgs) => { - const resp = await privateGraphQLClient.mutation(createMessage, options).toPromise() + const resp = await privateInboxGraphQLClient.mutation(createMessage, options).toPromise() return resp.data.createMessage.message }, getChatMessages: async (options: QueryLoadMessagesByArgs) => { - const resp = await privateGraphQLClient.query(chatMessagesLoadBy, options).toPromise() + const resp = await privateInboxGraphQLClient.query(chatMessagesLoadBy, options).toPromise() return resp.data.loadMessagesBy.messages }, getRecipients: async (options: QueryLoadRecipientsArgs) => { - const resp = await privateGraphQLClient.query(loadRecipients, options).toPromise() + const resp = await privateInboxGraphQLClient.query(loadRecipients, options).toPromise() return resp.data.loadRecipients.members } }