nexus-5/core/graphql/inputs/scope_template.py
2026-01-26 11:09:40 -05:00

63 lines
1.5 KiB
Python

import strawberry
from typing import Optional
@strawberry.input
class ScopeTemplateInput:
name: str
description: Optional[str] = None
is_active: Optional[bool] = True
@strawberry.input
class ScopeTemplateUpdateInput:
id: strawberry.ID
name: Optional[str] = None
description: Optional[str] = None
is_active: Optional[bool] = None
@strawberry.input
class AreaTemplateInput:
scope_template_id: strawberry.ID
name: str
order: Optional[int] = 0
@strawberry.input
class AreaTemplateUpdateInput:
id: strawberry.ID
name: Optional[str] = None
order: Optional[int] = None
@strawberry.input
class TaskTemplateInput:
area_template_id: strawberry.ID
description: str
checklist_description: Optional[str] = None
frequency: str # Must match TaskFrequencyChoices values
order: Optional[int] = 0
is_conditional: Optional[bool] = False
estimated_minutes: Optional[int] = None
@strawberry.input
class TaskTemplateUpdateInput:
id: strawberry.ID
description: Optional[str] = None
checklist_description: Optional[str] = None
frequency: Optional[str] = None
order: Optional[int] = None
is_conditional: Optional[bool] = None
estimated_minutes: Optional[int] = None
@strawberry.input
class CreateScopeFromTemplateInput:
template_id: strawberry.ID
account_id: strawberry.ID
account_address_id: Optional[strawberry.ID] = None
name: Optional[str] = None
description: Optional[str] = None
is_active: Optional[bool] = True