import strawberry import strawberry_django as sd from typing import List, Optional from core.graphql.types.scope import ScopeType, AreaType, TaskType, TaskCompletionType from core.graphql.filters.scope import ScopeFilter, AreaFilter, TaskFilter, TaskCompletionFilter @strawberry.type class Query: scope: Optional[ScopeType] = sd.node() area: Optional[AreaType] = sd.node() task: Optional[TaskType] = sd.node() task_completion: Optional[TaskCompletionType] = sd.node() scopes: List[ScopeType] = sd.field(filters=ScopeFilter) areas: List[AreaType] = sd.field(filters=AreaFilter) tasks: List[TaskType] = sd.field(filters=TaskFilter) task_completions: List[TaskCompletionType] = sd.field(filters=TaskCompletionFilter)