Skip to content

Commit 747e6bc

Browse files
committed
One last bug to fix, rerendering
1 parent 5f57332 commit 747e6bc

3 files changed

Lines changed: 22 additions & 9 deletions

File tree

components/forms/MiniProfile.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { useSideBarOptionSetter } from '@/context/SideBarOptionCtx';
22
import { getOrCreateDMChannel } from '@/lib/DMChannelHelper';
3-
import { useAddMessage, useDMChannels, useSetChannel } from '@/lib/store';
3+
import { useAddDMChannel, useDMChannels, useSetChannel } from '@/lib/store';
44
import { createMessage } from '@/services/message.service';
55
import { Role, ServerUser, User } from '@/types/dbtypes';
66
import { useSupabaseClient, useUser } from '@supabase/auth-helpers-react';
@@ -23,6 +23,7 @@ function WrappedComponent({
2323
const dmChannels = useDMChannels();
2424
const setChannel = useSetChannel();
2525
const setSideBarOption = useSideBarOptionSetter();
26+
const addDMChannel = useAddDMChannel();
2627

2728
return (
2829
<div className="flex flex-col space-y-2 items-center p-3">
@@ -64,8 +65,6 @@ function WrappedComponent({
6465
dmChannels
6566
);
6667

67-
console.table(dmChannel);
68-
6968
if (dmChannel) {
7069
await createMessage(
7170
supabase,

components/home/DMessageList.tsx

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
import { getAllDMChannels } from '@/services/directmessage.service';
21
import { Channel, DMChannelWithRecipient } from '@/types/dbtypes';
3-
import { useSupabaseClient } from '@supabase/auth-helpers-react';
4-
import { useEffect, useState } from 'react';
52
import UserIcon from '../icons/UserIcon';
63
import styles from '@/styles/Chat.module.css';
74
import { useDMChannels, useSetChannel } from '@/lib/store';
@@ -38,7 +35,7 @@ function mapToComponentArray(
3835
}
3936
export default function DMessageList() {
4037
const setChannel = useSetChannel();
41-
const dmChannels = useDMChannels();
38+
const dmChannels = Array.from(useDMChannels().values());
4239

4340
return (
4441
<>
@@ -50,7 +47,25 @@ export default function DMessageList() {
5047
</div>
5148
</div>
5249
<div className="border-t-2 mx-5 border-grey-700 flex flex-col pt-3">
53-
{ mapToComponentArray(dmChannels, setChannel) }
50+
{ dmChannels.map((value) => (
51+
<div
52+
key={value.channel_id}
53+
className="flex items-center p-2 w-full hover:bg-grey-700 rounded-md transition-colors"
54+
onClick={() => {
55+
setChannel({
56+
channel_id: value.channel_id,
57+
server_id: value.server_id,
58+
name: value.recipient.username,
59+
is_media: false,
60+
description: null,
61+
created_at: null
62+
});
63+
}}
64+
>
65+
<UserIcon user={value.recipient} className="!w-6 !h-6"/>
66+
<div>{value.recipient.username}</div>
67+
</div>
68+
))}
5469
</div>
5570
</>
5671
);

lib/DMChannelHelper.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import { Database } from '@/types/database.supabase';
22
import { DMChannelWithRecipient } from '@/types/dbtypes';
33
import { User } from '@/types/dbtypes';
44
import { SupabaseClient } from '@supabase/supabase-js';
5-
import { Channel } from '@/types/dbtypes';
65
import { createDM } from '@/services/directmessage.service';
76

87
export async function getOrCreateDMChannel(

0 commit comments

Comments
 (0)