use React Query to fetch messages

Change-Id: I85d0700efcc947462943ed0379498902b73950b3
diff --git a/client/src/services/conversation.js b/client/src/services/conversation.js
new file mode 100644
index 0000000..f6b0f49
--- /dev/null
+++ b/client/src/services/conversation.js
@@ -0,0 +1,34 @@
+import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
+import axios from "axios"
+
+export const useConversationQuery = (accountId, conversationId) => {
+    return useQuery(
+        ["conversation", accountId, conversationId],
+        () => fetchConversation(accountId, conversationId),
+        {
+            "enabled": !!(accountId && conversationId),
+        }
+    )
+}
+
+export const useMessagesQuery = (accountId, conversationId) => {
+    return useQuery(
+        ["messages", accountId, conversationId],
+        () => fetchMessages(accountId, conversationId),
+        {
+            "enabled": !!(accountId && conversationId),
+        }
+    )
+}
+
+const fetchConversation = (accountId, conversationId) => (
+    axios
+    .get(`/api/accounts/${accountId}/conversations/${conversationId}`)
+    .then((result) => result.data)
+)
+
+const fetchMessages = (accountId, conversationId) => (
+    axios
+    .get(`/api/accounts/${accountId}/conversations/${conversationId}/messages`)
+    .then((result) => result.data)
+)
\ No newline at end of file