Add customer relations contact quick actions

Merged Lee Tickett requested to merge 2256-add-issue-contact-quick-actions into master

What does this MR do and why?

Introduces the ability to add/remove crm contacts to/from issues using quick actions.

Screenshots or screen recordings

image

How to set up and validate locally

From rails console:
1. Enable feature flag:
Feature.enable(:customer_relations)
From GraphiQL (http://gdk.test:3000/-/graphql-explorer):
2. Pick a an issue (I used http://gdk.test:3000/flightjs/Flight/-/issues/30)
3. Create a few contacts for the group the issue belongs to:
mutation {
  customerRelationsContactCreate(input:
    {
      groupId: "gid://gitlab/Group/26"
      firstName: "Lee"
      lastName: "Tickett"
      email: "example@gitlab.com"
    }) {
    contact {
      id
      firstName
      lastName
    }
    errors
  }
}
4. Attempt to add/remove those contacts from your issue using the quick action(s):
/add_contacts example@gitlab.com
/remove_contacts example@gitlab.com
etc

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #2256

Edited by Peter Leitzen