FriendRepository
app/features/friends/FriendRepository.server.ts- Tables
- CalendarEventCalendarEventDateFriendRequestFriendshipTeamMemberWithSecondaryTournamentTournamentTeamTournamentTeamMemberUserUserSubmittedImage
- Calls
- no other repositories
- Imports
- no other modules
- Used by
- 2 loaders1 action1 route1 repository1 routine1 script5 other
Functions & values
export async function findByUserIdWithActivity(userId: number)
Unit tests (2)
export async function findPendingSentRequests(senderId: number)
Loaders/friends
export async function insertFriendRequest({ senderId, receiverId, }: { senderId: number; receiverId: number; })
TablesFriendRequest
export async function deleteFriendRequest({ id, senderId, }: { id: number; senderId: number; })
TablesFriendRequest
Actions/friends
export function deleteOldPendingRequests()
TablesFriendRequest
export async function findFriendRequestBetween({ senderId, receiverId, }: { senderId: number; receiverId: number; })
TablesFriendRequest
Pins or unpins the friendship for the acting user only, the other side keeps their own choice.
export async function updateOwnFriendshipPinned({ friendshipId, isPinned, }: { friendshipId: number; isPinned: boolean; })
TablesFriendship
Unit tests (3)
Actions/friends
export async function findPendingReceivedRequests(receiverId: number)
Loaders/friends
export async function findPendingReceivedRequestIds( receiverId: number, ): Promise<number[]>
TablesFriendRequest
export async function insertFriendship({ userOneId, userTwoId, friendRequestId, }: { userOneId: number; userTwoId: number; friendRequestId: number; })
TablesFriendRequestFriendship
Actions/friends
export async function findFriendRequestByIdAndReceiver({ id, receiverId, }: { id: number; receiverId: number; })
TablesFriendRequestUser
Unit tests (2)
Actions/friends
export async function deleteFriendRequestByReceiver({ id, receiverId, }: { id: number; receiverId: number; })
TablesFriendRequest
Unit tests (1)
Actions/friends
export async function findMutualFriends({ loggedInUserId, targetUserId, }: { loggedInUserId: number; targetUserId: number; })
Unit tests (2)
export async function countPendingSentRequests( senderId: number, ): Promise<number>
TablesFriendRequest
Unit tests (2)
Actions/friends
export async function findFriendsByUserId(userId: number)
export async function findFriendIds(userId: number): Promise<number[]>
TablesFriendship
Repositoriesassociations/AssociationRepository.server.ts
export async function findFriendship({ userOneId, userTwoId, }: { userOneId: number; userTwoId: number; })
TablesFriendship
Unit tests not about one export (13)
- insertFriendRequest / findFriendRequestBetween › finds
- insertFriendRequest / findFriendRequestBetween › returns undefined for unrelated users
- findPendingSentRequests / findPendingReceivedRequests › sent
- findPendingSentRequests / findPendingReceivedRequests › does not appear in wrong user's requests
- insertFriendship / findFriendship / findFriendIds › creates friendship and removes friend request
- insertFriendship / findFriendship / findFriendIds › normalizes IDs so userOneId < userTwoId
- insertFriendship / findFriendship / findFriendIds › findFriendIds
- deleteFriendship › removes friendship
- deleteFriendship › does not delete friendship user is not part of