Files
task-stream/libs/web/tracker/infrastructure/src/lib/graphql/issues.graphql
Josep Piguillem 0606f53026 feat: an ordered backlog
A Backlog tab lists the tickets still to start in the order the team will
take them; drag them, or use the arrows, to reorder. Moving a ticket only
rewrites that ticket's rank, read from the event store, and board columns
follow the same order.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 14:01:44 +02:00

194 lines
3.6 KiB
GraphQL

query Board($idOrKey: String!, $releaseId: ID, $assigneeId: ID, $area: String) {
project(idOrKey: $idOrKey) {
id
board(
releaseId: $releaseId
assigneeId: $assigneeId
area: $area
perColumn: 100
) {
status
total
issues {
...IssueSummaryFields
}
}
}
}
query Issue($idOrKey: String!) {
issue(idOrKey: $idOrKey) {
...IssueFields
}
}
query SearchIssues($filter: IssueFilterInput!) {
issues(filter: $filter, limit: 20) {
items {
...IssueSummaryFields
}
}
}
mutation CreateIssue($input: CreateIssueInput!) {
createIssue(input: $input) {
...CommandResultFields
}
}
mutation UpdateIssue($input: UpdateIssueInput!) {
updateIssue(input: $input) {
...CommandResultFields
}
}
mutation ChangeIssueStatus($input: ChangeIssueStatusInput!) {
changeIssueStatus(input: $input) {
...CommandResultFields
}
}
mutation AssignIssue($issueId: ID!, $assigneeId: ID) {
assignIssue(issueId: $issueId, assigneeId: $assigneeId) {
...CommandResultFields
}
}
mutation LinkIssues($input: LinkIssuesInput!) {
linkIssues(input: $input) {
...CommandResultFields
}
}
mutation UnlinkIssues($input: LinkIssuesInput!) {
unlinkIssues(input: $input) {
...CommandResultFields
}
}
mutation WatchIssue($issueId: ID!) {
watchIssue(issueId: $issueId) {
...CommandResultFields
}
}
mutation UnwatchIssue($issueId: ID!) {
unwatchIssue(issueId: $issueId) {
...CommandResultFields
}
}
mutation SetIssueRelease($issueId: ID!, $releaseId: ID) {
setIssueRelease(issueId: $issueId, releaseId: $releaseId) {
...CommandResultFields
}
}
query IssueComments($idOrKey: String!) {
issue(idOrKey: $idOrKey) {
id
comments(limit: 200) {
items {
...CommentFields
}
}
}
}
mutation AddComment($issueId: ID!, $body: String!) {
addComment(issueId: $issueId, body: $body) {
...CommandResultFields
}
}
mutation EditComment($commentId: ID!, $body: String!) {
editComment(commentId: $commentId, body: $body) {
...CommandResultFields
}
}
mutation DeleteComment($commentId: ID!) {
deleteComment(commentId: $commentId) {
...CommandResultFields
}
}
query MyIssues(
$assignedToMe: Boolean!
$categories: [StatusCategory!]
$limit: Int!
) {
myIssues(
assignedToMe: $assignedToMe
categories: $categories
limit: $limit
) {
total
items {
...IssueSummaryFields
}
}
}
query IssueChildren($filter: IssueFilterInput!) {
issues(filter: $filter, limit: 200) {
items {
...IssueSummaryFields
}
}
}
query Epics($projectId: ID!) {
epics(projectId: $projectId) {
issue {
...IssueSummaryFields
}
progress {
total
finished
percent
storyPoints
finishedStoryPoints
}
}
}
mutation SetIssueParent($issueId: ID!, $parentId: ID) {
setIssueParent(issueId: $issueId, parentId: $parentId) {
...CommandResultFields
}
}
mutation AddChecklistItem($input: AddChecklistItemInput!) {
addChecklistItem(input: $input) {
...CommandResultFields
}
}
mutation UpdateChecklistItem($input: UpdateChecklistItemInput!) {
updateChecklistItem(input: $input) {
...CommandResultFields
}
}
mutation RemoveChecklistItem($issueId: ID!, $itemId: ID!) {
removeChecklistItem(issueId: $issueId, itemId: $itemId) {
...CommandResultFields
}
}
query Backlog($filter: IssueFilterInput!) {
issues(filter: $filter, limit: 200) {
items {
...IssueSummaryFields
}
total
}
}
mutation RankIssue($input: RankIssueInput!) {
rankIssue(input: $input) {
...CommandResultFields
}
}