deleteIssue method
Deletes an issue.
This uses the GraphQL API, since issue deletion is not available in the REST API.
API docs: https://docs.github.com/en/graphql/reference/mutations#deleteissue
Implementation
Future<void> deleteIssue(RepositorySlug slug, int issueNumber) async {
final issue = await get(slug, issueNumber);
final issueId = issue.nodeId;
const mutation = r'''
mutation DeleteIssue($issueId: ID!) {
deleteIssue(input: {issueId: $issueId}) {
clientMutationId
}
}
''';
final result = await github.graphql.mutate(
mutation,
variables: {'issueId': issueId},
);
if (result.hasException) {
throw result.exception!;
}
}