diff options
Diffstat (limited to 'app/assets/javascripts/pages/projects/merge_requests/creations/new/compare_autocomplete.js')
-rw-r--r-- | app/assets/javascripts/pages/projects/merge_requests/creations/new/compare_autocomplete.js | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/app/assets/javascripts/pages/projects/merge_requests/creations/new/compare_autocomplete.js b/app/assets/javascripts/pages/projects/merge_requests/creations/new/compare_autocomplete.js deleted file mode 100644 index 65942464e2b..00000000000 --- a/app/assets/javascripts/pages/projects/merge_requests/creations/new/compare_autocomplete.js +++ /dev/null @@ -1,91 +0,0 @@ -/* eslint-disable func-names */ - -import $ from 'jquery'; -import initDeprecatedJQueryDropdown from '~/deprecated_jquery_dropdown'; -import { createAlert } from '~/flash'; -import axios from '~/lib/utils/axios_utils'; -import { capitalizeFirstCharacter } from '~/lib/utils/text_utility'; -import { __ } from '~/locale'; -import { fixTitle } from '~/tooltips'; - -export default function initCompareAutocomplete(limitTo = null, clickHandler = () => {}) { - $('.js-compare-dropdown').each(function () { - const $dropdown = $(this); - const selected = $dropdown.data('selected'); - const defaultText = $dropdown.data('defaultText').trim(); - const $dropdownContainer = $dropdown.closest('.dropdown'); - const $fieldInput = $(`input[name="${$dropdown.data('fieldName')}"]`, $dropdownContainer); - const $filterInput = $('input[type="search"]', $dropdownContainer); - initDeprecatedJQueryDropdown($dropdown, { - data(term, callback) { - const params = { - ref: $dropdown.data('ref'), - search: term, - }; - - if (limitTo) { - params.find = limitTo; - } - - axios - .get($dropdown.data('refsUrl'), { - params, - }) - .then(({ data }) => { - if (limitTo) { - callback(data[capitalizeFirstCharacter(limitTo)] || []); - } else { - callback(data); - } - }) - .catch(() => - createAlert({ - message: __('Error fetching refs'), - }), - ); - }, - selectable: true, - filterable: true, - filterRemote: Boolean($dropdown.data('refsUrl')), - fieldName: $dropdown.data('fieldName'), - filterInput: 'input[type="search"]', - renderRow(ref) { - const link = $('<a />') - .attr('href', '#') - .addClass(ref === selected ? 'is-active' : '') - .text(ref) - .attr('data-ref', ref); - if (ref.header != null) { - return $('<li />').addClass('dropdown-header').text(ref.header); - } - return $('<li />').append(link); - }, - id(obj, $el) { - return $el.attr('data-ref'); - }, - toggleLabel(obj, $el) { - if ($el.hasClass('is-active')) { - return $el.text().trim(); - } - - return defaultText; - }, - clicked: () => clickHandler($dropdown), - }); - $filterInput.on('keyup', (e) => { - const keyCode = e.keyCode || e.which; - if (keyCode !== 13) return; - const text = $filterInput.val(); - $fieldInput.val(text); - $('.dropdown-toggle-text', $dropdown).text(text); - $dropdownContainer.removeClass('open'); - }); - - $dropdownContainer.on('click', '.dropdown-content a', (e) => { - $dropdown.prop('title', e.target.text.replace(/_+?/g, '-')); - if ($dropdown.hasClass('has-tooltip')) { - fixTitle($dropdown); - } - }); - }); -} |