From 3bad12c646ff950d2e6ff9de015db6cdac93e39f Mon Sep 17 00:00:00 2001 From: juls0730 Date: Thu, 12 Jan 2023 00:12:10 -0600 Subject: [PATCH] improved a bunch of things --- components/MessagePane.vue | 25 ++++++++-- components/Nav.vue | 4 +- components/Sidebar.vue | 47 ++++++++++-------- layouts/default.vue | 9 ++-- pages/channel/[id].vue | 2 +- server/api/channels/[id]/index.get.ts | 3 +- server/api/channels/sendMessage.post.ts | 12 +++-- server/api/getCurrentUser.get.ts | 41 ---------------- server/api/login.post.ts | 61 +++++++++++++++++++++-- server/api/signup.post.ts | 53 +++++++++++++++++++- server/api/user/getServers.get.ts | 65 +++++++++++++++++++++++++ stores/store.ts | 28 ++++------- types/index.ts | 4 +- 13 files changed, 252 insertions(+), 102 deletions(-) create mode 100644 server/api/user/getServers.get.ts diff --git a/components/MessagePane.vue b/components/MessagePane.vue index 12f4991..e2ac677 100644 --- a/components/MessagePane.vue +++ b/components/MessagePane.vue @@ -19,11 +19,25 @@
-

You've been invited

+

You've been invited to join a + server

{{ invite.server.name }} +
+ + {{ invite.server.participants.length }} Members +
+ class="font-semibold rounded px-4 py-2 transition-colors" + :class="(invite.server.participants.find((e) => e.id === user.id)) ? 'bg-green-800 cursor-not-allowed' : 'bg-green-700 hover:bg-green-600'"> + + Joined + + + Join + +
@@ -77,7 +91,8 @@ export default { user: storeToRefs(useGlobalStore()).user, messageContent: '', conversation: this.server.messages as IMessage[], - canSendNotifications: false + canSendNotifications: false, + servers: storeToRefs(useGlobalStore()).servers } }, mounted() { @@ -146,7 +161,7 @@ export default { const route = useRoute() if (!this.messageContent) return; - const message: IChannel = await $fetch(`/api/channels/sendMessage`, { method: 'post', body: { body: this.messageContent, channelId: route.params.id } }) + const message: IMessage = await $fetch(`/api/channels/sendMessage`, { method: 'post', body: { body: this.messageContent, channelId: route.params.id } }) if (!message) return; if (this.conversation.includes(message)) return; @@ -162,7 +177,7 @@ export default { async joinServer(invite: IInviteCode) { const { server } = await $fetch('/api/guilds/joinGuild', { method: 'POST', body: { inviteId: invite.id } }) if (!server) return; - this.user.servers?.push(server) + this.servers?.push(server) }, scrollToBottom() { const conversationDiv = document.getElementById('conversation-pane'); diff --git a/components/Nav.vue b/components/Nav.vue index 8dbaf68..8e9367c 100644 --- a/components/Nav.vue +++ b/components/Nav.vue @@ -19,7 +19,7 @@
- +
@@ -93,6 +93,7 @@ import { IServer } from '~/types'; export default { data() { return { + servers: storeToRefs(useGlobalStore()).servers, createServerModelOpen: false, serverName: '' } @@ -109,6 +110,5 @@ export default { useGlobalStore().setActive(type, id) } }, - props: ['user'] } \ No newline at end of file diff --git a/components/Sidebar.vue b/components/Sidebar.vue index 15ce067..2ad9127 100644 --- a/components/Sidebar.vue +++ b/components/Sidebar.vue @@ -3,7 +3,7 @@ class="bg-[hsl(223,calc(1*6.9%),19.8%)] min-w-60 w-60 h-screen shadow-sm text-white select-none grid grid-rows-[93.5%_1fr]">
-
@@ -17,7 +17,7 @@

{{ server.name }} - + v-if="userIsOwner || userIsAdmin">make invite -