diff --git a/build/jquery.tokeninput.min.js b/build/jquery.tokeninput.min.js index e5df300f..765a52b3 100644 --- a/build/jquery.tokeninput.min.js +++ b/build/jquery.tokeninput.min.js @@ -1,2 +1,2 @@ -/*! jquery.tokeninput 2014-04-02 */ -!function(a){function b(a){return String(null===a||void 0===a?"":a)}function c(a){return b(a).replace(i,function(a){return h[a]})}var d={method:"GET",queryParam:"q",searchDelay:300,minChars:1,propertyToSearch:"name",jsonContainer:null,contentType:"json",excludeCurrent:!1,excludeCurrentParameter:"x",prePopulate:null,processPrePopulate:!1,hintText:"Type in a search term",noResultsText:"No results",searchingText:"Searching...",deleteText:"×",animateDropdown:!0,placeholder:null,theme:null,zindex:999,resultsLimit:null,enableHTML:!1,resultsFormatter:function(a){var b=a[this.propertyToSearch];return"
"+(this.enableHTML?b:c(b))+"
"+i(a(b).data("settings").searchingText)+"
"),v())}function x(){a(b).data("settings").hintText&&(W.html(""+i(a(b).data("settings").hintText)+"
"),v())}function y(a){return a.replace(Z,"\\$&")}function z(a,b){return a.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+y(b)+")(?![^<>]*>)(?![^&;]+;)","gi"),function(a,b){return""+i(b)+""})}function A(a,b,c){return a.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+y(b)+")(?![^<>]*>)(?![^&;]+;)","g"),z(b,c))}function B(c){if(a(b).data("settings").excludeCurrent){var d=a(b).data("tokenInputObject").getTokens(),e=[];d.length&&(a.each(c,function(c,f){var g=!0;a.each(d,function(c,d){return f[a(b).data("settings").propertyToSearch]==d[a(b).data("settings").propertyToSearch]?(g=!1,!1):void 0}),g&&e.push(f)}),c=e)}return c}function C(c,d){if(d=B(d),d&&d.length){W.empty();var e=a(""+i(a(b).data("settings").noResultsText)+"
"),v())}function D(c){c&&(T&&E(a(T)),c.addClass(a(b).data("settings").classes.selectedDropdownItem),T=c.get(0))}function E(c){c.removeClass(a(b).data("settings").classes.selectedDropdownItem),T=null}function F(){var c=P.val();c&&c.length&&(R&&q(a(R),f.AFTER),c.length>=a(b).data("settings").minChars?(w(),clearTimeout(K),K=setTimeout(function(){G(c)},a(b).data("settings").searchDelay)):u())}function G(c){var d=c+H(),e=O.get(d);if(e)a.isFunction(a(b).data("settings").onCachedResult)&&(e=a(b).data("settings").onCachedResult.call(Q,e)),C(c,e);else if(a(b).data("settings").url){var f=H(),g={};if(g.data={},f.indexOf("?")>-1){var i=f.split("?");g.url=i[0];var j=i[1].split("&");a.each(j,function(a,b){var c=b.split("=");g.data[c[0]]=c[1]})}else g.url=f;if(g.data[a(b).data("settings").queryParam]=c,g.type=a(b).data("settings").method,g.dataType=a(b).data("settings").contentType,a(b).data("settings").crossDomain&&(g.dataType="jsonp"),a(b).data("settings").excludeCurrent){var k=a(b).data("tokenInputObject").getTokens(),l=a.map(k,function(c){return"function"==typeof a(b).data("settings").tokenValue?a(b).data("settings").tokenValue.call(this,c):c[a(b).data("settings").tokenValue]});g.data[a(b).data("settings").excludeCurrentParameter]=l.join(a(b).data("settings").tokenDelimiter)}g.success=function(e){O.add(d,a(b).data("settings").jsonContainer?e[a(b).data("settings").jsonContainer]:e),a.isFunction(a(b).data("settings").onResult)&&(e=a(b).data("settings").onResult.call(Q,e)),P.val()===c&&C(c,a(b).data("settings").jsonContainer?e[a(b).data("settings").jsonContainer]:e)},h.onSend&&h.onSend(g),a.ajax(g)}else if(a(b).data("settings").local_data){var m=a.grep(a(b).data("settings").local_data,function(d){return d[a(b).data("settings").propertyToSearch].toLowerCase().indexOf(c.toLowerCase())>-1});O.add(d,m),a.isFunction(a(b).data("settings").onResult)&&(m=a(b).data("settings").onResult.call(Q,m)),C(c,m)}}function H(){var c=a(b).data("settings").url;return"function"==typeof a(b).data("settings").url&&(c=a(b).data("settings").url.call(a(b).data("settings"))),c}function I(a){setTimeout(function(){a.focus()},50)}if("string"==typeof d||"function"==typeof d){a(b).data("settings").url=d;var J=H();void 0===a(b).data("settings").crossDomain&&"string"==typeof J&&(a(b).data("settings").crossDomain=-1===J.indexOf("://")?!1:location.href.split(/\/+/g)[1]!==J.split(/\/+/g)[1])}else"object"==typeof d&&(a(b).data("settings").local_data=d);a(b).data("settings").classes?a(b).data("settings").classes=a.extend({},e,a(b).data("settings").classes):a(b).data("settings").theme?(a(b).data("settings").classes={},a.each(e,function(c,d){a(b).data("settings").classes[c]=d+"-"+a(b).data("settings").theme})):a(b).data("settings").classes=e;var K,L,M=[],N=0,O=new a.TokenList.Cache,P=a('').css({outline:"none"}).attr("id",a(b).data("settings").idPrefix+b.id).focus(function(){return a(b).data("settings").disabled?!1:((null===a(b).data("settings").tokenLimit||a(b).data("settings").tokenLimit!==N)&&x(),void U.addClass(a(b).data("settings").classes.focused))}).blur(function(){u(),a(b).data("settings").allowFreeTagging&&m(),a(this).val(""),U.removeClass(a(b).data("settings").classes.focused)}).bind("keyup keydown blur update",l).keydown(function(c){var d,e;switch(c.keyCode){case g.LEFT:case g.RIGHT:case g.UP:case g.DOWN:if(0===this.value.length)d=V.prev(),e=V.next(),d.length&&d.get(0)===R||e.length&&e.get(0)===R?c.keyCode===g.LEFT||c.keyCode===g.UP?q(a(R),f.BEFORE):q(a(R),f.AFTER):c.keyCode!==g.LEFT&&c.keyCode!==g.UP||!d.length?c.keyCode!==g.RIGHT&&c.keyCode!==g.DOWN||!e.length||p(a(e.get(0))):p(a(d.get(0)));else{var h=null;c.keyCode===g.DOWN||c.keyCode===g.RIGHT?(h=a(W).find("li").first(),T&&(h=a(T).next())):(h=a(W).find("li").last(),T&&(h=a(T).prev())),D(h)}break;case g.BACKSPACE:if(d=V.prev(),0===this.value.length)return R?(s(a(R)),Q.change()):d.length&&p(a(d.get(0))),!1;1===a(this).val().length?u():setTimeout(function(){F()},5);break;case g.TAB:case g.ENTER:case g.NUMPAD_ENTER:case g.COMMA:if(T)o(a(T).data("tokeninput")),Q.change();else{if(a(b).data("settings").allowFreeTagging){if(a(b).data("settings").allowTabOut&&""===a(this).val())return!0;m()}else if(a(this).val(""),a(b).data("settings").allowTabOut)return!0;c.stopPropagation(),c.preventDefault()}return!1;case g.ESCAPE:return u(),!0;default:String.fromCharCode(c.which)&&setTimeout(function(){F()},5)}});h.placeholder&&P.attr("placeholder",h.placeholder);var Q=a(b).hide().val("").focus(function(){I(P)}).blur(function(){return P.blur(),Q}),R=null,S=0,T=null,U=a(""+(this.enableHTML?b:c(b))+"
"+i(a(b).data("settings").searchingText)+"
"),v())}function x(){a(b).data("settings").hintText&&(_.html(""+i(a(b).data("settings").hintText)+"
"),v())}function y(a){return a.replace(cb,"\\$&")}function z(a,b){return a.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+y(b)+")(?![^<>]*>)(?![^&;]+;)","gi"),function(a,b){return""+i(b)+""})}function A(a,b,c){return a.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+y(b)+")(?![^<>]*>)(?![^&;]+;)","g"),z(b,c))}function B(c){if(a(b).data("settings").excludeCurrent){var d=a(b).data("tokenInputObject").getTokens(),e=[];d.length&&(a.each(c,function(c,f){var g=!0;a.each(d,function(c,d){return f[a(b).data("settings").propertyToSearch]==d[a(b).data("settings").propertyToSearch]?(g=!1,!1):void 0}),g&&e.push(f)}),c=e)}return c}function C(c,d){if(d=B(d),d&&d.length){_.empty();var e=a(""+i(a(b).data("settings").noResultsText)+"
"),v())}function D(c){c&&(Y&&E(a(Y)),c.addClass(a(b).data("settings").classes.selectedDropdownItem),Y=c.get(0))}function E(c){c.removeClass(a(b).data("settings").classes.selectedDropdownItem),Y=null}function F(){var c=U.val();c&&c.length&&(W&&q(a(W),f.AFTER),c.length>=a(b).data("settings").minChars?(w(),clearTimeout(P),P=setTimeout(function(){G(c)},a(b).data("settings").searchDelay)):u())}function G(c){var e=c+H(),f=T.get(e);if(f)a.isFunction(a(b).data("settings").onCachedResult)&&(f=a(b).data("settings").onCachedResult.call(V,f)),C(c,f);else if(a(b).data("settings").url){var g=H(),i={};if(i.data={},g.indexOf("?")>-1){var j=g.split("?");i.url=j[0];var k=j[1].split("&");a.each(k,function(a,b){var c=b.split("=");i.data[c[0]]=c[1]})}else i.url=g;if(i.data[a(b).data("settings").queryParam]=c,i.type=a(b).data("settings").method,i.dataType=a(b).data("settings").contentType,a(b).data("settings").crossDomain&&(i.dataType="jsonp"),a(b).data("settings").excludeCurrent){var l=a(b).data("tokenInputObject").getTokens(),m=a.map(l,function(c){return"function"==typeof a(b).data("settings").tokenValue?a(b).data("settings").tokenValue.call(this,c):c[a(b).data("settings").tokenValue]});i.data[a(b).data("settings").excludeCurrentParameter]=m.join(a(b).data("settings").tokenDelimiter)}i.success=function(d){T.add(e,a(b).data("settings").jsonContainer?d[a(b).data("settings").jsonContainer]:d),a.isFunction(a(b).data("settings").onResult)&&(d=a(b).data("settings").onResult.call(V,d)),U.val()===c&&C(c,a(b).data("settings").jsonContainer?d[a(b).data("settings").jsonContainer]:d)},h.onSend&&h.onSend(i),a.ajax(i)}else if(a(b).data("settings").local_data){var n=a.grep(a(b).data("settings").local_data,function(d){return d[a(b).data("settings").propertyToSearch].toLowerCase().indexOf(c.toLowerCase())>-1});T.add(e,n),a.isFunction(a(b).data("settings").onResult)&&(n=a(b).data("settings").onResult.call(V,n)),C(c,n)}else if(a(b).data("settings").prefix){var g=d[arguments[1]][0],i={};if(i.data={},g.indexOf("?")>-1){var j=g.split("?");i.url=j[0];var k=j[1].split("&");a.each(k,function(a,b){var c=b.split("=");i.data[c[0]]=c[1]})}else i.url=g;if(i.data[a(b).data("settings").queryParam]=c,i.type=a(b).data("settings").method,i.dataType=a(b).data("settings").contentType,a(b).data("settings").crossDomain&&(i.dataType="jsonp"),a(b).data("settings").excludeCurrent){var l=a(b).data("tokenInputObject").getTokens(),m=a.map(l,function(c){return"function"==typeof a(b).data("settings").tokenValue?a(b).data("settings").tokenValue.call(this,c):c[a(b).data("settings").tokenValue]});i.data[a(b).data("settings").excludeCurrentParameter]=m.join(a(b).data("settings").tokenDelimiter)}i.success=function(d){T.add(e,a(b).data("settings").jsonContainer?d[a(b).data("settings").jsonContainer]:d),a.isFunction(a(b).data("settings").onResult)&&(d=a(b).data("settings").onResult.call(V,d)),U.val().trim().substring(1)===c&&C(c,a(b).data("settings").jsonContainer?d[a(b).data("settings").jsonContainer]:d)},h.onSend&&h.onSend(i),a.ajax(i)}}function H(){var c=a(b).data("settings").url;return"function"==typeof a(b).data("settings").url&&(c=a(b).data("settings").url.call(a(b).data("settings"))),c}function I(a){setTimeout(function(){a.focus()},50)}function J(c){a.inArray(c,a(b).data("settings").token_prefix)>=0&&setTimeout(function(){K(c)},5)}function K(c){var d=U.val().trim().substring(1);d&&d.length&&(W&&q(a(W),f.AFTER),d.length>=a(b).data("settings").minChars?(w(),clearTimeout(P),P=setTimeout(function(){G(d,c)},a(b).data("settings").searchDelay)):u())}if("string"==typeof d||"function"==typeof d){a(b).data("settings").url=d;var L=H();void 0===a(b).data("settings").crossDomain&&"string"==typeof L&&(a(b).data("settings").crossDomain=-1===L.indexOf("://")?!1:location.href.split(/\/+/g)[1]!==L.split(/\/+/g)[1])}else if("object"==typeof d)if(d.prefix===!0){a(b).data("settings").prefix=!0;var M=Object.keys(d);for(var N in M){var O=M[N];"object"==typeof d[O]&&(a(b).data("settings").token_prefix.push(O),a(b).data("settings").prefix_object.push(d[O]))}}else a(b).data("settings").local_data=d;a(b).data("settings").classes?a(b).data("settings").classes=a.extend({},e,a(b).data("settings").classes):a(b).data("settings").theme?(a(b).data("settings").classes={},a.each(e,function(c,d){a(b).data("settings").classes[c]=d+"-"+a(b).data("settings").theme})):a(b).data("settings").classes=e;var P,Q,R=[],S=0,T=new a.TokenList.Cache,U=a('').css({outline:"none"}).attr("id",a(b).data("settings").idPrefix+b.id).focus(function(){return a(b).data("settings").disabled?!1:((null===a(b).data("settings").tokenLimit||a(b).data("settings").tokenLimit!==S)&&x(),void Z.addClass(a(b).data("settings").classes.focused))}).blur(function(){u(),a(b).data("settings").allowFreeTagging&&m(),a(this).val(""),Z.removeClass(a(b).data("settings").classes.focused)}).bind("keyup keydown blur update",l).keydown(function(c){var e,h;switch(c.keyCode){case g.LEFT:case g.RIGHT:case g.UP:case g.DOWN:if(0===this.value.length)e=$.prev(),h=$.next(),e.length&&e.get(0)===W||h.length&&h.get(0)===W?c.keyCode===g.LEFT||c.keyCode===g.UP?q(a(W),f.BEFORE):q(a(W),f.AFTER):c.keyCode!==g.LEFT&&c.keyCode!==g.UP||!e.length?c.keyCode!==g.RIGHT&&c.keyCode!==g.DOWN||!h.length||p(a(h.get(0))):p(a(e.get(0)));else{var i=null;c.keyCode===g.DOWN||c.keyCode===g.RIGHT?(i=a(_).find("li").first(),Y&&(i=a(Y).next())):(i=a(_).find("li").last(),Y&&(i=a(Y).prev())),D(i)}break;case g.BACKSPACE:if(e=$.prev(),0===this.value.length)return W?(s(a(W)),V.change()):e.length&&p(a(e.get(0))),!1;1===a(this).val().length?u():a(b).data("settings").prefix===!0?a.inArray(a(this).val().charAt(0),a(b).data("settings").token_prefix)&&J(a(this).val().charAt(0)):setTimeout(function(){F()},5);break;case g.TAB:case g.ENTER:case g.NUMPAD_ENTER:case g.COMMA:if(Y)o(a(Y).data("tokeninput")),V.change();else{if(a(b).data("settings").allowFreeTagging){if(a(b).data("settings").allowTabOut&&""===a(this).val())return!0;m()}else{var j=a(this).val().trim().charAt(0),k=d[j][1].freetagging;if(k)m();else if(a(this).val(""),a(b).data("settings").allowTabOut)return!0}c.stopPropagation(),c.preventDefault()}return!1;case g.ESCAPE:return u(),!0;case g.SPACE:if(a(b).data("settings").prefix===!0){var j=a(this).val().trim().charAt(0);try{var k=d[j][1].freetagging;k&&m()}catch(l){return!1}}break;default:String.fromCharCode(c.which)&&(a(b).data("settings").prefix===!0?J(a(this).val().trim().charAt(0)):setTimeout(function(){F()},5))}});h.placeholder&&U.attr("placeholder",h.placeholder);var V=a(b).hide().val("").focus(function(){I(U)}).blur(function(){return U.blur(),V}),W=null,X=0,Y=null,Z=a("