From 832dad842aac061fee9ac8f2c8147e8e25238085 Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Tue, 7 Jul 2026 21:21:07 +0300 Subject: [PATCH 1/4] fix chat, lint --- src/components/chat/chat.js | 3 ++- src/components/palette_editor/palette_editor.vue | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/components/chat/chat.js b/src/components/chat/chat.js index 16a03ab1d..273d9d85d 100644 --- a/src/components/chat/chat.js +++ b/src/components/chat/chat.js @@ -16,6 +16,7 @@ import { } from './chat_layout_utils.js' import { useInterfaceStore } from 'src/stores/interface.js' +import { useMergedConfigStore } from 'src/stores/merged_config.js' import { useOAuthStore } from 'src/stores/oauth.js' import { @@ -116,8 +117,8 @@ const Chat = { 'currentChat', 'currentChatMessageService', 'findOpenedChatByRecipientId', - 'mergedConfig', ]), + ...mapPiniaState(useMergedConfigStore, ['mergedConfig']), ...mapPiniaState(useInterfaceStore, { mobileLayout: (store) => store.layoutType === 'mobile', }), diff --git a/src/components/palette_editor/palette_editor.vue b/src/components/palette_editor/palette_editor.vue index b27b21f00..1a73d5fdb 100644 --- a/src/components/palette_editor/palette_editor.vue +++ b/src/components/palette_editor/palette_editor.vue @@ -59,10 +59,12 @@ import { computed } from 'vue' import ColorInput from 'src/components/color_input/color_input.vue' import ContrastRatio from 'src/components/contrast_ratio/contrast_ratio.vue' -import { getContrastRatio, hex2rgb } from 'src/services/color_convert/color_convert.js' - import { useInterfaceStore } from 'src/stores/interface.js' +import { + getContrastRatio, + hex2rgb, +} from 'src/services/color_convert/color_convert.js' import { newExporter, newImporter, From bb4eb33c853d0f0e4298fcb1860a8875775c0844 Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Wed, 8 Jul 2026 17:49:43 +0300 Subject: [PATCH 2/4] fix chat message sending not working --- src/api/chats.js | 2 +- src/api/helpers.js | 3 ++- src/components/chat/chat.js | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/api/chats.js b/src/api/chats.js index 51e83c74f..114038e52 100644 --- a/src/api/chats.js +++ b/src/api/chats.js @@ -4,7 +4,7 @@ import { parseChat } from 'src/services/entity_normalizer/entity_normalizer.serv const PLEROMA_CHATS_URL = '/api/v1/pleroma/chats' const PLEROMA_CHAT_URL = (id) => `/api/v1/pleroma/chats/by-account-id/${id}` -const PLEROMA_CHAT_MESSAGES_URL = (id, { maxId, sinceId, limit }) => +const PLEROMA_CHAT_MESSAGES_URL = (id, { maxId, sinceId, limit } = {}) => `/api/v1/pleroma/chats/${id}/messages${paramsString({ maxId, sinceId, limit })}` const PLEROMA_CHAT_READ_URL = (id) => `/api/v1/pleroma/chats/${id}/read` const PLEROMA_DELETE_CHAT_MESSAGE_URL = (chatId, messageId) => diff --git a/src/api/helpers.js b/src/api/helpers.js index f965750c5..ce41eca77 100644 --- a/src/api/helpers.js +++ b/src/api/helpers.js @@ -17,7 +17,6 @@ export const paramsString = (params = {}) => { } })() - if (entries.length === 0) return '' const arrays = [] const nonArrays = [] @@ -48,6 +47,8 @@ export const paramsString = (params = {}) => { }) }) + if (nonArrays.length + arrays.length === 0) return '' + return ( '?' + [ diff --git a/src/components/chat/chat.js b/src/components/chat/chat.js index 273d9d85d..ca7a025ec 100644 --- a/src/components/chat/chat.js +++ b/src/components/chat/chat.js @@ -382,7 +382,7 @@ const Chat = { if (retriesLeft <= 0) return sendChatMessage({ - params, + ...params, credentials: useOAuthStore().token, }) .then(({ data }) => { From ce032ace4c426394d99351ee0b737037fba6cab7 Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Wed, 8 Jul 2026 19:37:52 +0300 Subject: [PATCH 3/4] fix new chat --- src/components/chat_new/chat_new.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/components/chat_new/chat_new.js b/src/components/chat_new/chat_new.js index 0ee4e292b..ccfe2df50 100644 --- a/src/components/chat_new/chat_new.js +++ b/src/components/chat_new/chat_new.js @@ -5,6 +5,8 @@ import UserAvatar from 'src/components/user_avatar/user_avatar.vue' import { useOAuthStore } from 'src/stores/oauth.js' +import { chats } from 'src/api/chats.js' + import { library } from '@fortawesome/fontawesome-svg-core' import { faChevronLeft, faSearch } from '@fortawesome/free-solid-svg-icons' @@ -24,10 +26,10 @@ const chatNew = { } }, async created() { - const { chats } = await chats({ + const { chatList } = await chats({ credentials: useOAuthStore().token, }) - chats.forEach((chat) => this.suggestions.push(chat.account)) + chatList.forEach((chat) => this.suggestions.push(chat.account)) }, computed: { users() { From 7bc74083d0ff6fca1ac752ba81b3fc8dd776257e Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Wed, 8 Jul 2026 20:31:17 +0300 Subject: [PATCH 4/4] fix post status for error handling --- .../post_status_form/post_status_form.js | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/components/post_status_form/post_status_form.js b/src/components/post_status_form/post_status_form.js index bb4051628..bd2b44e54 100644 --- a/src/components/post_status_form/post_status_form.js +++ b/src/components/post_status_form/post_status_form.js @@ -596,16 +596,18 @@ const PostStatusForm = { ? this.postHandler : statusPoster.postStatus - postHandler(postingOptions).then((data) => { - if (!data.error) { + postHandler(postingOptions) + .then((data) => { this.abandonDraft() this.clearStatus() this.$emit('posted', data) - } else { - this.error = data.error - } - this.posting = false - }) + }) + .catch((error) => { + this.error = error + }) + .finally(() => { + this.posting = false + }) }, previewStatus() { if (this.emptyStatus && this.newStatus.spoilerText.trim() === '') {