Hide Integrations from sidenav when no integrations have been allowed
<!--IssueSummary start--> <details> <summary> Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards. </summary> - [Work on this issue](https://contributors.gitlab.com/manage-issue?action=work&projectId=278964&issueIid=500609) - [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=500609) </details> <!--IssueSummary end--> ### Context This issue is part of https://gitlab.com/groups/gitlab-org/-/epics/15666+ see that epic for more context. In https://gitlab.com/gitlab-org/gitlab/-/issues/500610+ we implemented the ability for an instance admin to allow list integrations. ### Proposal When an instance has configured their integrations allow list to block _all_ integrations, we should: - Hide the **Integrations** sidebar menu items from instance, group and project-level settings menus. - Return a `404` page if user visits the integrations settings index pages at instance, group or project-levels. ### Technical proposal We can use a check if `Integration.available_integration_names` is an empty array (no integrations are available). Hiding the menu item visibility would be in: - [instance-level](https://gitlab.com/gitlab-org/gitlab/-/blob/ece449124b87c9d9240fc912caef0dfa5806a2f7/lib/sidebars/admin/menus/admin_settings_menu.rb#L55) - [group-level](https://gitlab.com/gitlab-org/gitlab/-/blob/7365a54f6a894383cb92a18b8a4920bb860df38f/lib/sidebars/groups/menus/settings_menu.rb#L53) - [project-level](https://gitlab.com/gitlab-org/gitlab/-/blob/7365a54f6a894383cb92a18b8a4920bb860df38f/lib/sidebars/projects/menus/settings_menu.rb#L67)
issue