diff --git a/pages/home.vue b/pages/home.vue
deleted file mode 100644
index 4182eb3..0000000
--- a/pages/home.vue
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
- Welcome to gorb :3
-
-
- Click on a server to the left to view a guild.
-
- Or click the button in the bottom left to join a guild.
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/pages/index.vue b/pages/index.vue
index f970926..4182eb3 100644
--- a/pages/index.vue
+++ b/pages/index.vue
@@ -1,6 +1,19 @@
-
+
+
+
+
+ Welcome to gorb :3
+
+
+ Click on a server to the left to view a guild.
+
+ Or click the button in the bottom left to join a guild.
+
+
+
+
From bd6307f16e06cc2b53b62ab2017c9cfdf29c7ca8 Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Tue, 8 Jul 2025 21:00:05 +0200
Subject: [PATCH 54/85] fix: rephrase sentace from "server" to "guild"
---
pages/index.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pages/index.vue b/pages/index.vue
index 4182eb3..41deadf 100644
--- a/pages/index.vue
+++ b/pages/index.vue
@@ -7,7 +7,7 @@
Welcome to gorb :3
- Click on a server to the left to view a guild.
+ Click on a guild to the left to view a guild.
Or click the button in the bottom left to join a guild.
From 8932070fcc64fae57036b9e5fc4d08398e236d68 Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Tue, 8 Jul 2025 21:11:14 +0200
Subject: [PATCH 55/85] feat: spice up the home bar
---
layouts/client.vue | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/layouts/client.vue b/layouts/client.vue
index a1ee86d..9ce451e 100644
--- a/layouts/client.vue
+++ b/layouts/client.vue
@@ -3,7 +3,9 @@
- main bar
+
+ gorb!!!!!
+
@@ -61,6 +63,11 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
background-color: var(--topbar-background-color);
padding-left: 5dvw;
padding-right: 5dvw;
+
+}
+
+.homebar-item {
+ width: 100dvw;
}
#client-root>div:nth-child(-n+4) {
From 730b0cb1dcece7264d81e07902e1576e7d92b1cb Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Wed, 9 Jul 2025 00:25:52 +0200
Subject: [PATCH 56/85] refactor: change the client from table to flexbox
this makes the server, channel, and member list a constant size, making the text messages take up the entire remaining width
this also fixes the text wrapping you have already fixed on one of your branches
this change is required if we want to make the member list toggelable, or channel list resizable
---
components/Channel.vue | 2 +-
layouts/client.vue | 89 ++++++++-----------
.../[serverId]/channels/[channelId].vue | 13 ++-
3 files changed, 46 insertions(+), 58 deletions(-)
diff --git a/components/Channel.vue b/components/Channel.vue
index 0f48323..6bdc28b 100644
--- a/components/Channel.vue
+++ b/components/Channel.vue
@@ -30,7 +30,7 @@ const isCurrentChannel = props.uuid == props.currentUuid;
.channel-list-link-container {
text-align: left;
display: flex;
- height: 4dvh;
+ height: 1.5em;
white-space: nowrap;
align-items: center;
}
diff --git a/layouts/client.vue b/layouts/client.vue
index a1ee86d..b98e304 100644
--- a/layouts/client.vue
+++ b/layouts/client.vue
@@ -6,21 +6,23 @@
main bar
-
-
-
-
-
@@ -34,11 +36,10 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
\ No newline at end of file
diff --git a/pages/servers/[serverId]/channels/[channelId].vue b/pages/servers/[serverId]/channels/[channelId].vue
index 6bdcc7c..b5ee86a 100644
--- a/pages/servers/[serverId]/channels/[channelId].vue
+++ b/pages/servers/[serverId]/channels/[channelId].vue
@@ -91,9 +91,8 @@ function handleMemberClick(member: GuildMemberResponse) {
}
#members-container {
- padding-top: 1dvh;
- padding-left: 1dvw;
- padding-right: 1dvw;
+ min-width: 12rem;
+ padding-top: 1em;
border-left: 1px solid var(--padding-color);
}
@@ -102,14 +101,14 @@ function handleMemberClick(member: GuildMemberResponse) {
flex-direction: column;
overflow-y: scroll;
max-height: 92dvh;
- padding-left: 1dvw;
- padding-right: 1dvw;
+ padding-left: 1.3em;
+ padding-right: 1.3em;
margin-top: 1dvh;
}
.member-item {
display: grid;
- grid-template-columns: 2dvw 1fr;
+ grid-template-columns: 1.5em 1fr;
margin-top: .5em;
margin-bottom: .5em;
gap: 1em;
@@ -121,7 +120,7 @@ function handleMemberClick(member: GuildMemberResponse) {
#channels-list {
display: flex;
flex-direction: column;
- gap: 1dvh;
+ gap: .5em;
}
.member-avatar {
From 9a2fe8fb373c006ac074031057d0fe4e5b90fa62 Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Wed, 9 Jul 2025 00:43:23 +0200
Subject: [PATCH 57/85] refactor: change a lot of dynamic sizes to em and rem
this makes the client feel a LOT snappier
---
components/Button.vue | 2 +-
components/Channel.vue | 4 ++--
components/MessageArea.vue | 1 +
layouts/client.vue | 20 ++++++++--------
.../[serverId]/channels/[channelId].vue | 23 ++++++++++---------
5 files changed, 26 insertions(+), 24 deletions(-)
diff --git a/components/Button.vue b/components/Button.vue
index fb44cf2..66706de 100644
--- a/components/Button.vue
+++ b/components/Button.vue
@@ -21,7 +21,7 @@ const props = defineProps<{
background-color: var(--primary-color);
color: var(--text-color);
- padding: 0.7dvh 1.2dvw;
+ padding: 0.4em 0.75em;
font-size: 1.1em;
transition: background-color 0.2s;
diff --git a/components/Channel.vue b/components/Channel.vue
index 6bdc28b..98f210e 100644
--- a/components/Channel.vue
+++ b/components/Channel.vue
@@ -23,8 +23,8 @@ const isCurrentChannel = props.uuid == props.currentUuid;
.channel-list-link {
text-decoration: none;
color: inherit;
- padding-left: .5dvw;
- padding-right: .5dvw;
+ padding-left: .25em;
+ padding-right: .25em;
}
.channel-list-link-container {
diff --git a/components/MessageArea.vue b/components/MessageArea.vue
index 18b9ac5..244b239 100644
--- a/components/MessageArea.vue
+++ b/components/MessageArea.vue
@@ -246,6 +246,7 @@ router.beforeEach((to, from, next) => {
padding-left: 1dvw;
padding-right: 1dvw;
overflow: hidden;
+ flex-grow: 1;
}
#message-box {
diff --git a/layouts/client.vue b/layouts/client.vue
index b98e304..469800d 100644
--- a/layouts/client.vue
+++ b/layouts/client.vue
@@ -74,27 +74,27 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
#left-column {
display: flex;
flex-direction: column;
- gap: 2dvh;
- padding-left: .5dvw;
- padding-right: .5dvw;
+ gap: .75em;
+ padding-left: .25em;
+ padding-right: .25em;
border-right: 1px solid var(--padding-color);
background: var(--optional-sidebar-background);
background-color: var(--sidebar-background-color);
- padding-top: 1.5dvh;
+ padding-top: .5em;
}
#servers-list {
display: flex;
flex-direction: column;
- gap: 1dvh;
+ gap: 1em;
width: 3.2rem;
}
#middle-left-column {
- padding-left: 1dvw;
- padding-right: 1dvw;
+ padding-left: .25em;
+ padding-right: .25em;
border-right: 1px solid var(--padding-color);
- min-width: 10rem;
+ min-width: 10em;
overflow-y: scroll;
overflow-x: hidden;
}
@@ -106,12 +106,12 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
#home-button {
border-bottom: 1px solid var(--padding-color);
- padding-bottom: 1dvh;
+ padding-bottom: .375em;
}
#settings-menu {
position: absolute;
- bottom: .25dvh
+ bottom: .25em
}
\ No newline at end of file
diff --git a/pages/servers/[serverId]/channels/[channelId].vue b/pages/servers/[serverId]/channels/[channelId].vue
index b5ee86a..04d56f9 100644
--- a/pages/servers/[serverId]/channels/[channelId].vue
+++ b/pages/servers/[serverId]/channels/[channelId].vue
@@ -27,6 +27,7 @@
@@ -83,35 +84,35 @@ function handleMemberClick(member: GuildMemberResponse) {
From a6572c20f971c4f0d8e05d99f6fac86f29c59541 Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Wed, 9 Jul 2025 01:04:37 +0200
Subject: [PATCH 59/85] fix: remove accidental duplication of member list
this was for local testing, forgot to remove it
---
pages/servers/[serverId]/channels/[channelId].vue | 1 -
1 file changed, 1 deletion(-)
diff --git a/pages/servers/[serverId]/channels/[channelId].vue b/pages/servers/[serverId]/channels/[channelId].vue
index 04d56f9..d0c702d 100644
--- a/pages/servers/[serverId]/channels/[channelId].vue
+++ b/pages/servers/[serverId]/channels/[channelId].vue
@@ -27,7 +27,6 @@
From f1bec945fe0cd7a23eccb9a499a0b11da4de951a Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Wed, 9 Jul 2025 03:36:30 +0200
Subject: [PATCH 60/85] feat: multiline message box
this implementation SUCKS and i probably have to write an entirely custom solution where every line is a div or something
---
components/MessageArea.vue | 64 +++++++++++++++++++++++---------------
1 file changed, 39 insertions(+), 25 deletions(-)
diff --git a/components/MessageArea.vue b/components/MessageArea.vue
index 9bf6df8..34a79fa 100644
--- a/components/MessageArea.vue
+++ b/components/MessageArea.vue
@@ -14,9 +14,11 @@
-
-
+
@@ -118,11 +120,19 @@ function pushMessage(message: MessageResponse) {
messages.value.push(message);
}
+function handleMessageKeyDown(event: KeyboardEvent) {
+ if (event.key === "Enter" && event.shiftKey) {
+ event.preventDefault();
+ messageInput.value += "\n"
+ } else if (event.key === "Enter") {
+ //
+ }
+}
+
const messages = ref([]);
-
const messageInput = ref();
-
const messagesElement = ref();
+const messageInputField = ref();
if (messagesRes) messages.value = messagesRes;
@@ -253,8 +263,8 @@ router.beforeEach((to, from, next) => {
\ No newline at end of file
From 84aa1f95fe555a60ff0f23cb8e4e320afaf3e090 Mon Sep 17 00:00:00 2001
From: SauceyRed
Date: Wed, 9 Jul 2025 07:30:06 +0200
Subject: [PATCH 72/85] feat: add auto redirection in verify-email page
---
pages/verify-email.vue | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/pages/verify-email.vue b/pages/verify-email.vue
index cae02ea..f160a1d 100644
--- a/pages/verify-email.vue
+++ b/pages/verify-email.vue
@@ -15,6 +15,12 @@ const token = useRoute().query.token;
try {
const res = await fetchWithApi("/auth/verify-email", { query: { token } });
console.log("hi");
+ const query = useRoute().query;
+ if (query.redirect_to) {
+ await navigateTo(`/?redirect_to=${query.redirect_to}`);
+ } else {
+ await navigateTo("/");
+ }
} catch (error) {
console.error("Error verifying email:", error);
errorMessage.value = error;
From 4b6dc03b136e3d19662f1f87eb09753c655d5c27 Mon Sep 17 00:00:00 2001
From: SauceyRed
Date: Wed, 9 Jul 2025 07:30:46 +0200
Subject: [PATCH 73/85] feat: refresh page when email is changed and instance
requires verification
---
components/Settings/UserSettings/Account.vue | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/components/Settings/UserSettings/Account.vue b/components/Settings/UserSettings/Account.vue
index 85589e7..a08cffc 100644
--- a/components/Settings/UserSettings/Account.vue
+++ b/components/Settings/UserSettings/Account.vue
@@ -43,6 +43,14 @@ async function changeEmail() {
body: formData
})
+ const apiBase = useCookie("api_base").value;
+
+ if (apiBase) {
+ const stats = await useApi().fetchInstanceStats(apiBase);
+ if (stats.email_verification_required) {
+ return window.location.reload();
+ }
+ }
alert('success!!')
} catch (error: any) {
if (error?.response?.status !== 200) {
From e58809b4241d720e6bc1a2d62ac920510fbc3f40 Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Wed, 9 Jul 2025 16:34:39 +0200
Subject: [PATCH 74/85] feat: implement multiline message box
---
components/MessageArea.vue | 102 +++++++++++++++++++++++++------------
1 file changed, 69 insertions(+), 33 deletions(-)
diff --git a/components/MessageArea.vue b/components/MessageArea.vue
index 34a79fa..1470955 100644
--- a/components/MessageArea.vue
+++ b/components/MessageArea.vue
@@ -14,11 +14,14 @@
-
+
+
@@ -120,19 +123,38 @@ function pushMessage(message: MessageResponse) {
messages.value.push(message);
}
-function handleMessageKeyDown(event: KeyboardEvent) {
- if (event.key === "Enter" && event.shiftKey) {
- event.preventDefault();
- messageInput.value += "\n"
+function handleTextboxKeyDown(event: KeyboardEvent) {
+ if (event.key === "Enter" && event.shiftKey && messageTextboxInput.value) {
+ // this enters a newline, due to not preventing default
} else if (event.key === "Enter") {
- //
+ event.preventDefault()
+ sendMessage(event)
+ }
+
+ adjustTextboxHeight()
+}
+
+function handleTextboxInput() {
+ if (messageTextboxInput.value) {
+ messageInput.value = messageTextboxInput.value.innerText;
+ }
+
+ adjustTextboxHeight()
+}
+
+// this technically uses pixel units, but it's still set using dynamic units
+function adjustTextboxHeight() {
+ if (messageTextboxInput.value && messageTextboxDisplay.value) {
+ messageTextboxInput.value.style.height = "auto"
+ messageTextboxInput.value.style.height = `${messageTextboxInput.value.scrollHeight}px`
}
}
const messages = ref([]);
-const messageInput = ref();
+const messageInput = ref("");
const messagesElement = ref();
-const messageInputField = ref();
+const messageTextboxInput = ref();
+const messageTextboxDisplay = ref();
if (messagesRes) messages.value = messagesRes;
@@ -180,14 +202,21 @@ if (accessToken && apiBase) {
function sendMessage(e: Event) {
e.preventDefault();
- const message = {
- message: messageInput.value
- }
- console.log("message:", message);
- if (message.message) {
+ if (messageInput.value && messageInput.value.trim() !== "") {
+ const message = {
+ message: messageInput.value.trim().replace(/\n/g, " ") // trim, and replace \n with
+ }
+
+ console.log("message:", message);
ws.send(JSON.stringify(message));
- messageInput.value = "";
- console.log("MESSAGE SENT!!!");
+
+ // reset input field
+ messageInput.value = ""
+ if (messageTextboxInput.value) {
+ messageTextboxInput.value.innerText = ""
+ }
+
+ adjustTextboxHeight()
}
}
@@ -278,35 +307,42 @@ router.beforeEach((to, from, next) => {
padding-left: 2%;
padding-right: 2%;
- min-height: 5em;
- max-height: 50%;
- flex-grow: 1;
-
+ align-items: center;
+
+ color: var(--text-color);
border: 1px solid var(--padding-color);
background-color: var(--chatbox-background-color);
}
#message-form {
- height: 100%;
-
display: flex;
flex-direction: row;
- gap: .5em;
+ gap: .55em;
}
-#message-box-input {
+#message-textarea {
flex-grow: 1;
+ min-height: 2.35em;
+}
- color: inherit;
- font: inherit;
+#message-textbox-input {
+ width: 100%;
+ max-height: 50dvh;
+
+ padding: 0.5em 0;
+ user-select: text;
+
+ font-family: inherit;
+ font-size: inherit;
+ line-height: normal;
border: none;
background-color: #40404000; /* completely transparent colour */
- box-sizing: border-box;
- display: inline-block;
+ text-align: left;
+ word-break: break-word;
+ overflow-wrap: break-word;
- overflow: auto;
- resize: none;
+ overflow-y: auto;
}
#message-box-left-elements, #message-box-right-elements {
From b67d568c5edbb9e0e5d7d59d0ed9b65630d4db97 Mon Sep 17 00:00:00 2001
From: SauceyRed
Date: Sun, 6 Jul 2025 18:05:36 +0200
Subject: [PATCH 75/85] fix: display names with empty string not being replaced
by usernames in member list
---
components/MemberEntry.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/components/MemberEntry.vue b/components/MemberEntry.vue
index c77c429..ed4cd48 100644
--- a/components/MemberEntry.vue
+++ b/components/MemberEntry.vue
@@ -2,7 +2,7 @@
-
{{ props.member.user.display_name ?? props.member.user.username }}
+
{{ props.member.user.display_name || props.member.user.username }}
From a1cd9c482cf841333fafa10b02c09a94f6c3f2cd Mon Sep 17 00:00:00 2001
From: SauceyRed
Date: Thu, 10 Jul 2025 11:46:25 +0200
Subject: [PATCH 76/85] feat: increase width of channels and members lists
---
layouts/client.vue | 2 +-
pages/servers/[serverId]/channels/[channelId].vue | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/layouts/client.vue b/layouts/client.vue
index 469800d..e2c4c5b 100644
--- a/layouts/client.vue
+++ b/layouts/client.vue
@@ -94,7 +94,7 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
padding-left: .25em;
padding-right: .25em;
border-right: 1px solid var(--padding-color);
- min-width: 10em;
+ min-width: 13em;
overflow-y: scroll;
overflow-x: hidden;
}
diff --git a/pages/servers/[serverId]/channels/[channelId].vue b/pages/servers/[serverId]/channels/[channelId].vue
index d0c702d..cef6ba2 100644
--- a/pages/servers/[serverId]/channels/[channelId].vue
+++ b/pages/servers/[serverId]/channels/[channelId].vue
@@ -91,7 +91,7 @@ function handleMemberClick(member: GuildMemberResponse) {
}
#members-container {
- width: 12rem;
+ width: 15rem;
border-left: 1px solid var(--padding-color);
}
From 2665f29341ec7b00ffef8a735a869849b9c081b2 Mon Sep 17 00:00:00 2001
From: SauceyRed
Date: Thu, 10 Jul 2025 11:55:45 +0200
Subject: [PATCH 77/85] feat: align message box buttons to bottom
---
components/MessageArea.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/components/MessageArea.vue b/components/MessageArea.vue
index 1470955..8a6cc80 100644
--- a/components/MessageArea.vue
+++ b/components/MessageArea.vue
@@ -347,7 +347,7 @@ router.beforeEach((to, from, next) => {
#message-box-left-elements, #message-box-right-elements {
display: flex;
- align-items: center;
+ align-items: end;
}
#messages {
From e71db5f57172fcaa35d59bbd55360da346bd8e9f Mon Sep 17 00:00:00 2001
From: SauceyRed
Date: Thu, 10 Jul 2025 11:56:54 +0200
Subject: [PATCH 78/85] chore: remove unused class attribute in message text
box element
---
components/MessageArea.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/components/MessageArea.vue b/components/MessageArea.vue
index 8a6cc80..aa50cbc 100644
--- a/components/MessageArea.vue
+++ b/components/MessageArea.vue
@@ -16,7 +16,7 @@
-
From 0afb269788bcb504cbc8540575dc2b331c0b4fd3 Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Mon, 7 Jul 2025 20:40:49 +0200
Subject: [PATCH 79/85] feat: start adding back button for settings
---
pages/settings.vue | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/pages/settings.vue b/pages/settings.vue
index 1380283..4c36914 100644
--- a/pages/settings.vue
+++ b/pages/settings.vue
@@ -3,6 +3,13 @@
@@ -106,11 +123,38 @@ function pushMessage(message: MessageResponse) {
messages.value.push(message);
}
+function handleTextboxKeyDown(event: KeyboardEvent) {
+ if (event.key === "Enter" && event.shiftKey && messageTextboxInput.value) {
+ // this enters a newline, due to not preventing default
+ } else if (event.key === "Enter") {
+ event.preventDefault()
+ sendMessage(event)
+ }
+
+ adjustTextboxHeight()
+}
+
+function handleTextboxInput() {
+ if (messageTextboxInput.value) {
+ messageInput.value = messageTextboxInput.value.innerText;
+ }
+
+ adjustTextboxHeight()
+}
+
+// this technically uses pixel units, but it's still set using dynamic units
+function adjustTextboxHeight() {
+ if (messageTextboxInput.value && messageTextboxDisplay.value) {
+ messageTextboxInput.value.style.height = "auto"
+ messageTextboxInput.value.style.height = `${messageTextboxInput.value.scrollHeight}px`
+ }
+}
+
const messages = ref
([]);
-
-const messageInput = ref();
-
+const messageInput = ref("");
const messagesElement = ref();
+const messageTextboxInput = ref();
+const messageTextboxDisplay = ref();
if (messagesRes) messages.value = messagesRes;
@@ -158,14 +202,21 @@ if (accessToken && apiBase) {
function sendMessage(e: Event) {
e.preventDefault();
- const message = {
- message: messageInput.value
- }
- console.log("message:", message);
- if (message.message) {
+ if (messageInput.value && messageInput.value.trim() !== "") {
+ const message = {
+ message: messageInput.value.trim().replace(/\n/g, " ") // trim, and replace \n with
+ }
+
+ console.log("message:", message);
ws.send(JSON.stringify(message));
- messageInput.value = "";
- console.log("MESSAGE SENT!!!");
+
+ // reset input field
+ messageInput.value = ""
+ if (messageTextboxInput.value) {
+ messageTextboxInput.value.innerText = ""
+ }
+
+ adjustTextboxHeight()
}
}
@@ -241,38 +292,63 @@ router.beforeEach((to, from, next) => {
\ No newline at end of file
diff --git a/pages/index.vue b/pages/index.vue
index f970926..41deadf 100644
--- a/pages/index.vue
+++ b/pages/index.vue
@@ -1,6 +1,19 @@
-
+
+
+
+
+ Welcome to gorb :3
+
+
+ Click on a guild to the left to view a guild.
+
+ Or click the button in the bottom left to join a guild.
+
+
+
+
diff --git a/pages/servers/[serverId]/channels/[channelId].vue b/pages/servers/[serverId]/channels/[channelId].vue
index 6bdcc7c..5c55655 100644
--- a/pages/servers/[serverId]/channels/[channelId].vue
+++ b/pages/servers/[serverId]/channels/[channelId].vue
@@ -83,36 +83,36 @@ function handleMemberClick(member: GuildMemberResponse) {
\ No newline at end of file
From 2790772cb7c1fd9a73a3f6df766a9e9be7ff0906 Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Thu, 10 Jul 2025 16:32:41 +0200
Subject: [PATCH 82/85] fix: some of the worst merging i've done in my life
---
layouts/client.vue | 47 +---------------------------------------------
1 file changed, 1 insertion(+), 46 deletions(-)
diff --git a/layouts/client.vue b/layouts/client.vue
index bd3921a..a28d6bc 100644
--- a/layouts/client.vue
+++ b/layouts/client.vue
@@ -25,23 +25,6 @@
-
@@ -69,11 +52,9 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
.visible {
opacity: 100%;
transition: opacity 500ms;
- transition: opacity 500ms;
}
#homebar {
- min-height: 4dvh;
min-height: 4dvh;
display: flex;
justify-content: space-evenly;
@@ -81,14 +62,8 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
background: var(--optional-topbar-background);
background-color: var(--topbar-background-color);
border-bottom: 1px solid var(--padding-color);
- border-bottom: 1px solid var(--padding-color);
padding-left: 5dvw;
padding-right: 5dvw;
-
-}
-
-.homebar-item {
- width: 100dvw;
}
.homebar-item {
@@ -100,9 +75,6 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
flex-direction: row;
flex-grow: 1;
overflow: auto;
- flex-direction: row;
- flex-grow: 1;
- overflow: auto;
}
#left-column {
@@ -111,13 +83,10 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
gap: .75em;
padding-left: .25em;
padding-right: .25em;
- gap: .75em;
- padding-left: .25em;
- padding-right: .25em;
+ padding-top: .5em;
border-right: 1px solid var(--padding-color);
background: var(--optional-sidebar-background);
background-color: var(--sidebar-background-color);
- padding-top: .5em;
}
#servers-list {
@@ -128,16 +97,7 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
padding-top: .5em;
}
-#servers-list {
- display: flex;
- flex-direction: column;
- gap: 1em;
- width: 3.2rem;
-}
-
#middle-left-column {
- padding-left: .25em;
- padding-right: .25em;
padding-left: .25em;
padding-right: .25em;
border-right: 1px solid var(--padding-color);
@@ -154,11 +114,6 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
overflow-x: hidden;
}
-.sidebar-icon {
- width: 3rem;
- height: 3rem;
-}
-
#home-button {
border-bottom: 1px solid var(--padding-color);
padding-bottom: .375em;
From f59162bad596ac953d0eeba91529b3952f4eb2a8 Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Thu, 10 Jul 2025 20:13:25 +0200
Subject: [PATCH 83/85] fix: width of icon and channel lists
---
layouts/client.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/layouts/client.vue b/layouts/client.vue
index a28d6bc..966e60a 100644
--- a/layouts/client.vue
+++ b/layouts/client.vue
@@ -102,6 +102,7 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
padding-right: .25em;
border-right: 1px solid var(--padding-color);
min-width: 13em;
+ max-width: 13em;
overflow-y: scroll;
overflow-x: hidden;
}
@@ -109,7 +110,6 @@ const guilds: GuildResponse[] | undefined = await fetchWithApi("/me/guilds");
.sidebar-icon {
width: 3rem;
height: 3rem;
- min-width: 10em;
overflow-y: scroll;
overflow-x: hidden;
}
From 04358e9c917c00b95b7debd51b7f476e2a79472c Mon Sep 17 00:00:00 2001
From: JustTemmie <47639983+JustTemmie@users.noreply.github.com>
Date: Thu, 10 Jul 2025 21:04:27 +0200
Subject: [PATCH 84/85] feat: make settings menu remember your page on reload
---
pages/settings.vue | 1 +
1 file changed, 1 insertion(+)
diff --git a/pages/settings.vue b/pages/settings.vue
index 3aac506..6bf3c9e 100644
--- a/pages/settings.vue
+++ b/pages/settings.vue
@@ -98,6 +98,7 @@ let currentPage = ref(categories[0].pages[0]);
let selectedPage = ref(currentPage.value.displayName); // used to highlight the current channel
function selectCategory(page: Page) {
+ window.location.hash = page.displayName.toLowerCase()
currentPage.value = page;
selectedPage.value = page.displayName;
};
From 71242d0543ace0b581e01cf09ab8a44d33b882d3 Mon Sep 17 00:00:00 2001
From: justtemmie
Date: Thu, 10 Jul 2025 19:37:04 +0000
Subject: [PATCH 85/85] revert 04358e9c917c00b95b7debd51b7f476e2a79472c
revert feat: make settings menu remember your page on reload
it breaks the back button, my bad
---
pages/settings.vue | 1 -
1 file changed, 1 deletion(-)
diff --git a/pages/settings.vue b/pages/settings.vue
index 6bf3c9e..3aac506 100644
--- a/pages/settings.vue
+++ b/pages/settings.vue
@@ -98,7 +98,6 @@ let currentPage = ref(categories[0].pages[0]);
let selectedPage = ref(currentPage.value.displayName); // used to highlight the current channel
function selectCategory(page: Page) {
- window.location.hash = page.displayName.toLowerCase()
currentPage.value = page;
selectedPage.value = page.displayName;
};