// Code generated by github.com/99designs/gqlgen, DO NOT EDIT. package graph import ( "fmt" "io" "strconv" "time" "github.com/google/uuid" "github.com/jordanknott/project-citadel/api/internal/db" ) type AddTaskLabelInput struct { TaskID uuid.UUID `json:"taskID"` ProjectLabelID uuid.UUID `json:"projectLabelID"` } type AssignTaskInput struct { TaskID uuid.UUID `json:"taskID"` UserID uuid.UUID `json:"userID"` } type ChecklistBadge struct { Complete int `json:"complete"` Total int `json:"total"` } type CreateProjectMember struct { ProjectID uuid.UUID `json:"projectID"` UserID uuid.UUID `json:"userID"` } type CreateProjectMemberPayload struct { Ok bool `json:"ok"` Member *Member `json:"member"` } type CreateTaskChecklist struct { TaskID uuid.UUID `json:"taskID"` Name string `json:"name"` Position float64 `json:"position"` } type CreateTaskChecklistItem struct { TaskChecklistID uuid.UUID `json:"taskChecklistID"` Name string `json:"name"` Position float64 `json:"position"` } type CreateTeamMember struct { UserID uuid.UUID `json:"userID"` TeamID uuid.UUID `json:"teamID"` } type CreateTeamMemberPayload struct { Team *db.Team `json:"team"` TeamMember *Member `json:"teamMember"` } type DeleteProject struct { ProjectID uuid.UUID `json:"projectID"` } type DeleteProjectLabel struct { ProjectLabelID uuid.UUID `json:"projectLabelID"` } type DeleteProjectMember struct { ProjectID uuid.UUID `json:"projectID"` UserID uuid.UUID `json:"userID"` } type DeleteProjectMemberPayload struct { Ok bool `json:"ok"` Member *Member `json:"member"` ProjectID uuid.UUID `json:"projectID"` } type DeleteProjectPayload struct { Ok bool `json:"ok"` Project *db.Project `json:"project"` } type DeleteTaskChecklist struct { TaskChecklistID uuid.UUID `json:"taskChecklistID"` } type DeleteTaskChecklistItem struct { TaskChecklistItemID uuid.UUID `json:"taskChecklistItemID"` } type DeleteTaskChecklistItemPayload struct { Ok bool `json:"ok"` TaskChecklistItem *db.TaskChecklistItem `json:"taskChecklistItem"` } type DeleteTaskChecklistPayload struct { Ok bool `json:"ok"` TaskChecklist *db.TaskChecklist `json:"taskChecklist"` } type DeleteTaskGroupInput struct { TaskGroupID uuid.UUID `json:"taskGroupID"` } type DeleteTaskGroupPayload struct { Ok bool `json:"ok"` AffectedRows int `json:"affectedRows"` TaskGroup *db.TaskGroup `json:"taskGroup"` } type DeleteTaskInput struct { TaskID string `json:"taskID"` } type DeleteTaskPayload struct { TaskID string `json:"taskID"` } type DeleteTeam struct { TeamID uuid.UUID `json:"teamID"` } type DeleteTeamMember struct { TeamID uuid.UUID `json:"teamID"` UserID uuid.UUID `json:"userID"` NewOwnerID *uuid.UUID `json:"newOwnerID"` } type DeleteTeamMemberPayload struct { TeamID uuid.UUID `json:"teamID"` UserID uuid.UUID `json:"userID"` AffectedProjects []db.Project `json:"affectedProjects"` } type DeleteTeamPayload struct { Ok bool `json:"ok"` Team *db.Team `json:"team"` Projects []db.Project `json:"projects"` } type DeleteUserAccount struct { UserID uuid.UUID `json:"userID"` NewOwnerID *uuid.UUID `json:"newOwnerID"` } type DeleteUserAccountPayload struct { Ok bool `json:"ok"` UserAccount *db.UserAccount `json:"userAccount"` } type FindProject struct { ProjectID string `json:"projectId"` } type FindTask struct { TaskID uuid.UUID `json:"taskID"` } type FindTeam struct { TeamID uuid.UUID `json:"teamID"` } type FindUser struct { UserID string `json:"userId"` } type LogoutUser struct { UserID string `json:"userID"` } type Member struct { ID uuid.UUID `json:"id"` Role *db.Role `json:"role"` FullName string `json:"fullName"` Username string `json:"username"` ProfileIcon *ProfileIcon `json:"profileIcon"` Owned *OwnedList `json:"owned"` Member *MemberList `json:"member"` } type MemberList struct { Teams []db.Team `json:"teams"` Projects []db.Project `json:"projects"` } type NewProject struct { UserID uuid.UUID `json:"userID"` TeamID uuid.UUID `json:"teamID"` Name string `json:"name"` } type NewProjectLabel struct { ProjectID uuid.UUID `json:"projectID"` LabelColorID uuid.UUID `json:"labelColorID"` Name *string `json:"name"` } type NewRefreshToken struct { UserID string `json:"userId"` } type NewTask struct { TaskGroupID string `json:"taskGroupID"` Name string `json:"name"` Position float64 `json:"position"` } type NewTaskGroup struct { ProjectID string `json:"projectID"` Name string `json:"name"` Position float64 `json:"position"` } type NewTaskGroupLocation struct { TaskGroupID uuid.UUID `json:"taskGroupID"` Position float64 `json:"position"` } type NewTaskLocation struct { TaskID uuid.UUID `json:"taskID"` TaskGroupID uuid.UUID `json:"taskGroupID"` Position float64 `json:"position"` } type NewTeam struct { Name string `json:"name"` OrganizationID uuid.UUID `json:"organizationID"` } type NewUserAccount struct { Username string `json:"username"` Email string `json:"email"` FullName string `json:"fullName"` Initials string `json:"initials"` Password string `json:"password"` RoleCode string `json:"roleCode"` } type OwnedList struct { Teams []db.Team `json:"teams"` Projects []db.Project `json:"projects"` } type OwnersList struct { Projects []uuid.UUID `json:"projects"` Teams []uuid.UUID `json:"teams"` } type ProfileIcon struct { URL *string `json:"url"` Initials *string `json:"initials"` BgColor *string `json:"bgColor"` } type ProjectsFilter struct { TeamID *uuid.UUID `json:"teamID"` } type RemoveTaskLabelInput struct { TaskLabelID uuid.UUID `json:"taskLabelID"` } type SetProjectOwner struct { ProjectID uuid.UUID `json:"projectID"` OwnerID uuid.UUID `json:"ownerID"` } type SetProjectOwnerPayload struct { Ok bool `json:"ok"` PrevOwner *Member `json:"prevOwner"` NewOwner *Member `json:"newOwner"` } type SetTaskChecklistItemComplete struct { TaskChecklistItemID uuid.UUID `json:"taskChecklistItemID"` Complete bool `json:"complete"` } type SetTaskComplete struct { TaskID uuid.UUID `json:"taskID"` Complete bool `json:"complete"` } type SetTeamOwner struct { TeamID uuid.UUID `json:"teamID"` UserID uuid.UUID `json:"userID"` } type SetTeamOwnerPayload struct { Ok bool `json:"ok"` PrevOwner *Member `json:"prevOwner"` NewOwner *Member `json:"newOwner"` } type TaskBadges struct { Checklist *ChecklistBadge `json:"checklist"` } type ToggleTaskLabelInput struct { TaskID uuid.UUID `json:"taskID"` ProjectLabelID uuid.UUID `json:"projectLabelID"` } type ToggleTaskLabelPayload struct { Active bool `json:"active"` Task *db.Task `json:"task"` } type UnassignTaskInput struct { TaskID uuid.UUID `json:"taskID"` UserID uuid.UUID `json:"userID"` } type UpdateProjectLabel struct { ProjectLabelID uuid.UUID `json:"projectLabelID"` LabelColorID uuid.UUID `json:"labelColorID"` Name string `json:"name"` } type UpdateProjectLabelColor struct { ProjectLabelID uuid.UUID `json:"projectLabelID"` LabelColorID uuid.UUID `json:"labelColorID"` } type UpdateProjectLabelName struct { ProjectLabelID uuid.UUID `json:"projectLabelID"` Name string `json:"name"` } type UpdateProjectMemberRole struct { ProjectID uuid.UUID `json:"projectID"` UserID uuid.UUID `json:"userID"` RoleCode RoleCode `json:"roleCode"` } type UpdateProjectMemberRolePayload struct { Ok bool `json:"ok"` Member *Member `json:"member"` } type UpdateProjectName struct { ProjectID uuid.UUID `json:"projectID"` Name string `json:"name"` } type UpdateTaskChecklistItemLocation struct { ChecklistID uuid.UUID `json:"checklistID"` ChecklistItemID uuid.UUID `json:"checklistItemID"` Position float64 `json:"position"` } type UpdateTaskChecklistItemLocationPayload struct { ChecklistID uuid.UUID `json:"checklistID"` PrevChecklistID uuid.UUID `json:"prevChecklistID"` ChecklistItem *db.TaskChecklistItem `json:"checklistItem"` } type UpdateTaskChecklistItemName struct { TaskChecklistItemID uuid.UUID `json:"taskChecklistItemID"` Name string `json:"name"` } type UpdateTaskChecklistLocation struct { ChecklistID uuid.UUID `json:"checklistID"` Position float64 `json:"position"` } type UpdateTaskChecklistLocationPayload struct { Checklist *db.TaskChecklist `json:"checklist"` } type UpdateTaskChecklistName struct { TaskChecklistID uuid.UUID `json:"taskChecklistID"` Name string `json:"name"` } type UpdateTaskDescriptionInput struct { TaskID uuid.UUID `json:"taskID"` Description string `json:"description"` } type UpdateTaskDueDate struct { TaskID uuid.UUID `json:"taskID"` DueDate *time.Time `json:"dueDate"` } type UpdateTaskGroupName struct { TaskGroupID uuid.UUID `json:"taskGroupID"` Name string `json:"name"` } type UpdateTaskLocationPayload struct { PreviousTaskGroupID uuid.UUID `json:"previousTaskGroupID"` Task *db.Task `json:"task"` } type UpdateTaskName struct { TaskID string `json:"taskID"` Name string `json:"name"` } type UpdateTeamMemberRole struct { TeamID uuid.UUID `json:"teamID"` UserID uuid.UUID `json:"userID"` RoleCode RoleCode `json:"roleCode"` } type UpdateTeamMemberRolePayload struct { Ok bool `json:"ok"` Member *Member `json:"member"` } type UpdateUserPassword struct { UserID uuid.UUID `json:"userID"` Password string `json:"password"` } type UpdateUserPasswordPayload struct { Ok bool `json:"ok"` User *db.UserAccount `json:"user"` } type UpdateUserRole struct { UserID uuid.UUID `json:"userID"` RoleCode RoleCode `json:"roleCode"` } type UpdateUserRolePayload struct { User *db.UserAccount `json:"user"` } type RoleCode string const ( RoleCodeOwner RoleCode = "owner" RoleCodeAdmin RoleCode = "admin" RoleCodeMember RoleCode = "member" RoleCodeObserver RoleCode = "observer" ) var AllRoleCode = []RoleCode{ RoleCodeOwner, RoleCodeAdmin, RoleCodeMember, RoleCodeObserver, } func (e RoleCode) IsValid() bool { switch e { case RoleCodeOwner, RoleCodeAdmin, RoleCodeMember, RoleCodeObserver: return true } return false } func (e RoleCode) String() string { return string(e) } func (e *RoleCode) UnmarshalGQL(v interface{}) error { str, ok := v.(string) if !ok { return fmt.Errorf("enums must be strings") } *e = RoleCode(str) if !e.IsValid() { return fmt.Errorf("%s is not a valid RoleCode", str) } return nil } func (e RoleCode) MarshalGQL(w io.Writer) { fmt.Fprint(w, strconv.Quote(e.String())) }