summaryrefslogtreecommitdiff
path: root/lib/sidebars
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-03-14 18:08:55 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2023-03-14 18:08:55 +0000
commit3828d19ab2d68dd6cafa6f08221e1eee572671e7 (patch)
treeafd36fcf20499d876493bf24bd9f0ee926454547 /lib/sidebars
parent3e764061b3209d4deee2a55851d5d564a9f19d8b (diff)
downloadgitlab-ce-3828d19ab2d68dd6cafa6f08221e1eee572671e7.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib/sidebars')
-rw-r--r--lib/sidebars/explore/menus/groups_menu.rb34
-rw-r--r--lib/sidebars/explore/menus/projects_menu.rb34
-rw-r--r--lib/sidebars/explore/menus/snippets_menu.rb34
-rw-r--r--lib/sidebars/explore/menus/topics_menu.rb34
-rw-r--r--lib/sidebars/explore/panel.rb39
-rw-r--r--lib/sidebars/groups/menus/invite_team_members_menu.rb46
-rw-r--r--lib/sidebars/groups/panel.rb10
-rw-r--r--lib/sidebars/panel.rb1
-rw-r--r--lib/sidebars/projects/menus/invite_team_members_menu.rb47
-rw-r--r--lib/sidebars/projects/panel.rb8
10 files changed, 175 insertions, 112 deletions
diff --git a/lib/sidebars/explore/menus/groups_menu.rb b/lib/sidebars/explore/menus/groups_menu.rb
new file mode 100644
index 00000000000..542da0ad7fd
--- /dev/null
+++ b/lib/sidebars/explore/menus/groups_menu.rb
@@ -0,0 +1,34 @@
+# frozen_string_literal: true
+
+module Sidebars
+ module Explore
+ module Menus
+ class GroupsMenu < ::Sidebars::Menu
+ override :link
+ def link
+ explore_groups_path
+ end
+
+ override :title
+ def title
+ _('Groups')
+ end
+
+ override :sprite_icon
+ def sprite_icon
+ 'group'
+ end
+
+ override :render?
+ def render?
+ true
+ end
+
+ override :active_routes
+ def active_routes
+ { controller: ['explore/groups'] }
+ end
+ end
+ end
+ end
+end
diff --git a/lib/sidebars/explore/menus/projects_menu.rb b/lib/sidebars/explore/menus/projects_menu.rb
new file mode 100644
index 00000000000..29c35d23b7b
--- /dev/null
+++ b/lib/sidebars/explore/menus/projects_menu.rb
@@ -0,0 +1,34 @@
+# frozen_string_literal: true
+
+module Sidebars
+ module Explore
+ module Menus
+ class ProjectsMenu < ::Sidebars::Menu
+ override :link
+ def link
+ explore_projects_path
+ end
+
+ override :title
+ def title
+ _('Projects')
+ end
+
+ override :sprite_icon
+ def sprite_icon
+ 'project'
+ end
+
+ override :render?
+ def render?
+ true
+ end
+
+ override :active_routes
+ def active_routes
+ { page: [link, explore_root_path] }
+ end
+ end
+ end
+ end
+end
diff --git a/lib/sidebars/explore/menus/snippets_menu.rb b/lib/sidebars/explore/menus/snippets_menu.rb
new file mode 100644
index 00000000000..67b852258a7
--- /dev/null
+++ b/lib/sidebars/explore/menus/snippets_menu.rb
@@ -0,0 +1,34 @@
+# frozen_string_literal: true
+
+module Sidebars
+ module Explore
+ module Menus
+ class SnippetsMenu < ::Sidebars::Menu
+ override :link
+ def link
+ explore_snippets_path
+ end
+
+ override :title
+ def title
+ _('Snippets')
+ end
+
+ override :sprite_icon
+ def sprite_icon
+ 'snippet'
+ end
+
+ override :render?
+ def render?
+ true
+ end
+
+ override :active_routes
+ def active_routes
+ { controller: ['explore/snippets'] }
+ end
+ end
+ end
+ end
+end
diff --git a/lib/sidebars/explore/menus/topics_menu.rb b/lib/sidebars/explore/menus/topics_menu.rb
new file mode 100644
index 00000000000..5e0a7897873
--- /dev/null
+++ b/lib/sidebars/explore/menus/topics_menu.rb
@@ -0,0 +1,34 @@
+# frozen_string_literal: true
+
+module Sidebars
+ module Explore
+ module Menus
+ class TopicsMenu < ::Sidebars::Menu
+ override :link
+ def link
+ topics_explore_projects_path
+ end
+
+ override :title
+ def title
+ _('Topics')
+ end
+
+ override :sprite_icon
+ def sprite_icon
+ 'labels'
+ end
+
+ override :render?
+ def render?
+ true
+ end
+
+ override :active_routes
+ def active_routes
+ { page: link, path: 'projects#topic' }
+ end
+ end
+ end
+ end
+end
diff --git a/lib/sidebars/explore/panel.rb b/lib/sidebars/explore/panel.rb
new file mode 100644
index 00000000000..9a585a99705
--- /dev/null
+++ b/lib/sidebars/explore/panel.rb
@@ -0,0 +1,39 @@
+# frozen_string_literal: true
+
+module Sidebars
+ module Explore
+ class Panel < ::Sidebars::Panel
+ override :configure_menus
+ def configure_menus
+ add_menus
+ end
+
+ override :aria_label
+ def aria_label
+ _('Explore')
+ end
+
+ override :render_raw_scope_menu_partial
+ def render_raw_scope_menu_partial
+ "shared/nav/explore_scope_header"
+ end
+
+ override :super_sidebar_context_header
+ def super_sidebar_context_header
+ {
+ title: aria_label,
+ icon: 'compass'
+ }
+ end
+
+ private
+
+ def add_menus
+ add_menu(Sidebars::Explore::Menus::ProjectsMenu.new(context))
+ add_menu(Sidebars::Explore::Menus::GroupsMenu.new(context))
+ add_menu(Sidebars::Explore::Menus::TopicsMenu.new(context))
+ add_menu(Sidebars::Explore::Menus::SnippetsMenu.new(context))
+ end
+ end
+ end
+end
diff --git a/lib/sidebars/groups/menus/invite_team_members_menu.rb b/lib/sidebars/groups/menus/invite_team_members_menu.rb
deleted file mode 100644
index 0779b696061..00000000000
--- a/lib/sidebars/groups/menus/invite_team_members_menu.rb
+++ /dev/null
@@ -1,46 +0,0 @@
-# frozen_string_literal: true
-
-module Sidebars
- module Groups
- module Menus
- class InviteTeamMembersMenu < ::Sidebars::Menu
- override :title
- def title
- s_('InviteMember|Invite members')
- end
-
- override :render?
- def render?
- can?(context.current_user, :admin_group_member, context.group) && all_valid_members.size <= 1
- end
-
- override :menu_partial
- def menu_partial
- 'groups/invite_members_side_nav_link'
- end
-
- override :menu_partial_options
- def menu_partial_options
- {
- group: context.group,
- title: title,
- sidebar_menu: self
- }
- end
-
- override :extra_nav_link_html_options
- def extra_nav_link_html_options
- {
- 'data-test-id': 'side-nav-invite-members'
- }
- end
-
- private
-
- def all_valid_members
- GroupMembersFinder.new(context.group, context.current_user).execute
- end
- end
- end
- end
-end
diff --git a/lib/sidebars/groups/panel.rb b/lib/sidebars/groups/panel.rb
index e8b815bdce7..77ca51ddf92 100644
--- a/lib/sidebars/groups/panel.rb
+++ b/lib/sidebars/groups/panel.rb
@@ -16,22 +16,12 @@ module Sidebars
add_menu(Sidebars::Groups::Menus::PackagesRegistriesMenu.new(context))
add_menu(Sidebars::Groups::Menus::CustomerRelationsMenu.new(context))
add_menu(Sidebars::Groups::Menus::SettingsMenu.new(context))
- add_invite_members_menu
end
override :aria_label
def aria_label
context.group.subgroup? ? _('Subgroup navigation') : _('Group navigation')
end
-
- private
-
- def add_invite_members_menu
- experiment(:invite_members_in_side_nav, group: context.group) do |e|
- e.control {}
- e.candidate { add_menu(Sidebars::Groups::Menus::InviteTeamMembersMenu.new(context)) }
- end
- end
end
end
end
diff --git a/lib/sidebars/panel.rb b/lib/sidebars/panel.rb
index aa8ff177caa..4c0d4caf81e 100644
--- a/lib/sidebars/panel.rb
+++ b/lib/sidebars/panel.rb
@@ -4,7 +4,6 @@ module Sidebars
class Panel
extend ::Gitlab::Utils::Override
include ::Sidebars::Concerns::PositionableList
- include Gitlab::Experiment::Dsl
attr_reader :context, :scope_menu, :hidden_menu
diff --git a/lib/sidebars/projects/menus/invite_team_members_menu.rb b/lib/sidebars/projects/menus/invite_team_members_menu.rb
deleted file mode 100644
index 0db49f1e12a..00000000000
--- a/lib/sidebars/projects/menus/invite_team_members_menu.rb
+++ /dev/null
@@ -1,47 +0,0 @@
-# frozen_string_literal: true
-
-module Sidebars
- module Projects
- module Menus
- class InviteTeamMembersMenu < ::Sidebars::Menu
- override :title
- def title
- s_('InviteMember|Invite members')
- end
-
- override :render?
- def render?
- can?(context.current_user, :admin_project_member, context.project) && all_valid_members.size <= 1
- end
-
- override :menu_partial
- def menu_partial
- 'projects/invite_members_side_nav_link'
- end
-
- override :menu_partial_options
- def menu_partial_options
- {
- project: context.project,
- title: title,
- sidebar_menu: self
- }
- end
-
- override :extra_nav_link_html_options
- def extra_nav_link_html_options
- {
- 'data-test-id': 'side-nav-invite-members'
- }
- end
-
- private
-
- def all_valid_members
- MembersFinder.new(context.project, context.current_user)
- .execute(include_relations: [:inherited, :direct, :invited_groups])
- end
- end
- end
- end
-end
diff --git a/lib/sidebars/projects/panel.rb b/lib/sidebars/projects/panel.rb
index 9d0f5eb87bd..5d8bc18ac88 100644
--- a/lib/sidebars/projects/panel.rb
+++ b/lib/sidebars/projects/panel.rb
@@ -34,14 +34,6 @@ module Sidebars
add_wiki_menus
add_menu(Sidebars::Projects::Menus::SnippetsMenu.new(context))
add_menu(Sidebars::Projects::Menus::SettingsMenu.new(context))
- add_invite_members_menu
- end
-
- def add_invite_members_menu
- experiment(:invite_members_in_side_nav, group: context.project.group) do |e|
- e.control {}
- e.candidate { add_menu(Sidebars::Projects::Menus::InviteTeamMembersMenu.new(context)) }
- end
end
def add_wiki_menus