180 lines
10 KiB
Text
180 lines
10 KiB
Text
- type = local_assigns.fetch(:type)
|
|
- board = local_assigns.fetch(:board, nil)
|
|
- show_sorting_dropdown = local_assigns.fetch(:show_sorting_dropdown, true)
|
|
- placeholder = local_assigns[:placeholder] || _('Search or filter results...')
|
|
- is_not_boards_modal_or_productivity_analytics = type != :boards_modal && type != :productivity_analytics
|
|
- block_css_class = is_not_boards_modal_or_productivity_analytics ? 'row-content-block second-block' : ''
|
|
- user_can_admin_list = board && can?(current_user, :admin_list, board.resource_parent)
|
|
|
|
.issues-filters{ class: ("w-100" if type == :boards_modal) }
|
|
.issues-details-filters.filtered-search-block.d-flex.flex-column.flex-lg-row{ class: block_css_class, "v-pre" => type == :boards_modal }
|
|
.d-flex.flex-column.flex-md-row.flex-grow-1.mb-lg-0.mb-md-2.mb-sm-0.w-100
|
|
- if type == :boards
|
|
= render "shared/boards/switcher", board: board
|
|
= form_tag page_filter_path, method: :get, class: 'filter-form js-filter-form w-100' do
|
|
- if params[:search].present?
|
|
= hidden_field_tag :search, params[:search]
|
|
- if @can_bulk_update
|
|
.check-all-holder.d-none.d-sm-block.hidden
|
|
= check_box_tag "check-all-issues", nil, false, class: "check-all-issues left"
|
|
.issues-other-filters.filtered-search-wrapper.d-flex.flex-column.flex-md-row
|
|
.filtered-search-box
|
|
- if type != :boards_modal && type != :boards
|
|
= dropdown_tag(_('Recent searches'),
|
|
options: { wrapper_class: "filtered-search-history-dropdown-wrapper",
|
|
toggle_class: "btn filtered-search-history-dropdown-toggle-button",
|
|
dropdown_class: "filtered-search-history-dropdown",
|
|
content_class: "filtered-search-history-dropdown-content" }) do
|
|
.js-filtered-search-history-dropdown{ data: { full_path: search_history_storage_prefix } }
|
|
.filtered-search-box-input-container.droplab-dropdown
|
|
.scroll-container
|
|
%ul.tokens-container.list-unstyled
|
|
%li.input-token
|
|
%input.form-control.filtered-search{ search_filter_input_options(type, placeholder) }
|
|
#js-dropdown-hint.filtered-search-input-dropdown-menu.dropdown-menu.hint-dropdown
|
|
%ul.filter-dropdown{ data: { dynamic: true, dropdown: true } }
|
|
%li.filter-dropdown-item{ data: {hint: "#{'{{hint}}'}", tag: "#{'{{tag}}'}", action: "#{'{{hint === \'search\' ? \'submit\' : \'\' }}'}" } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
-# Encapsulate static class name `{{icon}}` inside #{} to bypass
|
|
-# haml lint's ClassAttributeWithStaticValue
|
|
%svg
|
|
%use{ 'xlink:href': "#{'{{icon}}'}" }
|
|
%span.js-filter-hint
|
|
{{formattedKey}}
|
|
#js-dropdown-operator.filtered-search-input-dropdown-menu.dropdown-menu
|
|
%ul.filter-dropdown{ data: { dropdown: true, dynamic: true } }
|
|
%li.filter-dropdown-item{ data: { value: "{{ title }}" } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
{{ title }}
|
|
%span.btn-helptext
|
|
{{ help }}
|
|
#js-dropdown-author.filtered-search-input-dropdown-menu.dropdown-menu
|
|
- if current_user
|
|
%ul{ data: { dropdown: true } }
|
|
= render 'shared/issuable/user_dropdown_item',
|
|
user: current_user
|
|
%ul.filter-dropdown{ data: { dynamic: true, dropdown: true } }
|
|
= render 'shared/issuable/user_dropdown_item',
|
|
user: User.new(username: '{{username}}', name: '{{name}}'),
|
|
avatar: { lazy: true, url: '{{avatar_url}}' }
|
|
#js-dropdown-assignee.filtered-search-input-dropdown-menu.dropdown-menu
|
|
%ul{ data: { dropdown: true } }
|
|
%li.filter-dropdown-item{ data: { value: 'None' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('None')
|
|
%li.filter-dropdown-item{ data: { value: 'Any' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('Any')
|
|
%li.divider.droplab-item-ignore
|
|
- if current_user
|
|
= render 'shared/issuable/user_dropdown_item',
|
|
user: current_user
|
|
%ul.filter-dropdown{ data: { dynamic: true, dropdown: true } }
|
|
= render 'shared/issuable/user_dropdown_item',
|
|
user: User.new(username: '{{username}}', name: '{{name}}'),
|
|
avatar: { lazy: true, url: '{{avatar_url}}' }
|
|
= render_if_exists 'shared/issuable/approver_dropdown'
|
|
= render_if_exists 'shared/issuable/approved_by_dropdown'
|
|
#js-dropdown-milestone.filtered-search-input-dropdown-menu.dropdown-menu
|
|
%ul{ data: { dropdown: true } }
|
|
%li.filter-dropdown-item{ data: { value: 'None' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('None')
|
|
%li.filter-dropdown-item{ data: { value: 'Any' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('Any')
|
|
%li.filter-dropdown-item{ data: { value: 'Upcoming' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('Upcoming')
|
|
%li.filter-dropdown-item{ data: { value: 'Started' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('Started')
|
|
%li.divider.droplab-item-ignore
|
|
%ul.filter-dropdown{ data: { dynamic: true, dropdown: true } }
|
|
%li.filter-dropdown-item
|
|
%button.btn.btn-link.js-data-value{ type: 'button' }
|
|
{{title}}
|
|
#js-dropdown-release.filtered-search-input-dropdown-menu.dropdown-menu
|
|
%ul{ data: { dropdown: true } }
|
|
%li.filter-dropdown-item{ data: { value: 'None' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('None')
|
|
%li.filter-dropdown-item{ data: { value: 'Any' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('Any')
|
|
%li.divider.droplab-item-ignore
|
|
%ul.filter-dropdown{ data: { dynamic: true, dropdown: true } }
|
|
%li.filter-dropdown-item
|
|
%button.btn.btn-link.js-data-value{ type: 'button' }
|
|
{{title}}
|
|
#js-dropdown-label.filtered-search-input-dropdown-menu.dropdown-menu
|
|
%ul{ data: { dropdown: true } }
|
|
%li.filter-dropdown-item{ data: { value: 'None' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('None')
|
|
%li.filter-dropdown-item{ data: { value: 'Any' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('Any')
|
|
%li.divider.droplab-item-ignore
|
|
%ul.filter-dropdown{ data: { dynamic: true, dropdown: true } }
|
|
%li.filter-dropdown-item
|
|
%button.btn.btn-link{ type: 'button' }
|
|
%span.dropdown-label-box{ style: 'background: {{color}}' }
|
|
%span.label-title.js-data-value
|
|
{{title}}
|
|
#js-dropdown-my-reaction.filtered-search-input-dropdown-menu.dropdown-menu
|
|
%ul{ data: { dropdown: true } }
|
|
%li.filter-dropdown-item{ data: { value: 'None' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('None')
|
|
%li.filter-dropdown-item{ data: { value: 'Any' } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('Any')
|
|
%li.divider.droplab-item-ignore
|
|
%ul.filter-dropdown{ data: { dynamic: true, dropdown: true } }
|
|
%li.filter-dropdown-item
|
|
%button.btn.btn-link{ type: 'button' }
|
|
%gl-emoji
|
|
%span.js-data-value.prepend-left-10
|
|
{{name}}
|
|
#js-dropdown-wip.filtered-search-input-dropdown-menu.dropdown-menu
|
|
%ul.filter-dropdown{ data: { dropdown: true } }
|
|
%li.filter-dropdown-item{ data: { value: 'yes', capitalize: true } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('Yes')
|
|
%li.filter-dropdown-item{ data: { value: 'no', capitalize: true } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('No')
|
|
#js-dropdown-confidential.filtered-search-input-dropdown-menu.dropdown-menu
|
|
%ul.filter-dropdown{ data: { dropdown: true } }
|
|
%li.filter-dropdown-item{ data: { value: 'yes', capitalize: true } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('Yes')
|
|
%li.filter-dropdown-item{ data: { value: 'no', capitalize: true } }
|
|
%button.btn.btn-link{ type: 'button' }
|
|
= _('No')
|
|
#js-dropdown-target-branch.filtered-search-input-dropdown-menu.dropdown-menu
|
|
%ul.filter-dropdown{ data: { dynamic: true, dropdown: true } }
|
|
%li.filter-dropdown-item
|
|
%button.btn.btn-link.js-data-value.monospace
|
|
{{title}}
|
|
|
|
= render_if_exists 'shared/issuable/filter_weight', type: type
|
|
|
|
= render_if_exists 'shared/issuable/filter_epic', type: type
|
|
|
|
%button.clear-search.hidden{ type: 'button' }
|
|
= icon('times')
|
|
.filter-dropdown-container.d-flex.flex-column.flex-md-row
|
|
- if type == :boards
|
|
#js-board-labels-toggle
|
|
.js-board-config{ data: { can_admin_list: user_can_admin_list, has_scope: board.scoped? } }
|
|
- if user_can_admin_list
|
|
= render 'shared/issuable/board_create_list_dropdown', board: board
|
|
- if @project
|
|
#js-add-issues-btn.prepend-left-10{ data: { can_admin_list: can?(current_user, :admin_list, @project) } }
|
|
- if Feature.enabled?(:boards_with_swimlanes)
|
|
#js-board-epics-swimlanes-toggle
|
|
#js-toggle-focus-btn
|
|
- elsif is_not_boards_modal_or_productivity_analytics && show_sorting_dropdown
|
|
= render 'shared/issuable/sort_dropdown'
|