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")