67 lines
1.6 KiB
Python
67 lines
1.6 KiB
Python
from typing import Optional
|
|
import strawberry
|
|
from strawberry.relay import GlobalID
|
|
|
|
|
|
@strawberry.input
|
|
class ProjectScopeInput:
|
|
name: str
|
|
project_id: GlobalID
|
|
account_id: Optional[GlobalID] = None
|
|
account_address_id: Optional[GlobalID] = None
|
|
description: Optional[str] = None
|
|
is_active: Optional[bool] = True
|
|
|
|
|
|
@strawberry.input
|
|
class ProjectScopeUpdateInput:
|
|
id: GlobalID
|
|
name: Optional[str] = None
|
|
account_id: Optional[GlobalID] = None
|
|
account_address_id: Optional[GlobalID] = None
|
|
description: Optional[str] = None
|
|
is_active: Optional[bool] = None
|
|
|
|
|
|
@strawberry.input
|
|
class ProjectScopeCategoryInput:
|
|
scope_id: GlobalID
|
|
name: str
|
|
order: int = 0
|
|
|
|
|
|
@strawberry.input
|
|
class ProjectScopeCategoryUpdateInput:
|
|
id: GlobalID
|
|
name: Optional[str] = None
|
|
order: Optional[int] = None
|
|
|
|
|
|
@strawberry.input
|
|
class ProjectScopeTaskInput:
|
|
category_id: GlobalID
|
|
description: str
|
|
checklist_description: Optional[str] = ""
|
|
order: int = 0
|
|
estimated_minutes: Optional[int] = None
|
|
|
|
|
|
@strawberry.input
|
|
class ProjectScopeTaskUpdateInput:
|
|
id: GlobalID
|
|
description: Optional[str] = None
|
|
checklist_description: Optional[str] = None
|
|
order: Optional[int] = None
|
|
estimated_minutes: Optional[int] = None
|
|
|
|
|
|
@strawberry.input
|
|
class CreateProjectScopeFromTemplateInput:
|
|
template_id: GlobalID
|
|
project_id: GlobalID
|
|
account_id: Optional[GlobalID] = None
|
|
account_address_id: Optional[GlobalID] = None
|
|
name: Optional[str] = None
|
|
description: Optional[str] = None
|
|
is_active: Optional[bool] = True
|