src/app/data/issue/issue-store.service.ts
This service provides CRUD operations and linking for issues The code for the mutations are automaticly generated by a code generator for the GraphQL schema based on the definitions in the issue.graphql file in the same folder
Methods |
constructor(createIssue: CreateIssueGQL, linkIssue: LinkIssueGQL, getFullIssueQuery: GetIssueGQL, commentIssueMutation: CommentIssueGQL, deleteIssueCommentMutation: DeleteIssueCommentGQL, unlinkIssueMutation: UnlinkIssueGQL, closeIssueMutation: CloseIssueGQL, reopenIssueMutation: ReopenIssueGQL, renameIssueMutation: RenameIssueTitleGQL, changeIssueCategoryMutation: ChangeIssueCategoryGQL, addIssueToLocationMutation: AddIssueToLocationGQL, removeIssueFromLocationMutation: RemoveIssueFromLocationGQL, updateCommentMutation: UpdateCommentGQL, getAllTimelineItemsQuery: GetAllTimelineItemsGQL)
|
|||||||||||||||||||||||||||||||||||||||||||||
Defined in src/app/data/issue/issue-store.service.ts:42
|
|||||||||||||||||||||||||||||||||||||||||||||
Parameters :
|
addToLocation | ||||||
addToLocation(addLocationInput: AddIssueToLocationInput)
|
||||||
Parameters :
Returns :
Observable<any>
|
changeIssueCategory | ||||||
changeIssueCategory(changeIssueCategoryInput: ChangeIssueCategoryInput)
|
||||||
Defined in src/app/data/issue/issue-store.service.ts:94
|
||||||
Parameters :
Returns :
Observable<any>
|
close | ||||||
close(closeInput: CloseIssueInput)
|
||||||
Defined in src/app/data/issue/issue-store.service.ts:82
|
||||||
Parameters :
Returns :
Observable<any>
|
commentIssue | ||||||
commentIssue(commentIssueInput: AddIssueCommentInput)
|
||||||
Defined in src/app/data/issue/issue-store.service.ts:72
|
||||||
Parameters :
Returns :
Observable<any>
|
create | ||||||
create(issueInput: CreateIssueInput)
|
||||||
Defined in src/app/data/issue/issue-store.service.ts:60
|
||||||
Parameters :
Returns :
Observable<any>
|
deleteComment | ||||||
deleteComment(deleteIssueCommentInput: DeleteIssueCommentInput)
|
||||||
Defined in src/app/data/issue/issue-store.service.ts:76
|
||||||
Parameters :
Returns :
Observable<any>
|
getAllTimelineItems | ||||||
getAllTimelineItems(id: string)
|
||||||
Parameters :
Returns :
Observable<GetAllTimelineItemsQuery>
|
getFullIssue | ||||||
getFullIssue(id: string)
|
||||||
Parameters :
Returns :
Observable<GetIssueQuery>
|
link | ||||||
link(linkIssueInput: LinkIssueInput)
|
||||||
Defined in src/app/data/issue/issue-store.service.ts:64
|
||||||
Parameters :
Returns :
Observable<any>
|
removeFromLocation | ||||||
removeFromLocation(removeLocationInput: RemoveIssueFromLocationInput)
|
||||||
Parameters :
Returns :
Observable<any>
|
rename | ||||||
rename(renameInput: RenameIssueTitleInput)
|
||||||
Defined in src/app/data/issue/issue-store.service.ts:90
|
||||||
Parameters :
Returns :
Observable<any>
|
reopen | ||||||
reopen(reopenInput: ReopenIssueInput)
|
||||||
Defined in src/app/data/issue/issue-store.service.ts:86
|
||||||
Parameters :
Returns :
Observable<any>
|
unlink | ||||||
unlink(unlinkIssueInput: UnlinkIssueInput)
|
||||||
Defined in src/app/data/issue/issue-store.service.ts:68
|
||||||
Parameters :
Returns :
Observable<any>
|
updateComment | ||||||
updateComment(updateCommentInput: UpdateCommentInput)
|
||||||
Parameters :
Returns :
Observable<any>
|
import {Injectable} from '@angular/core';
import {map} from 'rxjs/operators';
import {
AddIssueCommentInput,
CloseIssueGQL,
CommentIssueGQL,
CreateIssueGQL,
CreateIssueInput,
GetIssueGQL,
GetIssueQuery,
LinkIssueGQL,
LinkIssueInput,
UnlinkIssueGQL,
CloseIssueInput,
UnlinkIssueInput,
ReopenIssueGQL,
ReopenIssueInput,
RenameIssueTitleInput,
RenameIssueTitleGQL,
AddIssueToLocationInput,
RemoveIssueFromLocationInput,
AddIssueToLocationGQL,
RemoveIssueFromLocationGQL,
DeleteIssueCommentInput,
DeleteIssueCommentGQL,
UpdateCommentInput,
UpdateCommentGQL,
GetAllTimelineItemsGQL,
GetAllTimelineItemsQuery,
ChangeIssueCategoryGQL,
ChangeIssueCategoryInput
} from 'src/generated/graphql';
import {Observable} from 'rxjs';
/**
* This service provides CRUD operations and linking for issues
* The code for the mutations are automaticly generated by a code generator for the GraphQL schema
* based on the definitions in the issue.graphql file in the same folder
*/
@Injectable({
providedIn: 'root'
})
export class IssueStoreService {
constructor(
private createIssue: CreateIssueGQL,
private linkIssue: LinkIssueGQL,
private getFullIssueQuery: GetIssueGQL,
private commentIssueMutation: CommentIssueGQL,
private deleteIssueCommentMutation: DeleteIssueCommentGQL,
private unlinkIssueMutation: UnlinkIssueGQL,
private closeIssueMutation: CloseIssueGQL,
private reopenIssueMutation: ReopenIssueGQL,
private renameIssueMutation: RenameIssueTitleGQL,
private changeIssueCategoryMutation: ChangeIssueCategoryGQL,
private addIssueToLocationMutation: AddIssueToLocationGQL,
private removeIssueFromLocationMutation: RemoveIssueFromLocationGQL,
private updateCommentMutation: UpdateCommentGQL,
private getAllTimelineItemsQuery: GetAllTimelineItemsGQL
) {}
create(issueInput: CreateIssueInput): Observable<any> {
return this.createIssue.mutate({input: issueInput});
}
link(linkIssueInput: LinkIssueInput): Observable<any> {
return this.linkIssue.mutate({input: linkIssueInput});
}
unlink(unlinkIssueInput: UnlinkIssueInput): Observable<any> {
return this.unlinkIssueMutation.mutate({input: unlinkIssueInput});
}
commentIssue(commentIssueInput: AddIssueCommentInput): Observable<any> {
return this.commentIssueMutation.mutate({input: commentIssueInput});
}
deleteComment(deleteIssueCommentInput: DeleteIssueCommentInput): Observable<any> {
return this.deleteIssueCommentMutation.mutate({
input: deleteIssueCommentInput
});
}
close(closeInput: CloseIssueInput): Observable<any> {
return this.closeIssueMutation.mutate({input: closeInput});
}
reopen(reopenInput: ReopenIssueInput): Observable<any> {
return this.reopenIssueMutation.mutate({input: reopenInput});
}
rename(renameInput: RenameIssueTitleInput): Observable<any> {
return this.renameIssueMutation.mutate({input: renameInput});
}
changeIssueCategory(changeIssueCategoryInput: ChangeIssueCategoryInput): Observable<any> {
return this.changeIssueCategoryMutation.mutate({
input: changeIssueCategoryInput
});
}
addToLocation(addLocationInput: AddIssueToLocationInput): Observable<any> {
return this.addIssueToLocationMutation.mutate({input: addLocationInput});
}
removeFromLocation(removeLocationInput: RemoveIssueFromLocationInput): Observable<any> {
return this.removeIssueFromLocationMutation.mutate({
input: removeLocationInput
});
}
updateComment(updateCommentInput: UpdateCommentInput): Observable<any> {
return this.updateCommentMutation.mutate({input: updateCommentInput});
}
getFullIssue(id: string): Observable<GetIssueQuery> {
return this.getFullIssueQuery.fetch({id}).pipe(map(({data}) => data));
}
getAllTimelineItems(id: string): Observable<GetAllTimelineItemsQuery> {
return this.getAllTimelineItemsQuery.fetch({input: id}).pipe(map(({data}) => data));
}
}