mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
1 line
1.7 KiB
JavaScript
1 line
1.7 KiB
JavaScript
define("ui/search-input",["jquery"],function(e){"use strict";function n(e,n){function c(e){a(this).parent().children("input").val("").trigger("searchInput.clear").blur(),n.onclear()}function r(e,t){if(!t)return c();a(this).trigger("search.search",t),"function"==typeof n.onfirstsearch&&h?(h=!1,n.onfirstsearch(t)):n.onsearch(t)}function l(){return['<input type="text" name="',n.name,'" placeholder="',n.placeholder,'" ','class="search-query ',n.classes,'" ',"/>"].join("")}var s=27,o=13,u=a(e),h=!0,f={initialVal:"",name:"search",placeholder:"search",classes:"",onclear:function(){},onfirstsearch:null,onsearch:function(e){},minSearchLen:0,escWillClear:!0,oninit:function(){}};return"string"===t.default.type(n)?("toggle-loading"===n&&(u.find(".search-loading").toggle(),u.find(".search-clear").toggle()),u):("object"===t.default.type(n)&&(n=t.default.extend(!0,{},f,n)),u.addClass("search-input").prepend([a(l()).focus(function(e){a(this).select()}).keyup(function(e){if(e.preventDefault(),e.stopPropagation(),e.which===s&&n.escWillClear)c.call(this,e);else{var t=a(this).val();(e.which===o||n.minSearchLen&&t.length>=n.minSearchLen)&&r.call(this,e,t)}}).val(n.initialVal),a(['<span class="search-clear fa fa-times-circle" ','title="',i("clear search (esc)"),'"></span>'].join("")).tooltip({placement:"bottom"}).click(function(e){c.call(this,e)}),a(['<span class="search-loading fa fa-spinner fa-spin" ','title="',i("loading..."),'"></span>'].join("")).hide().tooltip({placement:"bottom"})]))}var t=function(e){return e&&e.__esModule?e:{default:e}}(e),a=t.default,i=window._l||function(e){return e};t.default.fn.extend({searchInput:function(e){return this.each(function(){return n(this,e)})}})}); |