Skip to content

Commit 66de4d6

Browse files
authored
Fix order of messages in activity (#9943)
* Fix order of messages in activity Signed-off-by: Nikolay Marchuk <[email protected]> * Fix svelte-check Signed-off-by: Nikolay Marchuk <[email protected]> --------- Signed-off-by: Nikolay Marchuk <[email protected]>
1 parent 4578e59 commit 66de4d6

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

plugins/activity-resources/src/components/ActivityFilter.svelte

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
import activity from '../plugin'
2525
import FilterPopup from './FilterPopup.svelte'
2626
import IconClose from './icons/Close.svelte'
27-
import { sortActivityMessages } from '../activityMessagesUtils'
27+
import { activityMessagesComparator } from '../activityMessagesUtils'
2828
import { setActivityNewestFirst } from '../utils'
2929
3030
export let messages: ActivityMessage[]
@@ -91,9 +91,13 @@
9191
selected: Ref<Doc>[] | Ref<ActivityMessagesFilter>,
9292
sortOrder: SortingOrder
9393
): Promise<void> {
94-
const sortedMessages = sortActivityMessages(messages, sortOrder).sort(({ isPinned }) =>
95-
isPinned && sortOrder === SortingOrder.Ascending ? -1 : 1
96-
)
94+
const baseComparator = (m1: ActivityMessage, m2: ActivityMessage): number =>
95+
sortOrder === SortingOrder.Ascending ? activityMessagesComparator(m1, m2) : activityMessagesComparator(m2, m1)
96+
const sortedMessages = messages.sort((message1, message2) => {
97+
const isPinned1 = message1.isPinned ?? false
98+
const isPinned2 = message2.isPinned ?? false
99+
return isPinned1 === isPinned2 ? baseComparator(message1, message2) : Number(isPinned2) - Number(isPinned1)
100+
})
97101
98102
if (selected === allId) {
99103
filtered = sortedMessages

0 commit comments

Comments
 (0)