From 4d6433cc75341d0ca54bb6fa8627c35db4840e1e Mon Sep 17 00:00:00 2001 From: Bekiboo Date: Thu, 5 Feb 2026 19:42:41 +0300 Subject: [PATCH 01/10] fix: update CreatePostModal layout and button styling --- .../CreatePostModal/CreatePostModal.svelte | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/platforms/pictique/src/lib/fragments/CreatePostModal/CreatePostModal.svelte b/platforms/pictique/src/lib/fragments/CreatePostModal/CreatePostModal.svelte index 4e1ce0561..0e5244422 100644 --- a/platforms/pictique/src/lib/fragments/CreatePostModal/CreatePostModal.svelte +++ b/platforms/pictique/src/lib/fragments/CreatePostModal/CreatePostModal.svelte @@ -46,7 +46,7 @@ -
+

Create Post

-
+ {#if isLoading && messages.length === 0}
From 4f5ccc5ba7e7bfe937b55fad12bdae053bfe98f3 Mon Sep 17 00:00:00 2001 From: Bekiboo Date: Thu, 5 Feb 2026 20:15:18 +0300 Subject: [PATCH 03/10] fix: prevent empty messages, prevent spamming send button, improve styling --- .../MessageInput/MessageInput.svelte | 29 +++++++++++++++---- 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/platforms/pictique/src/lib/fragments/MessageInput/MessageInput.svelte b/platforms/pictique/src/lib/fragments/MessageInput/MessageInput.svelte index 0d62120e8..28a2deb9f 100644 --- a/platforms/pictique/src/lib/fragments/MessageInput/MessageInput.svelte +++ b/platforms/pictique/src/lib/fragments/MessageInput/MessageInput.svelte @@ -1,5 +1,6 @@
@@ -40,15 +54,18 @@ bind:value {placeholder} onkeydown={(e) => { - if (e.key === 'Enter') handleSend(); + if (e.key === 'Enter' && !isDisabled) handleSubmit(); }} /> -
- -
+ +
From 548ba5d8192fbaf016d2cbbcbb79e00ccc1a20fa Mon Sep 17 00:00:00 2001 From: Bekiboo Date: Thu, 5 Feb 2026 20:59:49 +0300 Subject: [PATCH 04/10] fix: improve profile image upload handling and error messaging --- .../settings/account/username/+page.svelte | 83 ++++++++++++++----- 1 file changed, 63 insertions(+), 20 deletions(-) diff --git a/platforms/pictique/src/routes/(protected)/settings/account/username/+page.svelte b/platforms/pictique/src/routes/(protected)/settings/account/username/+page.svelte index c761f743a..104384368 100644 --- a/platforms/pictique/src/routes/(protected)/settings/account/username/+page.svelte +++ b/platforms/pictique/src/routes/(protected)/settings/account/username/+page.svelte @@ -9,10 +9,23 @@ let profileImageDataUrl = $state(''); let files = $state(); let saved = $state(false); + let isSaving = $state(false); + let error = $state(''); + + const MAX_FILE_SIZE = 1 * 1024 * 1024; // 1MB (actual image file size before base64 encoding) function handleFileChange() { if (files?.[0]) { const file = files[0]; + + // Validate file size + if (file.size > MAX_FILE_SIZE) { + error = 'Image must be smaller than 1MB'; + files = undefined; + return; + } + + error = ''; const reader = new FileReader(); reader.onload = (e) => { @@ -26,7 +39,10 @@ } async function saveProfileData() { + if (isSaving) return; + try { + isSaving = true; await apiClient.patch('/api/users/', { name, avatar: profileImageDataUrl @@ -36,7 +52,9 @@ saved = false; }, 3_000); } catch (err) { - console.log(err instanceof Error ? err.message : 'please check the info again'); + error = err instanceof Error ? err.message : 'Failed to save changes'; + } finally { + isSaving = false; } } @@ -56,29 +74,46 @@
{#if saved} -
+
Changes Saved!
{/if} + {#if error} +
+ {error} +
+ {/if}
- { - profileImageDataUrl = ''; - files = undefined; - }} - /> - {#if profileImageDataUrl} - Profile preview - {/if} +

Maximum file size: 1MB

+ +
+ {#if profileImageDataUrl} + Profile preview + {:else} +
+ No image +
+ {/if} + +
+ { + profileImageDataUrl = ''; + files = undefined; + error = ''; + }} + /> +
+
@@ -97,4 +132,12 @@

- + From d3d8b1063d036b4719954cbc2ed1b2e7add62480 Mon Sep 17 00:00:00 2001 From: Bekiboo Date: Thu, 5 Feb 2026 21:27:10 +0300 Subject: [PATCH 05/10] fix: profile placeholder url --- platforms/pictique/src/lib/fragments/SideBar/SideBar.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/platforms/pictique/src/lib/fragments/SideBar/SideBar.svelte b/platforms/pictique/src/lib/fragments/SideBar/SideBar.svelte index 0805f0199..c4aaf04c7 100644 --- a/platforms/pictique/src/lib/fragments/SideBar/SideBar.svelte +++ b/platforms/pictique/src/lib/fragments/SideBar/SideBar.svelte @@ -15,7 +15,7 @@ } let { activeTab = $bindable('home'), - profileSrc = 'images/user.png', + profileSrc = '/images/user.png', handlePost, ...restProps }: ISideBarProps = $props(); @@ -164,7 +164,7 @@ />

Profile

From 24bf40628e8f0ba75aa797799c4581c8d80c4a68 Mon Sep 17 00:00:00 2001 From: Bekiboo Date: Fri, 6 Feb 2026 08:03:42 +0300 Subject: [PATCH 06/10] Add invitation to start conversation --- .../(protected)/group/[id]/+page.svelte | 4 ++-- .../(protected)/messages/[id]/+page.svelte | 3 +++ .../settings/account/username/+page.svelte | 22 +++++++++---------- 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/platforms/pictique/src/routes/(protected)/group/[id]/+page.svelte b/platforms/pictique/src/routes/(protected)/group/[id]/+page.svelte index 76048abff..31d27cd0d 100644 --- a/platforms/pictique/src/routes/(protected)/group/[id]/+page.svelte +++ b/platforms/pictique/src/routes/(protected)/group/[id]/+page.svelte @@ -133,7 +133,7 @@
+ {#if error} +
+ {error} +
+ {/if} +