2026-01-26 10:30:49 -05:00

36 lines
1.6 KiB
Python

import graphene
from graphene import InputObjectType
class ProfileCreateInput(InputObjectType):
"""
Input type for creating a new profile.
"""
user_id = graphene.ID(required=True, description="ID of the associated Django User")
first_name = graphene.String(required=True, description="First name of the user")
last_name = graphene.String(required=True, description="Last name of the user")
primary_phone = graphene.String(required=True, description="Primary phone number")
secondary_phone = graphene.String(description="Secondary phone number")
email = graphene.String(required=True, description="Email address")
role = graphene.String(required=True, description="Role (admin, team_leader, team_member)")
class ProfileUpdateInput(InputObjectType):
"""
Input type for updating an existing profile.
"""
id = graphene.ID(required=True, description="ID of the profile to update")
first_name = graphene.String(description="First name of the user")
last_name = graphene.String(description="Last name of the user")
primary_phone = graphene.String(description="Primary phone number")
secondary_phone = graphene.String(description="Secondary phone number")
email = graphene.String(description="Email address")
role = graphene.String(description="Role (admin, team_leader, team_member)")
class ProfileSearchInput(InputObjectType):
"""
Input type for searching profiles
"""
search_term = graphene.String(description="Search term to match against name, email, or phone")
role = graphene.String(description="Filter by role")
is_active = graphene.Boolean(description="Filter by active status")