Show owners of shared groups which groups/projects their group has been shared with
## Problem I can invite Group X into Group Y if I have enough privileges on **both** Group X and Y. This means that I could make the invite to Group X, login, go to Group X and then accept the invite myself, and then nobody else in Group X will have any means to control this group share, not even the means to delete this group share if another Owner in Group X feels that this specific group-share is unnecessary. In fact, today, there is absolutely no indication on Group X's UI that it is currently being shared with Group Y. ## Proposal Add a section to the group overview page to indicate which groups and projects it has been shared with. ![Screenshot_2025-02-17_at_15.53.51](/uploads/31ce979a22826c14e28d6407711ae816/Screenshot_2025-02-17_at_15.53.51.png) ## Implementation guide - [x] Generate API call to list groups that the group has been shared with. See https://gitlab.com/gitlab-org/gitlab/-/issues/424959. - [x] Build frontend to display groups as part of an expanded `Shared groups and projects` tab - [ ] Ensure to add a section in the docs (maybe [here](https://docs.gitlab.com/ee/user/project/members/sharing_projects_groups.html#sharing-groups)) to explain the concept of a `Shared group`. 1. In [app/assets/javascripts/groups/components/overview_tabs.vue#L275](https://gitlab.com/gitlab-org/gitlab/-/blob/master/app/assets/javascripts/groups/components/overview_tabs.vue#L275) use the default slot to add a dropdown similar to [app/assets/javascripts/organizations/groups_and_projects/components/app.vue#L231](https://gitlab.com/gitlab-org/gitlab/-/blob/master/app/assets/javascripts/organizations/groups_and_projects/components/app.vue#L231) 2. When that dropdown is changed, update the endpoint in [app/assets/javascripts/groups/components/overview_tabs.vue#L61](https://gitlab.com/gitlab-org/gitlab/-/blob/master/app/assets/javascripts/groups/components/overview_tabs.vue#L61) to https://gitlab.com/gitlab-org/gitlab/-/merge_requests/155251 3. Also when dropdown is changed emit "eventHub.$emit(`${this.activeTab.key}fetchPage`)" There will be some unknowns with this so weighting a `3` ## Alternative design proposal ![image](/uploads/6d4bd6146f02312bfb1717a30d4a3e03/image.png) Note: Stats for groups are shown but should be considered nice to have if the backend can support them, but are not required for this iteration.
issue