Complete contractor team module — 12 screens covering the full lifecycle from invite to onboarding, performance tracking, HR operations, roles & permissions, and document management.
TeamMemberListItem, TeamInviteCard
useQuery(api.teams.contractorTeamQueries.listMembers)
Input, Select, Button
useMutation(api.teams.contractorTeams.inviteMember)
Avatar, RoleBadge, StatusIndicator
useQuery(api.teams.contractorTeamQueries.getMember)
Avatar, Card, numbered rank badges
useQuery(api.teams.technicianPerformance.getTeamLeaderboard)
StatCard, MetricComparison
useQuery(api.teams.technicianPerformance.getTechnicianScorecard)
CustomRoleCard, Switch
useQuery(api.teams.contractorTeamQueries.listCustomRoles)
PermissionGroup, Input
useMutation(api.teams.contractorTeams.createCustomRole)
Switch, Badge
useQuery(api.teams.contractorTeamQueries.getCustomRole)
StatCard, StatusBadge, OnboardingBadge
useQuery(api.teams.hrPortalQueries.getHRStats)
Modal overlay with type selection chips
useMutation(api.teams.hrPortal.terminateMember)
OnboardingProgressBar, OnboardingStatusCard, DocumentCard
useQuery(api.teams.teamMemberDocumentQueries.myOnboarding)
DocumentCard, AlertDialog
useQuery(api.teams.teamMemberDocumentQueries.listMemberDocuments)
CSVUploader, ImportPreviewTable
useMutation(api.teams.contractorTeams.bulkImportMembers)
BulkReviewList, SelectableCard
useMutation(api.teams.contractorTeams.bulkApproveMembers)
ToggleSwitch, ApprovalRuleCard
useMutation(api.teams.contractorTeams.updateAutoApprove)
PipelineChart, RoleGroupCard
useQuery(api.teams.contractorTeamQueries.getPipelineByRole)
Team member earnings dashboard with period filters, type breakdown, and commission history.
useQuery(api.commissions.getMyEarnings)
HR termination management with case tracking and status badges.
useQuery(api.teams.hr.listTerminations)
Team payout management with summary stats and recent payout history.
useQuery(api.teams.payouts.list)
Tech message threads with avatars and unread indicators.
useQuery(api.messages.listTechThreads)
Individual earnings dashboard with hero stat, period breakdown, and commission detail.
useQuery(api.commissions.getMyEarningsDetail)
Ranked leaderboard with avatars, job counts, ratings, and revenue stats.
useQuery(api.teams.leaderboard.ranked)
Schema tables, queries, mutations, and status flows that power Team Management — roster, roles, permissions, HR portal, onboarding, documents, and team member earnings.