Skip to content

Team · Repositories

0 modules · 0 exports · 1 repository · 14 e2e tests · 7 routes

Every table a function queries, its own helpers included, read or written. Calls to other repositories are listed apart, their tables are on their own page.

TeamRepository

app/features/team/TeamRepository.server.ts
Tables
AllTeamAllTeamMemberCalendarEventCalendarEventDateTeamTeamMemberTeamMemberWithSecondaryTenStarWeaponTournamentTournamentDivisionTierTournamentResultTournamentTeamUnvalidatedUserSubmittedImageUserUserSubmittedImageUserWeaponPool
Calls
LFGRepositoryMatchProfileRepository
Imports
no other modules
Used by
11 loaders10 actions2 routes1 script6 other

Types

type

FindResultPlacementsById

no JSDoc:202
export type FindResultPlacementsById = NonNullable<
	Awaited<ReturnType<typeof findResultPlacementsById>>
>;

Functions & values

function

searchByName

no JSDoc:23
export function searchByName({
	query,
	limit,
}: {
	query: string;
	limit: number;
})
function

findAllMemberOfByUserId

no JSDoc:79
export function findAllMemberOfByUserId(userId: number)
function

findResultPlacementsById

no JSDoc:206
export function findResultPlacementsById(teamId: number)
function

findAllByMemberUserId

no JSDoc:327
export async function findAllByMemberUserId(
	userId: number,
	trx?: Transaction<DB>,
)
Unit tests (1)
function

insert

no JSDoc:357
export async function insert(
	args: Pick<Insertable<Tables["Team"]>, "name"> & {
		ownerUserId: number;
		isMainTeam: boolean;
	},
)
function

update

no JSDoc:390
export async function update({
	id,
	name,
	bio,
	bsky,
	tag,
	avatarImgId,
	bannerImgId,
}: Pick<
	Insertable<Tables["Team"]>,
	"id" | "name" | "bio" | "bsky" | "tag" | "avatarImgId" | "bannerImgId"
>)
function

updateCustomTheme

no JSDoc:444
export async function updateCustomTheme({
	id,
	customTheme,
}: {
	id: number;
	customTheme: CustomTheme | null;
})
TablesAllTeam
function

updateMapModePreferences

:461

Sets (or clears with null) SendouQ map/mode preferences; map pools of modes missing from the new value are kept.

export async function updateMapModePreferences({
	id,
	mapModePreferences,
}: {
	id: number;
	mapModePreferences: UserMapModePreferences | null;
})
function

switchOwnMainTeam

no JSDoc:498
export function switchOwnMainTeam(teamId: number)
function

deleteById

no JSDoc:525
export function deleteById(teamId: number)
function

resetInviteCode

no JSDoc:571
export function resetInviteCode(teamId: number)
TablesAllTeam
function

insertOwnMembership

no JSDoc:581
export function insertOwnMembership({
	teamId,
	maxTeamsAllowed,
}: {
	teamId: number;
	maxTeamsAllowed: number;
})
function

handleMemberLeaving

no JSDoc:622
export function handleMemberLeaving({
	userId,
	teamId,
	newOwnerUserId,
}: {
	userId: number;
	teamId: number;
	newOwnerUserId?: number;
})
function

updateRoster

:637

In one transaction: updates kept members' role & editor status and kicks kickedUserIds.

export function updateRoster({
	teamId,
	members,
	kickedUserIds,
}: {
	teamId: number;
	members: Array<{
		userId: number;
		role: Tables["TeamMember"]["role"];
		customRole: Tables["TeamMember"]["customRole"];
		roleType: Tables["TeamMember"]["roleType"];
		isManager: boolean;
		order: number;
	}>;
	kickedUserIds: number[];
})