092_user_interface / src /services /member.service.js
anotherath's picture
fix ui and core
4bae792
import api from "./api";
export const memberService = {
// Get space members
getSpaceMembers: (spaceId) => api.get(`/spaces/${spaceId}/members`),
// Add member to space
addSpaceMember: (spaceId, userId) =>
api.post(`/spaces/${spaceId}/members`, { userId }),
// Remove member from space
removeSpaceMember: (spaceId, userId) =>
api.delete(`/spaces/${spaceId}/members/${userId}`),
// Get member role
getMemberRole: (spaceId, userId) =>
api.get(`/spaces/${spaceId}/members/${userId}/role`),
// Update member role
updateMemberRole: (spaceId, userId, role) =>
api.patch(`/spaces/${spaceId}/members/${userId}/role`, { role }),
// Get online status
getOnlineStatus: (userId) => api.get(`/users/${userId}/status`),
// Get room members
getRoomMembers: (roomId) => api.get(`/rooms/${roomId}/members`),
// Get member activity (last active, message count, etc.)
getMemberActivity: (spaceId, userId) =>
api.get(`/spaces/${spaceId}/members/${userId}/activity`),
// Get pending invitations
getPendingInvitations: (spaceId) => api.get(`/spaces/${spaceId}/invitations`),
// Send invitation
sendInvitation: (spaceId, email) =>
api.post(`/spaces/${spaceId}/invite`, { email }),
// Cancel invitation
cancelInvitation: (spaceId, invitationId) =>
api.delete(`/spaces/${spaceId}/invitations/${invitationId}`),
// Accept invitation
acceptInvitation: (token) => api.post(`/spaces/invite/accept`, { token }),
// Get member list with filters
searchMembers: (spaceId, query) =>
api.get(`/spaces/${spaceId}/members/search`, { params: { q: query } }),
};