@@ -5,15 +5,16 @@ import { Button } from "@/components/ui/button";
55import { Menu , Hash , MessageCircle } from "lucide-react" ;
66import { MessageInput } from "./message-input" ;
77import { MessageList } from "./message-list" ;
8- import { Channel , ChannelsPage , Client , User } from "@absmach/magistrala-sdk" ;
9- import { ListChannelMembers , ListChannelRoles , ViewChannel } from "@/lib/channels" ;
8+ import { Channel , ChannelsPage , Client , MembersPage , User , UserBasicInfo } from "@absmach/magistrala-sdk" ;
9+ import { ListChannelMembers , ViewChannel } from "@/lib/channels" ;
1010import { useWebSocket } from "../providers/socket-provider" ;
1111import { Session } from "@/types/auth" ;
1212import { UserProfile , ViewUser } from "@/lib/users" ;
1313import { GetMessages } from "@/lib/messages" ;
1414import { ChatMenu } from "./chat-menu" ;
1515import { EntityFetchData } from "@/lib/actions" ;
1616import { ListChannelRoleMembers , ListChannelRoles } from "@/lib/roles" ;
17+ import { RoleMembersPage } from "@/types/entities" ;
1718
1819interface Props {
1920 selectedChannel : string | null ;
@@ -45,7 +46,7 @@ export function ChatView({
4546 const { workspace } = session ;
4647 const [ channelInfo , setChannelInfo ] = useState < Channel | null > ( null ) ;
4748 const [ dmUserInfo , setDmUserInfo ] = useState < User | null > ( null ) ;
48- const [ members , setMembers ] = useState < UserBasicInfo [ ] > ( [ ] ) ;
49+ const [ members , setMembers ] = useState < RoleMembersPage > ( ) ;
4950
5051 useEffect ( ( ) => {
5152 const fetchMessages = async ( ) => {
@@ -161,6 +162,7 @@ export function ChatView({
161162 useEffect ( ( ) => {
162163 const getMembers = async ( ) => {
163164 const roleResponse = await ListChannelRoles ( {
165+ id : selectedChannel as string ,
164166 queryParams : { offset : 0 , limit : 10 } ,
165167 } ) ;
166168
@@ -178,7 +180,7 @@ export function ChatView({
178180 } ,
179181 ) ;
180182 if ( response . data ) {
181- setMembers ( response . data . members ) ;
183+ setMembers ( response . data ) ;
182184 }
183185 } ;
184186 getMembers ( ) ;
@@ -200,7 +202,6 @@ export function ChatView({
200202 ) ;
201203 }
202204
203-
204205 return (
205206 < div className = "flex-1 flex flex-col bg-white" >
206207 < div className = "border-b px-4 py-3 flex items-center justify-between" >
@@ -223,14 +224,14 @@ export function ChatView({
223224 < h2 className = "font-semibold text-gray-900" > { channelInfo ?. name } </ h2 >
224225 { channelInfo ?. tags ?. includes ( "chat" ) && (
225226 < p className = "text-xs text-gray-500" >
226- { members ?. length } { members ?. length === 1 ? "member" : "members" }
227+ { members ?. total } { members ?. total === 1 ? "member" : "members" }
227228 </ p >
228229 ) }
229230 </ div >
230231 </ >
231232 ) }
232233 </ div >
233- < ChatMenu channelId = { channelInfo ?. id as string } chatName = { channelInfo ?. name as string } domainId = { domain ?. id as string } initMembers = { initMembers } />
234+ < ChatMenu channelId = { channelInfo ?. id as string } chatName = { channelInfo ?. name as string } workspaceId = { workspace ?. id as string } initMembers = { initMembers } />
234235 </ div >
235236
236237 < div className = "flex-1 flex flex-col" >
0 commit comments