Move WIP/Draft state in MR widget to GraphQL

Merged Phil Hughes requested to merge ph/mrWidgetWIPToGraphQL into master

What does this MR do?

As part of our effort to improve the MR widget performance and gitlab-com&828, we are moving the data each merge request widgets state needs to GraphQL.

This moves just the WIP/Draft state to GraphQL.

The main root component polls the GraphQL endpoint to check for the work in progress state and the state component checks for its own user permissions and then sends a GraphQL mutation to update the WIP/Draft status to false

Screenshots

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team
Edited by Phil Hughes