You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
GitHub App allows users to fetch repository issues.
Fetched Issues can be assigned from Rocket.Chat.
Multiple issues can be shared in the channel at once.
User Flow
Assigning Issues
Enter /github issues
This triggers the githubIssuesStarterModal. After entering the repository name, the repository issues are fetched and displayed in githubIssueListModal using the getRepositoryIssues method from the githubSDK.
Authorized users with push access to the repository will see Assign button along with the listed issue.
Clicking on Assign will trigger the addIssueAssigneeModal using the ExecuteBlockActionHandler.
addIssueAssigneeModal will have prepopulated input fields.
If assignees already exist on an issues, those assignees usernames will be prepopulated in ISSUE_ASSIGNEE_INPUT field.
Existing assignees can be removed, edited or new assignees can be added to the issue.
Clicking assign will trigger the ExecuteViewSubmitHandler, which triggers updateGithubIssues method from githubSDK and updates the issues assignees.
Sharing Issues
In githubIssueListModal , users can Add issues to be shared and share multiple issues.
The issues are stored using GithubRepoIssuesStorage, which stores the repository issues as an array of IGitHubIssue inside IGitHubIssueData.
Issues are stored in the Apps persistent storage in the form of Association Records.