diff --git a/app/assets/javascripts/members/components/members_tabs.vue b/app/assets/javascripts/members/components/members_tabs.vue index 1b18ef5c45f62d45a97205fa8ee11c917b1b43d8..bb73f28727f3112a8ee8a7a4490c18470609b8ea 100644 --- a/app/assets/javascripts/members/components/members_tabs.vue +++ b/app/assets/javascripts/members/components/members_tabs.vue @@ -115,7 +115,6 @@ export default { v-if="shouldShowExportButton" data-event-tracking="click_export_group_members_as_csv" class="gl-ml-auto gl-self-center" - icon="export" :href="exportCsvPath" > {{ __('Export as CSV') }} diff --git a/app/views/groups/group_members/index.html.haml b/app/views/groups/group_members/index.html.haml index 9ff3f0421e42ff74bef53018658bba434c2fed1c..9443c83c3eccdd5dc46c55e80a7aea5c633c7fa8 100644 --- a/app/views/groups/group_members/index.html.haml +++ b/app/views/groups/group_members/index.html.haml @@ -1,38 +1,35 @@ - add_page_specific_style 'page_bundles/members' - page_title _('Group members') -.row.gl-mt-3 - .col-lg-12 - .gl-flex.gl-flex-wrap.gl-justify-between - - if can_admin_group_member?(@group) - %h4 - = _('Group members') - %p.gl-w-full.order-md-1 - = group_member_header_subtext(@group) - = render_if_exists 'groups/group_members/link_to_pending_members' - - if current_appearance&.member_guidelines? - .gl-w-full.order-md-1 - = brand_member_guidelines - .gl-flex.gl-flex-wrap.gl-items-center.gl-gap-3.md:gl-w-auto.gl-w-full - .js-invite-group-trigger{ data: { classes: 'md:gl-w-auto gl-w-full', display_text: _('Invite a group') } } - - if can_admin_service_accounts?(@group) - = render_if_exists 'groups/group_members/create_service_account' - .js-invite-members-trigger{ data: { variant: 'confirm', - classes: 'md:gl-w-auto gl-w-full', - trigger_source: 'group_members_page', - display_text: _('Invite members') } } - = render 'groups/invite_groups_modal', group: @group, reload_page_on_submit: true +- if can_admin_group_member?(@group) + = render ::Layouts::PageHeadingComponent.new(_('Group members')) do |c| + - c.with_description do + = group_member_header_subtext(@group) + - c.with_actions do + = render_if_exists 'groups/group_members/link_to_pending_members' + - if current_appearance&.member_guidelines? + .gl-w-full.order-md-1 + = brand_member_guidelines + .js-invite-group-trigger{ data: { classes: 'md:gl-w-auto gl-w-full', display_text: _('Invite a group') } } + - if can_admin_service_accounts?(@group) + = render_if_exists 'groups/group_members/create_service_account' + .js-invite-members-trigger{ data: { variant: 'confirm', + classes: 'md:gl-w-auto gl-w-full', + trigger_source: 'group_members_page', + display_text: _('Invite members') } } - = render_if_exists 'groups/group_members/ldap_sync' += render 'groups/invite_groups_modal', group: @group, reload_page_on_submit: true - .js-group-members-list-app{ data: { members_data: group_members_app_data(@group, - members: @members, - invited: @invited_members, - access_requests: @requesters, - banned: @banned || [], - include_relations: @include_relations, - search: params[:search_groups], - pending_members_count: @pending_promotion_members_count, - placeholder_users: @placeholder_users_count - ).to_json } } - = gl_loading_icon(css_class: 'gl-my-5', size: 'md') += render_if_exists 'groups/group_members/ldap_sync' + +.js-group-members-list-app{ data: { members_data: group_members_app_data(@group, + members: @members, + invited: @invited_members, + access_requests: @requesters, + banned: @banned || [], + include_relations: @include_relations, + search: params[:search_groups], + pending_members_count: @pending_promotion_members_count, + placeholder_users: @placeholder_users_count + ).to_json } } + = gl_loading_icon(css_class: 'gl-my-5', size: 'md')