Add Request access and Withdraw access actions

Proposal

Add actions for requesting access to a group or project or withdrawing their access request to a group or project.

Implementation guide

  1. Add ACTION_REQUEST_ACCESS and ACTION_WITHDRAW_ACCESS_REQUEST to app/assets/javascripts/vue_shared/components/list_actions/constants.js
  2. Add support for actions to app/assets/javascripts/vue_shared/components/list_actions/list_actions.vue
{
  text: __('Request Access'),
  href: this.requestAccessPath,
  extraAttrs: {
    'data-method': 'post',
    'data-testid': 'request-access-link',
    rel: 'nofollow',
  },
}
{
  text: __('Withdraw Access Request'),
  href: this.withdrawPath,
  extraAttrs: {
    'data-method': 'delete',
    'data-confirm': __('Withdraw your access request'),
    'data-testid': 'withdraw-access-link',
    rel: 'nofollow',
  },
}
  1. This action will only be shown on group and project overview pages which will be updated in #556530
Edited by 🤖 GitLab Bot 🤖