Skip to content

feat: add member_feature_requested reason #806

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions src/typesGithub.ts
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
export type Reason =
| 'assign'
| 'author'
| 'ci_activity'
| 'comment'
| 'invitation'
| 'manual'
| 'member_feature_requested'
| 'mention'
| 'review_requested'
| 'security_alert'
| 'state_change'
| 'subscribed'
| 'team_mention'
| 'ci_activity';
| 'team_mention';

export type SubjectType =
| 'CheckSuite'
Expand Down
39 changes: 23 additions & 16 deletions src/utils/__snapshots__/github-api.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -31,76 +31,83 @@ exports[`./utils/github-api.ts should format the notification reason 2`] = `
`;

exports[`./utils/github-api.ts should format the notification reason 3`] = `
{
"description": "A GitHub Actions workflow run was triggered for your repository",
"type": "Workflow Run",
}
`;

exports[`./utils/github-api.ts should format the notification reason 4`] = `
{
"description": "You commented on the thread.",
"type": "Comment",
}
`;

exports[`./utils/github-api.ts should format the notification reason 4`] = `
exports[`./utils/github-api.ts should format the notification reason 5`] = `
{
"description": "You accepted an invitation to contribute to the repository.",
"type": "Invitation",
}
`;

exports[`./utils/github-api.ts should format the notification reason 5`] = `
exports[`./utils/github-api.ts should format the notification reason 6`] = `
{
"description": "You subscribed to the thread (via an issue or pull request).",
"type": "Manual",
}
`;

exports[`./utils/github-api.ts should format the notification reason 6`] = `
exports[`./utils/github-api.ts should format the notification reason 7`] = `
{
"description": "Organization members have requested to enable a feature such as Draft Pull Requests or CoPilot.",
"type": "Member Feature Requested",
}
`;

exports[`./utils/github-api.ts should format the notification reason 8`] = `
{
"description": "You were specifically @mentioned in the content.",
"type": "Mention",
}
`;

exports[`./utils/github-api.ts should format the notification reason 7`] = `
exports[`./utils/github-api.ts should format the notification reason 9`] = `
{
"description": "You, or a team you're a member of, were requested to review a pull request.",
"type": "Review Requested",
}
`;

exports[`./utils/github-api.ts should format the notification reason 8`] = `
exports[`./utils/github-api.ts should format the notification reason 10`] = `
{
"description": "GitHub discovered a security vulnerability in your repository.",
"type": "Security Alert",
}
`;

exports[`./utils/github-api.ts should format the notification reason 9`] = `
exports[`./utils/github-api.ts should format the notification reason 11`] = `
{
"description": "You changed the thread state (for example, closing an issue or merging a pull request).",
"type": "State Change",
}
`;

exports[`./utils/github-api.ts should format the notification reason 10`] = `
exports[`./utils/github-api.ts should format the notification reason 12`] = `
{
"description": "You're watching the repository.",
"type": "Subscribed",
}
`;

exports[`./utils/github-api.ts should format the notification reason 11`] = `
exports[`./utils/github-api.ts should format the notification reason 13`] = `
{
"description": "You were on a team that was mentioned.",
"type": "Team Mention",
}
`;

exports[`./utils/github-api.ts should format the notification reason 12`] = `
{
"description": "A GitHub Actions workflow run was triggered for your repository",
"type": "Workflow Run",
}
`;

exports[`./utils/github-api.ts should format the notification reason 13`] = `
exports[`./utils/github-api.ts should format the notification reason 14`] = `
{
"description": "The reason for this notification is not supported by the app.",
"type": "Unknown",
Expand Down
3 changes: 2 additions & 1 deletion src/utils/github-api.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,17 @@ describe('./utils/github-api.ts', () => {
it('should format the notification reason', () => {
expect(formatReason('assign')).toMatchSnapshot();
expect(formatReason('author')).toMatchSnapshot();
expect(formatReason('ci_activity')).toMatchSnapshot();
expect(formatReason('comment')).toMatchSnapshot();
expect(formatReason('invitation')).toMatchSnapshot();
expect(formatReason('manual')).toMatchSnapshot();
expect(formatReason('member_feature_requested')).toMatchSnapshot();
expect(formatReason('mention')).toMatchSnapshot();
expect(formatReason('review_requested')).toMatchSnapshot();
expect(formatReason('security_alert')).toMatchSnapshot();
expect(formatReason('state_change')).toMatchSnapshot();
expect(formatReason('subscribed')).toMatchSnapshot();
expect(formatReason('team_mention')).toMatchSnapshot();
expect(formatReason('ci_activity')).toMatchSnapshot();
expect(formatReason('something_else_unknown' as Reason)).toMatchSnapshot();
});

Expand Down
3 changes: 3 additions & 0 deletions src/utils/github-api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ const DESCRIPTIONS = {
COMMENT: 'You commented on the thread.',
INVITATION: 'You accepted an invitation to contribute to the repository.',
MANUAL: 'You subscribed to the thread (via an issue or pull request).',
MEMBER_FEATURE_REQUESTED: 'Organization members have requested to enable a feature such as Draft Pull Requests or CoPilot.',
MENTION: 'You were specifically @mentioned in the content.',
REVIEW_REQUESTED: "You, or a team you're a member of, were requested to review a pull request.",
SECURITY_ALERT: 'GitHub discovered a security vulnerability in your repository.',
Expand All @@ -51,6 +52,8 @@ export function formatReason(reason: Reason): {
return { type: 'Invitation', description: DESCRIPTIONS['INVITATION'] };
case 'manual':
return { type: 'Manual', description: DESCRIPTIONS['MANUAL'] };
case 'member_feature_requested':
return { type: 'Member Feature Requested', description: DESCRIPTIONS['MEMBER_FEATURE_REQUESTED'] };
case 'mention':
return { type: 'Mention', description: DESCRIPTIONS['MENTION'] };
case 'review_requested':
Expand Down