diff --git a/bower.json b/bower.json index 9ec29fe9e..408d8b0dd 100644 --- a/bower.json +++ b/bower.json @@ -2,7 +2,7 @@ "name": "selectize", "keywords": ["select", "ui", "form", "input", "control", "autocomplete", "tagging", "tag"], "description": "Selectize is a jQuery-based custom ').appendTo(d).attr("tabindex",e);g=f(b.dropdownParent||c);g=f("
").addClass(b.dropdownClass).hide().appendTo(g);h=f("
").addClass(b.dropdownContentClass).appendTo(g);c.css({width:a.$input[0].style.width,display:a.$input.css("display")});a.plugins.length&&c.addClass("plugin-"+a.plugins.join(" plugin-"));p=a.settings.mode;c.toggleClass("single","single"=== -p);c.toggleClass("multi","multi"===p);(null===b.maxItems||1c&&(e=d,d=c,c=e);for(;d<=c;d++)e=this.$control[0].childNodes[d],-1===this.$activeItems.indexOf(e)&&(f(e).addClass("active"),this.$activeItems.push(e));b.preventDefault()}else"mousedown"===c&&this.isCtrlDown||"keydown"===c&&this.isShiftDown?a.hasClass("active")?(c=this.$activeItems.indexOf(a[0]),this.$activeItems.splice(c,1),a.removeClass("active")):this.$activeItems.push(a.addClass("active")[0]):(f(this.$activeItems).removeClass("active"),this.$activeItems=[a.addClass("active")[0]]);this.isFocused= -!!this.$activeItems.length||this.isInputFocused}else f(this.$activeItems).removeClass("active"),this.$activeItems=[],this.isFocused=this.isInputFocused},setActiveOption:function(a,b,c){var d,e,g;this.$activeOption&&this.$activeOption.removeClass("active");this.$activeOption=null;a=f(a);a.length&&(this.$activeOption=a.addClass("active"),b||!q(b))&&(a=this.$dropdown_content.height(),d=this.$activeOption.outerHeight(!0),b=this.$dropdown_content.scrollTop()||0,e=this.$activeOption.offset().top-this.$dropdown_content.offset().top+ -b,g=e-a+d,e+d>a-b?this.$dropdown_content.stop().animate({scrollTop:g},c?this.settings.scrollDuration:0):ee?1*b:e>d?-1*b:0}}())}c.currentResults=g}else g=f.extend(!0,{},c.currentResults);return c.prepareResults(g,b)},prepareResults:function(a,b){if(this.settings.hideSelected)for(var c= -a.items.length-1;0<=c;c--)-1!==this.items.indexOf(String(a.items[c].value))&&a.items.splice(c,1);a.total=a.items.length;"number"===typeof b.limit&&(a.items=a.items.slice(0,b.limit));return a},refreshOptions:function(a){"undefined"===typeof a&&(a=!0);var b,c,d,e,g,h,p,m=this.$control_input.val(),n=this.search(m,{}),l,k=this.$dropdown_content;c=n.items.length;"number"===typeof this.settings.maxOptions&&(c=Math.min(c,this.settings.maxOptions));d={};if(this.settings.optgroupOrder)for(e=this.settings.optgroupOrder, -b=0;b=this.caretPos&&b++,b=f(this.$control[0].childNodes[b]),b.attr("data-value")=== -a)?b:f()},addItem:function(a){x(this,["change"],function(){var b,c,d=this,e=d.settings.mode,g;a=String(a);"single"===e&&d.clear();"multi"===e&&d.isFull()||(-1!==d.items.indexOf(a)||!d.options.hasOwnProperty(a))||(b=f(d.render("item",d.options[a])),d.items.splice(d.caretPos,0,a),d.insertAtCaret(b),d.refreshClasses(),d.isSetup&&(g=d.$dropdown_content.find("[data-selectable]"),c=d.getOption(a),c=d.getAdjacentOption(c,1).attr("data-value"),d.refreshOptions("single"!==e),c&&d.setActiveOption(d.getOption(c)), -!g.length||null!==d.settings.maxItems&&d.items.length>=d.settings.maxItems?d.close():d.positionDropdown(),d.isFocused&&window.setTimeout(function(){"single"===e?(d.blur(),d.focus(!1),d.hideInput()):d.focus(!1)},0),d.updatePlaceholder(),d.trigger("item_add",a,b),d.updateOriginalInput()))})},removeItem:function(a){var b,c;b="object"===typeof a?a:this.getItem(a);a=String(b.attr("data-value"));c=this.items.indexOf(a);-1!==c&&(b.remove(),b.hasClass("active")&&(b=this.$activeItems.indexOf(b[0]),this.$activeItems.splice(b, -1)),this.items.splice(c,1),this.lastQuery=null,!this.settings.persist&&this.userOptions.hasOwnProperty(a)&&this.removeOption(a),c=this.settings.maxItems},updateOriginalInput:function(){var a,b,c;if("select"===this.$input[0].tagName.toLowerCase()){c= -[];a=0;for(b=this.items.length;a');c.length||this.$input.attr("multiple")||c.push('');this.$input.html(c.join(""))}else this.$input.val(this.getValue());this.$input.trigger("change");this.isSetup&&this.trigger("change",this.$input.val())},updatePlaceholder:function(){if(this.settings.placeholder){var a=this.$control_input;this.items.length?a.removeAttr("placeholder"):a.attr("placeholder", -this.settings.placeholder);a.triggerHandler("update")}},open:function(){this.isLocked||(this.isOpen||"multi"===this.settings.mode&&this.isFull())||(this.focus(!0),this.isOpen=!0,this.refreshClasses(),this.$dropdown.css({visibility:"hidden",display:"block"}),this.positionDropdown(),this.$dropdown.css({visibility:"visible"}),this.trigger("dropdown_open",this.$dropdown))},close:function(){this.isOpen&&(this.$dropdown.hide(),this.setActiveOption(null),this.isOpen=!1,this.refreshClasses(),this.trigger("dropdown_close", -this.$dropdown))},positionDropdown:function(){var a=this.$control,b="body"===this.settings.dropdownParent?a.offset():a.position();b.top+=a.outerHeight(!0);this.$dropdown.css({width:a.outerWidth(),top:b.top,left:b.left})},clear:function(){this.items.length&&(this.$control.children(":not(input)").remove(),this.items=[],this.setCaret(0),this.updatePlaceholder(),this.updateOriginalInput(),this.refreshClasses(),this.showInput(),this.trigger("clear"))},insertAtCaret:function(a){var b=Math.min(this.caretPos, -this.items.length);0===b?this.$control.prepend(a):f(this.$control[0].childNodes[b]).before(a);this.setCaret(b+1)},deleteSelection:function(a){var b,c,d,e,g;b=a&&8===a.keyCode?-1:1;c=u(this.$control_input[0]);this.$activeOption&&!this.settings.hideSelected&&(g=this.getAdjacentOption(this.$activeOption,-1).attr("data-value"));d=[];if(this.$activeItems.length){e=this.$control.children(".active:"+(0b&&0===c.start&&0===c.length?d.push(this.items[this.caretPos-1]):0a?0===d.start&&0===d.length:d.start===c)&&!c&&this.advanceCaret(a,b)):(d=this.$control.children(".active:"+c),d.length&&(d=this.$control.children(":not(input)").index(d),this.setActiveItem(null),this.setCaret(0";break;case "optgroup_header":d=b[this.settings.optgroupLabelField];e='
'+k(d)+"
";break;case "option":e='
'+k(d)+"
";break;case "item":e='
'+k(d)+"
";break;case "option_create":e='
Add '+ -k(b.input)+"
"}if("option"===a||"option_create"===a)e=e.replace(h,"<$1 data-selectable");"optgroup"===a&&(d=b[this.settings.optgroupValueField]||"",e=e.replace(h,'<$1 data-group="'+k(d)+'"'));if("option"===a||"item"===a)e=e.replace(h,'<$1 data-value="'+k(c||"")+'"');g&&(this.renderCache[a][c]=e);return e}});l.defaults={plugins:[],delimiter:",",persist:!0,diacritics:!0,create:!1,highlight:!0,openOnFocus:!0,maxOptions:1E3,maxItems:null,hideSelected:null,preload:!1,scrollDuration:60, -loadThrottle:300,dataAttr:"data-data",optgroupField:"optgroup",sortField:null,sortDirection:"asc",valueField:"value",labelField:"text",optgroupLabelField:"label",optgroupValueField:"value",optgroupOrder:null,searchField:["text"],mode:null,theme:"default",wrapperClass:"selectize-control",inputClass:"selectize-input",dropdownClass:"selectize-dropdown",dropdownContentClass:"selectize-dropdown-content",dropdownParent:null,render:{}};f.fn.selectize=function(a){a=a||{};var b=f.fn.selectize.defaults,c=a.dataAttr|| -b.dataAttr,d=function(a,b){var d,l,m,n;b.maxItems=a.attr("multiple")?null:1;var k=function(a){a=c&&a.attr(c);return"string"===typeof a&&a.length?JSON.parse(a):null},q=function(a,c){a=f(a);var d=a.attr("value")||"";d.length&&(b.options[d]=k(a)||{text:a.html(),value:d,optgroup:c},a.is(":selected")&&b.items.push(d))},r=function(a){var c,d=f("option",a);a=f(a);var e=a.attr("label");e&&e.length&&(b.optgroups[e]=k(a)||{label:e});a=0;for(c=d.length;a
'+a.title+'×
'}},a);b.setup=function(){var c=b.setup;return function(){c.apply(b,arguments);b.$dropdown_header=f(a.html(a));b.$dropdown.prepend(b.$dropdown_header)}}()});l.registerPlugin("optgroup_columns",function(a){var b=this;a=f.extend({equalizeWidth:!0,equalizeHeight:!0},a);this.getAdjacentOption=function(a,b){var c=a.closest("[data-group]").find("[data-selectable]"),h=c.index(a)+ -b;return 0<=h&&h'+ -a[b.settings.labelField]+' ×
'};this.setup=function(){var a=b.setup;return function(){a.apply(this,arguments);this.$control.on("click",".remove",function(a){a.preventDefault();a=f(a.target).parent();b.setActiveItem(a);b.deleteSelection()&&b.setCaret(b.items.length)})}}()});l.registerPlugin("restore_on_backspace",function(a){var b=this;a.text=a.text||function(a){return a[this.settings.labelField]};this.onKeyDown= -function(c){var d=b.onKeyDown;return function(b){var c;if(8===b.keyCode&&(""===this.$control_input.val()&&!this.$activeItems.length)&&(c=this.caretPos-1,0<=c&&c/g,">").replace(/"/g,""")},w={before:function(a, +b,c){var d=a[b];a[b]=function(){c.apply(a,arguments);return d.apply(a,arguments)}},after:function(a,b,c){var d=a[b];a[b]=function(){var b=d.apply(a,arguments);c.apply(a,arguments);return b}}},x=function(a,b){if(!f.isArray(b))return b;var c,d,e={};c=0;for(d=b.length;c=e||65<=e&&90>=e||48<=e&&57>=e||32==e,46===e||8===e?(b=v(a[0]),b.length?d=d.substring(0,b.start)+d.substring(b.start+b.length):8===e&&b.start? +d=d.substring(0,b.start-1)+d.substring(b.start+1):46===e&&"undefined"!==typeof b.start&&(d=d.substring(0,b.start)+d.substring(b.start+1))):g&&(e=b.shiftKey,b=String.fromCharCode(b.keyCode),b=e?b.toUpperCase():b.toLowerCase(),d+=b));b=a.attr("placeholder")||"";!d.length&&b.length&&(d=b);d=f("").css({position:"absolute",top:-99999,left:-99999,width:"auto",padding:0,whiteSpace:"nowrap"}).text(d).appendTo("body");b=["letterSpacing","fontSize","fontFamily","fontWeight","textTransform"];var h={}; +if(b)for(e=0,g=b.length;e").addClass(b.theme).addClass(b.wrapperClass).addClass(c);d=f("
").addClass(b.inputClass).addClass("items").toggleClass("has-options",!f.isEmptyObject(a.options)).appendTo(c);e=f('').appendTo(d).attr("tabindex",e);g=f(b.dropdownParent||c);g=f("
").addClass(b.dropdownClass).hide().appendTo(g);h=f("
").addClass(b.dropdownContentClass).appendTo(g);c.css({width:a.$input[0].style.width,display:a.$input.css("display")});a.plugins.length&& +c.addClass("plugin-"+a.plugins.join(" plugin-"));q=a.settings.mode;c.toggleClass("single","single"===q);c.toggleClass("multi","multi"===q);(null===b.maxItems||1c&&(e=d,d=c,c=e);for(;d<=c;d++)e=this.$control[0].childNodes[d],-1===this.$activeItems.indexOf(e)&&(f(e).addClass("active"),this.$activeItems.push(e));b.preventDefault()}else"mousedown"===c&&this.isCtrlDown||"keydown"===c&&this.isShiftDown?a.hasClass("active")?(c=this.$activeItems.indexOf(a[0]),this.$activeItems.splice(c,1),a.removeClass("active")):this.$activeItems.push(a.addClass("active")[0]):(f(this.$activeItems).removeClass("active"), +this.$activeItems=[a.addClass("active")[0]]);this.isFocused=!!this.$activeItems.length||this.isInputFocused}else f(this.$activeItems).removeClass("active"),this.$activeItems=[],this.isFocused=this.isInputFocused},setActiveOption:function(a,b,c){var d,e,g;this.$activeOption&&this.$activeOption.removeClass("active");this.$activeOption=null;a=f(a);a.length&&(this.$activeOption=a.addClass("active"),b||!t(b))&&(a=this.$dropdown_content.height(),d=this.$activeOption.outerHeight(!0),b=this.$dropdown_content.scrollTop()|| +0,e=this.$activeOption.offset().top-this.$dropdown_content.offset().top+b,g=e-a+d,e+d>a-b?this.$dropdown_content.stop().animate({scrollTop:g},c?this.settings.scrollDuration:0):ee?1*b:e>d?-1*b:0}}())}c.currentResults=g}else g=f.extend(!0,{},c.currentResults); +return c.prepareResults(g,b)},prepareResults:function(a,b){if(this.settings.hideSelected)for(var c=a.items.length-1;0<=c;c--)-1!==this.items.indexOf(String(a.items[c].value))&&a.items.splice(c,1);a.total=a.items.length;"number"===typeof b.limit&&(a.items=a.items.slice(0,b.limit));return a},refreshOptions:function(a){"undefined"===typeof a&&(a=!0);var b,c,d,e,g,h,q,m=this.$control_input.val(),p=this.search(m,{}),l,k=this.$dropdown_content;c=p.items.length;"number"===typeof this.settings.maxOptions&& +(c=Math.min(c,this.settings.maxOptions));d={};if(this.settings.optgroupOrder)for(e=this.settings.optgroupOrder,b=0;b=this.caretPos&&b++,b=f(this.$control[0].childNodes[b]),b.attr("data-value")===a)?b:f()},addItem:function(a){y(this,["change"],function(){var b,c,d=this,e=d.settings.mode,g;a=k(a);"single"===e&&d.clear();"multi"===e&&d.isFull()||(-1!==d.items.indexOf(a)||!d.options.hasOwnProperty(a))|| +(b=f(d.render("item",d.options[a])),d.items.splice(d.caretPos,0,a),d.insertAtCaret(b),d.refreshClasses(),d.isSetup&&(g=d.$dropdown_content.find("[data-selectable]"),c=d.getOption(a),c=d.getAdjacentOption(c,1).attr("data-value"),d.refreshOptions("single"!==e),c&&d.setActiveOption(d.getOption(c)),!g.length||null!==d.settings.maxItems&&d.items.length>=d.settings.maxItems?d.close():d.positionDropdown(),d.isFocused&&window.setTimeout(function(){"single"===e?(d.blur(),d.focus(!1),d.hideInput()):d.focus(!1)}, +0),d.updatePlaceholder(),d.trigger("item_add",a,b),d.updateOriginalInput()))})},removeItem:function(a){var b,c;b="object"===typeof a?a:this.getItem(a);a=k(b.attr("data-value"));c=this.items.indexOf(a);-1!==c&&(b.remove(),b.hasClass("active")&&(b=this.$activeItems.indexOf(b[0]),this.$activeItems.splice(b,1)),this.items.splice(c,1),this.lastQuery=null,!this.settings.persist&&this.userOptions.hasOwnProperty(a)&&this.removeOption(a),c=this.settings.maxItems},updateOriginalInput:function(){var a,b,c;if("select"===this.$input[0].tagName.toLowerCase()){c=[];a=0;for(b=this.items.length;a');c.length||this.$input.attr("multiple")||c.push(''); +this.$input.html(c.join(""))}else this.$input.val(this.getValue());this.$input.trigger("change");this.isSetup&&this.trigger("change",this.$input.val())},updatePlaceholder:function(){if(this.settings.placeholder){var a=this.$control_input;this.items.length?a.removeAttr("placeholder"):a.attr("placeholder",this.settings.placeholder);a.triggerHandler("update")}},open:function(){this.isLocked||(this.isOpen||"multi"===this.settings.mode&&this.isFull())||(this.focus(!0),this.isOpen=!0,this.refreshClasses(), +this.$dropdown.css({visibility:"hidden",display:"block"}),this.positionDropdown(),this.$dropdown.css({visibility:"visible"}),this.trigger("dropdown_open",this.$dropdown))},close:function(){this.isOpen&&(this.$dropdown.hide(),this.setActiveOption(null),this.isOpen=!1,this.refreshClasses(),this.trigger("dropdown_close",this.$dropdown))},positionDropdown:function(){var a=this.$control,b="body"===this.settings.dropdownParent?a.offset():a.position();b.top+=a.outerHeight(!0);this.$dropdown.css({width:a.outerWidth(), +top:b.top,left:b.left})},clear:function(){this.items.length&&(this.$control.children(":not(input)").remove(),this.items=[],this.setCaret(0),this.updatePlaceholder(),this.updateOriginalInput(),this.refreshClasses(),this.showInput(),this.trigger("clear"))},insertAtCaret:function(a){var b=Math.min(this.caretPos,this.items.length);0===b?this.$control.prepend(a):f(this.$control[0].childNodes[b]).before(a);this.setCaret(b+1)},deleteSelection:function(a){var b,c,d,e,g;b=a&&8===a.keyCode?-1:1;c=v(this.$control_input[0]); +this.$activeOption&&!this.settings.hideSelected&&(g=this.getAdjacentOption(this.$activeOption,-1).attr("data-value"));d=[];if(this.$activeItems.length){e=this.$control.children(".active:"+(0b&&0===c.start&&0=== +c.length?d.push(this.items[this.caretPos-1]):0a?0===d.start&&0===d.length:d.start===c)&&!c&&this.advanceCaret(a,b)):(d=this.$control.children(".active:"+c),d.length&&(d=this.$control.children(":not(input)").index(d),this.setActiveItem(null),this.setCaret(0";break;case "optgroup_header":d=b[this.settings.optgroupLabelField];e='
'+n(d)+"
";break;case "option":e='
'+n(d)+"
";break;case "item":e='
'+n(d)+"
";break;case "option_create":e='
Add '+n(b.input)+"
"}if("option"===a||"option_create"===a)e=e.replace(h,"<$1 data-selectable");"optgroup"===a&&(d=b[this.settings.optgroupValueField]||"",e=e.replace(h,'<$1 data-group="'+ +n(d)+'"'));if("option"===a||"item"===a)e=e.replace(h,'<$1 data-value="'+n(c||"")+'"');g&&(this.renderCache[a][c]=e);return e}});l.defaults={plugins:[],delimiter:",",persist:!0,diacritics:!0,create:!1,highlight:!0,openOnFocus:!0,maxOptions:1E3,maxItems:null,hideSelected:null,preload:!1,scrollDuration:60,loadThrottle:300,dataAttr:"data-data",optgroupField:"optgroup",sortField:null,sortDirection:"asc",valueField:"value",labelField:"text",optgroupLabelField:"label",optgroupValueField:"value",optgroupOrder:null, +searchField:["text"],mode:null,theme:"default",wrapperClass:"selectize-control",inputClass:"selectize-input",dropdownClass:"selectize-dropdown",dropdownContentClass:"selectize-dropdown-content",dropdownParent:null,render:{}};f.fn.selectize=function(a){a=a||{};var b=f.fn.selectize.defaults,c=a.dataAttr||b.dataAttr,d=function(a,b){var d,l,m,k;b.maxItems=a.attr("multiple")?null:1;var n=function(a){a=c&&a.attr(c);return"string"===typeof a&&a.length?JSON.parse(a):null},r=function(a,c){a=f(a);var d=a.attr("value")|| +"";d.length&&(b.options[d]=n(a)||{text:a.html(),value:d,optgroup:c},a.is(":selected")&&b.items.push(d))},s=function(a){var c,d=f("option",a);a=f(a);var e=a.attr("label");e&&e.length&&(b.optgroups[e]=n(a)||{label:e});a=0;for(c=d.length;a
'+a.title+'×
'}},a);b.setup=function(){var c=b.setup;return function(){c.apply(b, +arguments);b.$dropdown_header=f(a.html(a));b.$dropdown.prepend(b.$dropdown_header)}}()});l.registerPlugin("optgroup_columns",function(a){var b=this;a=f.extend({equalizeWidth:!0,equalizeHeight:!0},a);this.getAdjacentOption=function(a,b){var c=a.closest("[data-group]").find("[data-selectable]"),h=c.index(a)+b;return 0<=h&&h'+a[b.settings.labelField]+' ×
'};this.setup=function(){var a=b.setup;return function(){a.apply(this,arguments); +this.$control.on("click",".remove",function(a){a.preventDefault();a=f(a.target).parent();b.setActiveItem(a);b.deleteSelection()&&b.setCaret(b.items.length)})}}()});l.registerPlugin("restore_on_backspace",function(a){var b=this;a.text=a.text||function(a){return a[this.settings.labelField]};this.onKeyDown=function(c){var d=b.onKeyDown;return function(b){var c;if(8===b.keyCode&&(""===this.$control_input.val()&&!this.$activeItems.length)&&(c=this.caretPos-1,0<=c&&c