!function(e){"use strict";"function"==typeof define&&define.amd?define(["jquery","./menu","../keycode","../position","../safe-active-element","../version","../widget"],e):e(jQuery)}(function(o){"use strict";return o.widget("ui.autocomplete",{version:"1.13.3",defaultElement:"<input>",options:{appendTo:null,autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,liveRegionTimer:null,_create:function(){var i,s,n,e=this.element[0].nodeName.toLowerCase(),t="textarea"===e,e="input"===e;this.isMultiLine=t||!e&&this._isContentEditable(this.element),this.valueMethod=this.element[t||e?"val":"text"],this.isNewMenu=!0,this._addClass("ui-autocomplete-input"),this.element.attr("autocomplete","off"),this._on(this.element,{keydown:function(e){if(this.element.prop("readOnly"))s=n=i=!0;else{s=n=i=!1;var t=o.ui.keyCode;switch(e.keyCode){case t.PAGE_UP:i=!0,this._move("previousPage",e);break;case t.PAGE_DOWN:i=!0,this._move("nextPage",e);break;case t.UP:i=!0,this._keyEvent("previous",e);break;case t.DOWN:i=!0,this._keyEvent("next",e);break;case t.ENTER:this.menu.active&&(i=!0,e.preventDefault(),this.menu.select(e));break;case t.TAB:this.menu.active&&this.menu.select(e);break;case t.ESCAPE:this.menu.element.is(":visible")&&(this.isMultiLine||this._value(this.term),this.close(e),e.preventDefault());break;default:s=!0,this._searchTimeout(e)}}},keypress:function(e){if(i)i=!1,this.isMultiLine&&!this.menu.element.is(":visible")||e.preventDefault();else if(!s){var t=o.ui.keyCode;switch(e.keyCode){case t.PAGE_UP:this._move("previousPage",e);break;case t.PAGE_DOWN:this._move("nextPage",e);break;case t.UP:this._keyEvent("previous",e);break;case t.DOWN:this._keyEvent("next",e)}}},input:function(e){n?(n=!1,e.preventDefault()):this._searchTimeout(e)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(e){clearTimeout(this.searching),this.close(e),this._change(e)}}),this._initSource(),this.menu=o("<ul>").appendTo(this._appendTo()).menu({role:null}).hide().attr({unselectable:"on"}).menu("instance"),this._addClass(this.menu.element,"ui-autocomplete","ui-front"),this._on(this.menu.element,{mousedown:function(e){e.preventDefault()},menufocus:function(e,t){var i,s;this.isNewMenu&&(this.isNewMenu=!1,e.originalEvent)&&/^mouse/.test(e.originalEvent.type)?(this.menu.blur(),this.document.one("mousemove",function(){o(e.target).trigger(e.originalEvent)})):(s=t.item.data("ui-autocomplete-item"),!1!==this._trigger("focus",e,{item:s})&&e.originalEvent&&/^key/.test(e.originalEvent.type)&&this._value(s.value),(i=t.item.attr("aria-label")||s.value)&&String.prototype.trim.call(i).length&&(clearTimeout(this.liveRegionTimer),this.liveRegionTimer=this._delay(function(){this.liveRegion.html(o("<div>").text(i))},100)))},menuselect:function(e,t){var i=t.item.data("ui-autocomplete-item"),s=this.previous;this.element[0]!==o.ui.safeActiveElement(this.document[0])&&(this.element.trigger("focus"),this.previous=s,this._delay(function(){this.previous=s,this.selectedItem=i})),!1!==this._trigger("select",e,{item:i})&&this._value(i.value),this.term=this._value(),this.close(e),this.selectedItem=i}}),this.liveRegion=o("<div>",{role:"status","aria-live":"assertive","aria-relevant":"additions"}).appendTo(this.document[0].body),this._addClass(this.liveRegion,null,"ui-helper-hidden-accessible"),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeAttr("autocomplete"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(e,t){this._super(e,t),"source"===e&&this._initSource(),"appendTo"===e&&this.menu.element.appendTo(this._appendTo()),"disabled"===e&&t&&this.xhr&&this.xhr.abort()},_isEventTargetInWidget:function(e){var t=this.menu.element[0];return e.target===this.element[0]||e.target===t||o.contains(t,e.target)},_closeOnClickOutside:function(e){this._isEventTargetInWidget(e)||this.close()},_appendTo:function(){var e=this.options.appendTo;return e=(e=(e=e&&(e.jquery||e.nodeType?o(e):this.document.find(e).eq(0)))&&e[0]?e:this.element.closest(".ui-front, dialog")).length?e:this.document[0].body},_initSource:function(){var i,s,n=this;Array.isArray(this.options.source)?(i=this.options.source,this.source=function(e,t){t(o.ui.autocomplete.filter(i,e.term))}):"string"==typeof this.options.source?(s=this.options.source,this.source=function(e,t){n.xhr&&n.xhr.abort(),n.xhr=o.ajax({url:s,data:e,dataType:"json",success:function(e){t(e)},error:function(){t([])}})}):this.source=this.options.source},_searchTimeout:function(s){clearTimeout(this.searching),this.searching=this._delay(function(){var e=this.term===this._value(),t=this.menu.element.is(":visible"),i=s.altKey||s.ctrlKey||s.metaKey||s.shiftKey;e&&(t||i)||(this.selectedItem=null,this.search(null,s))},this.options.delay)},search:function(e,t){return e=null!=e?e:this._value(),this.term=this._value(),e.length<this.options.minLength?this.close(t):!1!==this._trigger("search",t)?this._search(e):void 0},_search:function(e){this.pending++,this._addClass("ui-autocomplete-loading"),this.cancelSearch=!1,this.source({term:e},this._response())},_response:function(){var t=++this.requestIndex;return function(e){t===this.requestIndex&&this.__response(e),this.pending--,this.pending||this._removeClass("ui-autocomplete-loading")}.bind(this)},__response:function(e){e=e&&this._normalize(e),this._trigger("response",null,{content:e}),!this.options.disabled&&e&&e.length&&!this.cancelSearch?(this._suggest(e),this._trigger("open")):this._close()},close:function(e){this.cancelSearch=!0,this._close(e)},_close:function(e){this._off(this.document,"mousedown"),this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.blur(),this.isNewMenu=!0,this._trigger("close",e))},_change:function(e){this.previous!==this._value()&&this._trigger("change",e,{item:this.selectedItem})},_normalize:function(e){return e.length&&e[0].label&&e[0].value?e:o.map(e,function(e){return"string"==typeof e?{label:e,value:e}:o.extend({},e,{label:e.label||e.value,value:e.value||e.label})})},_suggest:function(e){var t=this.menu.element.empty();this._renderMenu(t,e),this.isNewMenu=!0,this.menu.refresh(),t.show(),this._resizeMenu(),t.position(o.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next(),this._on(this.document,{mousedown:"_closeOnClickOutside"})},_resizeMenu:function(){var e=this.menu.element;e.outerWidth(Math.max(e.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(i,e){var s=this;o.each(e,function(e,t){s._renderItemData(i,t)})},_renderItemData:function(e,t){return this._renderItem(e,t).data("ui-autocomplete-item",t)},_renderItem:function(e,t){return o("<li>").append(o("<div>").text(t.label)).appendTo(e)},_move:function(e,t){this.menu.element.is(":visible")?this.menu.isFirstItem()&&/^previous/.test(e)||this.menu.isLastItem()&&/^next/.test(e)?(this.isMultiLine||this._value(this.term),this.menu.blur()):this.menu[e](t):this.search(null,t)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(e,t){this.isMultiLine&&!this.menu.element.is(":visible")||(this._move(e,t),t.preventDefault())},_isContentEditable:function(e){var t;return!!e.length&&("inherit"===(t=e.prop("contentEditable"))?this._isContentEditable(e.parent()):"true"===t)}}),o.extend(o.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(e,t){var i=new RegExp(o.ui.autocomplete.escapeRegex(t),"i");return o.grep(e,function(e){return i.test(e.label||e.value||e)})}}),o.widget("ui.autocomplete",o.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(e){return e+(1<e?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(e){var t;this._superApply(arguments),this.options.disabled||this.cancelSearch||(t=e&&e.length?this.options.messages.results(e.length):this.options.messages.noResults,clearTimeout(this.liveRegionTimer),this.liveRegionTimer=this._delay(function(){this.liveRegion.html(o("<div>").text(t))},100))}}),o.ui.autocomplete});
(function (factory){
if(typeof define==='function'&&define.amd){
define(['jquery'], factory);
}else if(typeof exports==='object'){
factory(require('jquery') );
}else{
factory(jQuery);
}}(function (jQuery){
var S2 =
(function (){
if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd){
var S2=jQuery.fn.select2.amd;
}
var S2;(function (){
if(! S2||! S2.requirejs){
if(! S2){
S2={};}else{
require=S2; }
var requirejs, require, define;
(function (undef){
var main, req, makeMap, handlers,
defined={},
waiting={},
config={},
defining={},
hasOwn=Object.prototype.hasOwnProperty,
aps=[].slice,
jsSuffixRegExp=/\.js$/;
function hasProp(obj, prop){
return hasOwn.call(obj, prop);
}
function normalize(name, baseName){
var nameParts, nameSegment, mapValue, foundMap, lastIndex,
foundI, foundStarMap, starI, i, j, part,
baseParts=baseName&&baseName.split("/"),
map=config.map,
starMap=(map&&map['*'])||{};
if(name&&name.charAt(0)==="."){
if(baseName){
baseParts=baseParts.slice(0, baseParts.length - 1);
name=name.split('/');
lastIndex=name.length - 1;
if(config.nodeIdCompat&&jsSuffixRegExp.test(name[lastIndex])){
name[lastIndex]=name[lastIndex].replace(jsSuffixRegExp, '');
}
name=baseParts.concat(name);
for (i=0; i < name.length; i +=1){
part=name[i];
if(part==="."){
name.splice(i, 1);
i -=1;
}else if(part===".."){
if(i===1&&(name[2]==='..'||name[0]==='..')){
break;
}else if(i > 0){
name.splice(i - 1, 2);
i -=2;
}}
}
name=name.join("/");
}else if(name.indexOf('./')===0){
name=name.substring(2);
}}
if((baseParts||starMap)&&map){
nameParts=name.split('/');
for (i=nameParts.length; i > 0; i -=1){
nameSegment=nameParts.slice(0, i).join("/");
if(baseParts){
for (j=baseParts.length; j > 0; j -=1){
mapValue=map[baseParts.slice(0, j).join('/')];
if(mapValue){
mapValue=mapValue[nameSegment];
if(mapValue){
foundMap=mapValue;
foundI=i;
break;
}}
}}
if(foundMap){
break;
}
if(! foundStarMap&&starMap&&starMap[nameSegment]){
foundStarMap=starMap[nameSegment];
starI=i;
}}
if(! foundMap&&foundStarMap){
foundMap=foundStarMap;
foundI=starI;
}
if(foundMap){
nameParts.splice(0, foundI, foundMap);
name=nameParts.join('/');
}}
return name;
}
function makeRequire(relName, forceSync){
return function (){
return req.apply(undef, aps.call(arguments, 0).concat([relName, forceSync]) );
};}
function makeNormalize(relName){
return function (name){
return normalize(name, relName);
};}
function makeLoad(depName){
return function (value){
defined[depName]=value;
};}
function callDep(name){
if(hasProp(waiting, name)){
var args=waiting[name];
delete waiting[name];
defining[name]=true;
main.apply(undef, args);
}
if(! hasProp(defined, name)&&! hasProp(defining, name)){
throw new Error('No ' + name);
}
return defined[name];
}
function splitPrefix(name){
var prefix,
index=name ? name.indexOf('!'):-1;
if(index > -1){
prefix=name.substring(0, index);
name=name.substring(index + 1, name.length);
}
return [prefix, name];
}
makeMap=function (name, relName){
var plugin,
parts=splitPrefix(name),
prefix=parts[0];
name=parts[1];
if(prefix){
prefix=normalize(prefix, relName);
plugin=callDep(prefix);
}
if(prefix){
if(plugin&&plugin.normalize){
name=plugin.normalize(name, makeNormalize(relName) );
}else{
name=normalize(name, relName);
}}else{
name=normalize(name, relName);
parts=splitPrefix(name);
prefix=parts[0];
name=parts[1];
if(prefix){
plugin=callDep(prefix);
}}
return {
f: prefix ? prefix + '!' + name:name,
n: name,
pr: prefix,
p: plugin
};};
function makeConfig(name){
return function (){
return (config&&config.config&&config.config[name])||{};};
}
handlers={
require: function (name){
return makeRequire(name);
},
exports: function (name){
var e=defined[name];
if(typeof e!=='undefined'){
return e;
}else{
return (defined[name]={});
}},
module: function (name){
return {
id: name,
uri: '',
exports: defined[name],
config: makeConfig(name)
};}};
main=function (name, deps, callback, relName){
var cjsModule, depName, ret, map, i,
args=[],
callbackType=typeof callback,
usingExports;
relName=relName||name;
if(callbackType==='undefined'||callbackType==='function'){
deps = ! deps.length&&callback.length ? ['require', 'exports', 'module']:deps;
for (i=0; i < deps.length; i +=1){
map=makeMap(deps[i], relName);
depName=map.f;
if(depName==="require"){
args[i]=handlers.require(name);
}else if(depName==="exports"){
args[i]=handlers.exports(name);
usingExports=true;
}else if(depName==="module"){
cjsModule=args[i]=handlers.module(name);
}else if(hasProp(defined, depName)
|| hasProp(waiting, depName)
|| hasProp(defining, depName)
){
args[i]=callDep(depName);
}else if(map.p){
map.p.load(map.n, makeRequire(relName, true), makeLoad(depName), {});
args[i]=defined[depName];
}else{
throw new Error(name + ' missing ' + depName);
}}
ret=callback ? callback.apply(defined[name], args):undefined;
if(name){
if(cjsModule&&cjsModule.exports!==undef
&& cjsModule.exports!==defined[name]
){
defined[name]=cjsModule.exports;
}else if(ret!==undef||! usingExports){
defined[name]=ret;
}}
}else if(name){
defined[name]=callback;
}};
requirejs=require=req=function (deps, callback, relName, forceSync, alt){
if(typeof deps==="string"){
if(handlers[deps]){
return handlers[deps](callback);
}
return callDep(makeMap(deps, callback).f);
}else if(! deps.splice){
config=deps;
if(config.deps){
req(config.deps, config.callback);
}
if(! callback){
return;
}
if(callback.splice){
deps=callback;
callback=relName;
relName=null;
}else{
deps=undef;
}}
callback=callback||function (){};
if(typeof relName==='function'){
relName=forceSync;
forceSync=alt;
}
if(forceSync){
main(undef, deps, callback, relName);
}else{
setTimeout(
function (){
main(undef, deps, callback, relName);
},
4
);
}
return req;
};
req.config=function (cfg){
return req(cfg);
};
requirejs._defined=defined;
define=function (name, deps, callback){
if(! deps.splice){
callback=deps;
deps=[];
}
if(! hasProp(defined, name)&&! hasProp(waiting, name)){
waiting[name]=[name, deps, callback];
}};
define.amd={
jQuery: true
};}());
S2.requirejs=requirejs;S2.require=require;S2.define=define;
}}());
S2.define("almond", function (){});
S2.define('jquery',
[],
function (){
var _$=jQuery||$;
if(_$==null&&console&&console.error){
console.error('Select2: An instance of jQuery or a jQuery-compatible library was not ' +
'found. Make sure that you are including jQuery before Select2 on your ' +
'web page.'
);
}
return _$;
}
);
S2.define('select2/utils',
[
'jquery'
],
function ($){
var Utils={};
Utils.Extend=function (ChildClass, SuperClass){
var __hasProp={}.hasOwnProperty;
function BaseConstructor(){
this.constructor=ChildClass;
}
for (var key in SuperClass){
if(__hasProp.call(SuperClass, key)){
ChildClass[key]=SuperClass[key];
}}
BaseConstructor.prototype=SuperClass.prototype;
ChildClass.prototype=new BaseConstructor();
ChildClass.__super__=SuperClass.prototype;
return ChildClass;
};
function getMethods(theClass){
var proto=theClass.prototype;
var methods=[];
for (var methodName in proto){
var m=proto[methodName];
if(typeof m!=='function'){
continue;
}
if(methodName==='constructor'){
continue;
}
methods.push(methodName);
}
return methods;
}
Utils.Decorate=function (SuperClass, DecoratorClass){
var decoratedMethods=getMethods(DecoratorClass);
var superMethods=getMethods(SuperClass);
function DecoratedClass(){
var unshift=Array.prototype.unshift;
var argCount=DecoratorClass.prototype.constructor.length;
var calledConstructor=SuperClass.prototype.constructor;
if(argCount > 0){
unshift.call(arguments, SuperClass.prototype.constructor);
calledConstructor=DecoratorClass.prototype.constructor;
}
calledConstructor.apply(this, arguments);
}
DecoratorClass.displayName=SuperClass.displayName;
function ctr(){
this.constructor=DecoratedClass;
}
DecoratedClass.prototype=new ctr();
for (var m=0; m < superMethods.length; m++){
var superMethod=superMethods[m];
DecoratedClass.prototype[superMethod] =
SuperClass.prototype[superMethod];
}
var calledMethod=function (methodName){
var originalMethod=function (){};
if(methodName in DecoratedClass.prototype){
originalMethod=DecoratedClass.prototype[methodName];
}
var decoratedMethod=DecoratorClass.prototype[methodName];
return function (){
var unshift=Array.prototype.unshift;
unshift.call(arguments, originalMethod);
return decoratedMethod.apply(this, arguments);
};};
for (var d=0; d < decoratedMethods.length; d++){
var decoratedMethod=decoratedMethods[d];
DecoratedClass.prototype[decoratedMethod]=calledMethod(decoratedMethod);
}
return DecoratedClass;
};
var Observable=function (){
this.listeners={};};
Observable.prototype.on=function (event, callback){
this.listeners=this.listeners||{};
if(event in this.listeners){
this.listeners[event].push(callback);
}else{
this.listeners[event]=[callback];
}};
Observable.prototype.trigger=function (event){
var slice=Array.prototype.slice;
this.listeners=this.listeners||{};
if(event in this.listeners){
this.invoke(this.listeners[event], slice.call(arguments, 1) );
}
if('*' in this.listeners){
this.invoke(this.listeners['*'], arguments);
}};
Observable.prototype.invoke=function (listeners, params){
for (var i=0, len=listeners.length; i < len; i++){
listeners[i].apply(this, params);
}};
Utils.Observable=Observable;
Utils.generateChars=function (length){
var chars='';
for (var i=0; i < length; i++){
var randomChar=Math.floor(Math.random() * 36);
chars         +=randomChar.toString(36);
}
return chars;
};
Utils.bind=function (func, context){
return function (){
func.apply(context, arguments);
};};
Utils._convertData=function (data){
for (var originalKey in data){
var keys=originalKey.split('-');
var dataLevel=data;
if(keys.length===1){
continue;
}
for (var k=0; k < keys.length; k++){
var key=keys[k];
key=key.substring(0, 1).toLowerCase() + key.substring(1);
if(! (key in dataLevel)){
dataLevel[key]={};}
if(k==keys.length - 1){
dataLevel[key]=data[originalKey];
}
dataLevel=dataLevel[key];
}
delete data[originalKey];
}
return data;
};
Utils.hasScroll=function (index, el){
var $el=$(el);
var overflowX=el.style.overflowX;
var overflowY=el.style.overflowY;
if(overflowX===overflowY
&& (overflowY==='hidden'||overflowY==='visible')
){
return false;
}
if(overflowX==='scroll'||overflowY==='scroll'){
return true;
}
return ($el.innerHeight() < el.scrollHeight ||
$el.innerWidth() < el.scrollWidth);
};
Utils.escapeMarkup=function (markup){
var replaceMap={
'\\': '&#92;',
'&': '&amp;',
'<': '&lt;',
'>': '&gt;',
'"': '&quot;',
'\'': '&#39;',
'/': '&#47;'
};
if(typeof markup!=='string'){
return markup;
}
return String(markup).replace(/[&<>"'\/\\]/g,
function (match){
return replaceMap[match];
}
);
};
Utils.appendMany=function ($element, $nodes){
if($.fn.jquery.substr(0, 3)==='1.7'){
var $jqNodes=$();
$.map($nodes,
function (node){
$jqNodes=$jqNodes.add(node);
}
);
$nodes=$jqNodes;
}
$element.append($nodes);
};
return Utils;
}
);
S2.define('select2/results',
[
'jquery',
'./utils'
],
function ($, Utils){
function Results($element, options, dataAdapter){
this.$element=$element;
this.data=dataAdapter;
this.options=options;
Results.__super__.constructor.call(this);
}
Utils.Extend(Results, Utils.Observable);
Results.prototype.render=function (){
var $results=$(
'<ul class="select2-results__options" role="tree"></ul>'
);
if(this.options.get('multiple')){
$results.attr('aria-multiselectable', 'true');
}
this.$results=$results;
return $results;
};
Results.prototype.clear=function (){
this.$results.empty();
};
Results.prototype.displayMessage=function (params){
var escapeMarkup=this.options.get('escapeMarkup');
this.clear();
this.hideLoading();
var $message=$(
'<li role="treeitem" class="select2-results__option"></li>'
);
var message=this.options.get('translations').get(params.message);
$message.append(escapeMarkup(
message(params.args)
)
);
this.$results.append($message);
};
Results.prototype.append=function (data){
this.hideLoading();
var $options=[];
if(data.results==null||data.results.length===0){
if(this.$results.children().length===0){
this.trigger('results:message',
{
message: 'noResults'
}
);
}
return;
}
data.results=this.sort(data.results);
for (var d=0; d < data.results.length; d++){
var item=data.results[d];
var $option=this.option(item);
$options.push($option);
}
this.$results.append($options);
};
Results.prototype.position=function ($results, $dropdown){
var $resultsContainer=$dropdown.find('.select2-results');
$resultsContainer.append($results);
};
Results.prototype.sort=function (data){
var sorter=this.options.get('sorter');
return sorter(data);
};
Results.prototype.setClasses=function (){
var self=this;
this.data.current(function (selected){
var selectedIds=$.map(selected,
function (s){
return s.id.toString();
}
);
var $options=self.$results
.find('.select2-results__option[aria-selected]');
$options.each(function (){
var $option=$(this);
var item=$.data(this, 'data');
var id='' + item.id;
if((item.element!=null&&item.element.selected)
|| (item.element==null&&$.inArray(id, selectedIds) > -1)
){
$option.attr('aria-selected', 'true');
}else{
$option.attr('aria-selected', 'false');
}}
);
var $selected=$options.filter('[aria-selected=true]');
if($selected.length > 0){
$selected.first().trigger('mouseenter');
}else{
$options.first().trigger('mouseenter');
}}
);
};
Results.prototype.showLoading=function (params){
this.hideLoading();
var loadingMore=this.options.get('translations').get('searching');
var loading={
disabled: true,
loading: true,
text: loadingMore(params)
};
var $loading=this.option(loading);
$loading.className +=' loading-results';
this.$results.prepend($loading);
};
Results.prototype.hideLoading=function (){
this.$results.find('.loading-results').remove();
};
Results.prototype.option=function (data){
var option=document.createElement('li');
option.className='select2-results__option';
var attrs={
'role': 'treeitem',
'aria-selected': 'false'
};
if(data.disabled){
delete attrs['aria-selected'];
attrs['aria-disabled']='true';
}
if(data.id==null){
delete attrs['aria-selected'];
}
if(data._resultId!=null){
option.id=data._resultId;
}
if(data.title){
option.title=data.title;
}
if(data.children){
attrs.role='group';
attrs['aria-label']=data.text;
delete attrs['aria-selected'];
}
for (var attr in attrs){
var val=attrs[attr];
option.setAttribute(attr, val);
}
if(data.children){
var $option=$(option);
var label=document.createElement('strong');
label.className='select2-results__group';
var $label=$(label);
this.template(data, label);
var $children=[];
for (var c=0; c < data.children.length; c++){
var child=data.children[c];
var $child=this.option(child);
$children.push($child);
}
var $childrenContainer=$(
'<ul></ul>',
{
'class': 'select2-results__options select2-results__options--nested'
}
);
$childrenContainer.append($children);
$option.append(label);
$option.append($childrenContainer);
}else{
this.template(data, option);
}
$.data(option, 'data', data);
return option;
};
Results.prototype.bind=function (container, $container){
var self=this;
var id=container.id + '-results';
this.$results.attr('id', id);
container.on('results:all',
function (params){
self.clear();
self.append(params.data);
if(container.isOpen()){
self.setClasses();
}}
);
container.on('results:append',
function (params){
self.append(params.data);
if(container.isOpen()){
self.setClasses();
}}
);
container.on('query',
function (params){
self.showLoading(params);
}
);
container.on('select',
function (){
if(! container.isOpen()){
return;
}
self.setClasses();
}
);
container.on('unselect',
function (){
if(! container.isOpen()){
return;
}
self.setClasses();
}
);
container.on('open',
function (){
self.$results.attr('aria-expanded', 'true');
self.$results.attr('aria-hidden', 'false');
self.setClasses();
self.ensureHighlightVisible();
}
);
container.on('close',
function (){
self.$results.attr('aria-expanded', 'false');
self.$results.attr('aria-hidden', 'true');
self.$results.removeAttr('aria-activedescendant');
}
);
container.on('results:toggle',
function (){
var $highlighted=self.getHighlightedResults();
if($highlighted.length===0){
return;
}
$highlighted.trigger('mouseup');
}
);
container.on('results:select',
function (){
var $highlighted=self.getHighlightedResults();
if($highlighted.length===0){
return;
}
var data=$highlighted.data('data');
if($highlighted.attr('aria-selected')=='true'){
self.trigger('close');
}else{
self.trigger('select',
{
data: data
}
);
}}
);
container.on('results:previous',
function (){
var $highlighted=self.getHighlightedResults();
var $options=self.$results.find('[aria-selected]');
var currentIndex=$options.index($highlighted);
if(currentIndex===0){
return;
}
var nextIndex=currentIndex - 1;
if($highlighted.length===0){
nextIndex=0;
}
var $next=$options.eq(nextIndex);
$next.trigger('mouseenter');
var currentOffset=self.$results.offset().top;
var nextTop=$next.offset().top;
var nextOffset=self.$results.scrollTop() + (nextTop - currentOffset);
if(nextIndex===0){
self.$results.scrollTop(0);
}else if(nextTop - currentOffset < 0){
self.$results.scrollTop(nextOffset);
}}
);
container.on('results:next',
function (){
var $highlighted=self.getHighlightedResults();
var $options=self.$results.find('[aria-selected]');
var currentIndex=$options.index($highlighted);
var nextIndex=currentIndex + 1;
if(nextIndex >=$options.length){
return;
}
var $next=$options.eq(nextIndex);
$next.trigger('mouseenter');
var currentOffset=self.$results.offset().top +
self.$results.outerHeight(false);
var nextBottom=$next.offset().top + $next.outerHeight(false);
var nextOffset=self.$results.scrollTop() + nextBottom - currentOffset;
if(nextIndex===0){
self.$results.scrollTop(0);
}else if(nextBottom > currentOffset){
self.$results.scrollTop(nextOffset);
}}
);
container.on('results:focus',
function (params){
params.element.addClass('select2-results__option--highlighted');
}
);
container.on('results:message',
function (params){
self.displayMessage(params);
}
);
if($.fn.mousewheel){
this.$results.on('mousewheel',
function (e){
var top=self.$results.scrollTop();
var bottom=(
self.$results.get(0).scrollHeight -
self.$results.scrollTop() +
e.deltaY
);
var isAtTop=e.deltaY > 0&&top - e.deltaY <=0;
var isAtBottom=e.deltaY < 0&&bottom <=self.$results.height();
if(isAtTop){
self.$results.scrollTop(0);
e.preventDefault();
e.stopPropagation();
}else if(isAtBottom){
self.$results.scrollTop(self.$results.get(0).scrollHeight - self.$results.height()
);
e.preventDefault();
e.stopPropagation();
}}
);
}
this.$results.on('mouseup',
'.select2-results__option[aria-selected]',
function (evt){
var $this=$(this);
var data=$this.data('data');
if($this.attr('aria-selected')==='true'){
if(self.options.get('multiple')){
self.trigger('unselect',
{
originalEvent: evt,
data: data
}
);
}else{
self.trigger('close');
}
return;
}
self.trigger('select',
{
originalEvent: evt,
data: data
}
);
}
);
this.$results.on('mouseenter',
'.select2-results__option[aria-selected]',
function (evt){
var data=$(this).data('data');
self.getHighlightedResults()
.removeClass('select2-results__option--highlighted');
self.trigger('results:focus',
{
data: data,
element: $(this)
}
);
}
);
};
Results.prototype.getHighlightedResults=function (){
var $highlighted=this.$results
.find('.select2-results__option--highlighted');
return $highlighted;
};
Results.prototype.destroy=function (){
this.$results.remove();
};
Results.prototype.ensureHighlightVisible=function (){
var $highlighted=this.getHighlightedResults();
if($highlighted.length===0){
return;
}
var $options=this.$results.find('[aria-selected]');
var currentIndex=$options.index($highlighted);
var currentOffset=this.$results.offset().top;
var nextTop=$highlighted.offset().top;
var nextOffset=this.$results.scrollTop() + (nextTop - currentOffset);
var offsetDelta=nextTop - currentOffset;
nextOffset     -=$highlighted.outerHeight(false) * 2;
if(currentIndex <=2){
this.$results.scrollTop(0);
}else if(offsetDelta > this.$results.outerHeight()||offsetDelta < 0){
this.$results.scrollTop(nextOffset);
}};
Results.prototype.template=function (result, container){
var template=this.options.get('templateResult');
var escapeMarkup=this.options.get('escapeMarkup');
var content=template(result);
if(content==null){
container.style.display='none';
}else if(typeof content==='string'){
container.innerHTML=escapeMarkup(content);
}else{
$(container).append(content);
}};
return Results;
}
);
S2.define('select2/keys',
[
],
function (){
var KEYS={
BACKSPACE: 8,
TAB: 9,
ENTER: 13,
SHIFT: 16,
CTRL: 17,
ALT: 18,
ESC: 27,
SPACE: 32,
PAGE_UP: 33,
PAGE_DOWN: 34,
END: 35,
HOME: 36,
LEFT: 37,
UP: 38,
RIGHT: 39,
DOWN: 40,
DELETE: 46
};
return KEYS;
}
);
S2.define('select2/selection/base',
[
'jquery',
'../utils',
'../keys'
],
function ($, Utils, KEYS){
function BaseSelection($element, options){
this.$element=$element;
this.options=options;
BaseSelection.__super__.constructor.call(this);
}
Utils.Extend(BaseSelection, Utils.Observable);
BaseSelection.prototype.render=function (){
var $selection=$(
'<span class="select2-selection" role="combobox" ' +
'aria-autocomplete="list" aria-haspopup="true" aria-expanded="false">' +
'</span>'
);
this._tabindex=0;
if(this.$element.data('old-tabindex')!=null){
this._tabindex=this.$element.data('old-tabindex');
}else if(this.$element.attr('tabindex')!=null){
this._tabindex=this.$element.attr('tabindex');
}
$selection.attr('title', this.$element.attr('title') );
$selection.attr('tabindex', this._tabindex);
this.$selection=$selection;
return $selection;
};
BaseSelection.prototype.bind=function (container, $container){
var self=this;
var id=container.id + '-container';
var resultsId=container.id + '-results';
this.container=container;
this.$selection.on('focus',
function (evt){
self.trigger('focus', evt);
}
);
this.$selection.on('blur',
function (evt){
self.trigger('blur', evt);
}
);
this.$selection.on('keydown',
function (evt){
self.trigger('keypress', evt);
if(evt.which===KEYS.SPACE){
evt.preventDefault();
}}
);
container.on('results:focus',
function (params){
self.$selection.attr('aria-activedescendant', params.data._resultId);
}
);
container.on('selection:update',
function (params){
self.update(params.data);
}
);
container.on('open',
function (){
self.$selection.attr('aria-expanded', 'true');
self.$selection.attr('aria-owns', resultsId);
self._attachCloseHandler(container);
}
);
container.on('close',
function (){
self.$selection.attr('aria-expanded', 'false');
self.$selection.removeAttr('aria-activedescendant');
self.$selection.removeAttr('aria-owns');
self.$selection.focus();
self._detachCloseHandler(container);
}
);
container.on('enable',
function (){
self.$selection.attr('tabindex', self._tabindex);
}
);
container.on('disable',
function (){
self.$selection.attr('tabindex', '-1');
}
);
};
BaseSelection.prototype._attachCloseHandler=function (container){
var self=this;
$(document.body).on('mousedown.select2.' + container.id,
function (e){
var $target=$(e.target);
var $select=$target.closest('.select2');
var $all=$('.select2.select2-container--open');
$all.each(function (){
var $this=$(this);
if(this==$select[0]){
return;
}
var $element=$this.data('element');
$element.select2('close');
}
);
}
);
};
BaseSelection.prototype._detachCloseHandler=function (container){
$(document.body).off('mousedown.select2.' + container.id);
};
BaseSelection.prototype.position=function ($selection, $container){
var $selectionContainer=$container.find('.selection');
$selectionContainer.append($selection);
};
BaseSelection.prototype.destroy=function (){
this._detachCloseHandler(this.container);
};
BaseSelection.prototype.update=function (data){
throw new Error('The `update` method must be defined in child classes.');
};
return BaseSelection;
}
);
S2.define('select2/selection/single',
[
'jquery',
'./base',
'../utils',
'../keys'
],
function ($, BaseSelection, Utils, KEYS){
function SingleSelection(){
SingleSelection.__super__.constructor.apply(this, arguments);
}
Utils.Extend(SingleSelection, BaseSelection);
SingleSelection.prototype.render=function (){
var $selection=SingleSelection.__super__.render.call(this);
$selection.addClass('select2-selection--single');
$selection.html('<span class="select2-selection__rendered"></span>' +
'<span class="select2-selection__arrow" role="presentation">' +
'<b role="presentation"></b>' +
'</span>'
);
return $selection;
};
SingleSelection.prototype.bind=function (container, $container){
var self=this;
SingleSelection.__super__.bind.apply(this, arguments);
var id=container.id + '-container';
this.$selection.find('.select2-selection__rendered').attr('id', id);
this.$selection.attr('aria-labelledby', id);
this.$selection.on('mousedown',
function (evt){
if(evt.which!==1){
return;
}
self.trigger('toggle',
{
originalEvent: evt
}
);
}
);
this.$selection.on('focus',
function (evt){
}
);
this.$selection.on('blur',
function (evt){
}
);
container.on('selection:update',
function (params){
self.update(params.data);
}
);
};
SingleSelection.prototype.clear=function (){
this.$selection.find('.select2-selection__rendered').empty();
};
SingleSelection.prototype.display=function (data){
var template=this.options.get('templateSelection');
var escapeMarkup=this.options.get('escapeMarkup');
return escapeMarkup(template(data) );
};
SingleSelection.prototype.selectionContainer=function (){
return $('<span></span>');
};
SingleSelection.prototype.update=function (data){
if(data.length===0){
this.clear();
return;
}
var selection=data[0];
var formatted=this.display(selection);
var $rendered=this.$selection.find('.select2-selection__rendered');
$rendered.empty().append(formatted);
$rendered.prop('title', selection.title||selection.text);
};
return SingleSelection;
}
);
S2.define('select2/selection/multiple',
[
'jquery',
'./base',
'../utils'
],
function ($, BaseSelection, Utils){
function MultipleSelection($element, options){
MultipleSelection.__super__.constructor.apply(this, arguments);
}
Utils.Extend(MultipleSelection, BaseSelection);
MultipleSelection.prototype.render=function (){
var $selection=MultipleSelection.__super__.render.call(this);
$selection.addClass('select2-selection--multiple');
$selection.html('<ul class="select2-selection__rendered"></ul>'
);
return $selection;
};
MultipleSelection.prototype.bind=function (container, $container){
var self=this;
MultipleSelection.__super__.bind.apply(this, arguments);
this.$selection.on('click',
function (evt){
self.trigger('toggle',
{
originalEvent: evt
}
);
}
);
this.$selection.on('click',
'.select2-selection__choice__remove',
function (evt){
var $remove=$(this);
var $selection=$remove.parent();
var data=$selection.data('data');
self.trigger('unselect',
{
originalEvent: evt,
data: data
}
);
}
);
};
MultipleSelection.prototype.clear=function (){
this.$selection.find('.select2-selection__rendered').empty();
};
MultipleSelection.prototype.display=function (data){
var template=this.options.get('templateSelection');
var escapeMarkup=this.options.get('escapeMarkup');
return escapeMarkup(template(data) );
};
MultipleSelection.prototype.selectionContainer=function (){
var $container=$(
'<li class="select2-selection__choice">' +
'<span class="select2-selection__choice__remove" role="presentation">' +
'&times;' +
'</span>' +
'</li>'
);
return $container;
};
MultipleSelection.prototype.update=function (data){
this.clear();
if(data.length===0){
return;
}
var $selections=[];
for (var d=0; d < data.length; d++){
var selection=data[d];
var formatted=this.display(selection);
var $selection=this.selectionContainer();
$selection.append(formatted);
$selection.prop('title', selection.title||selection.text);
$selection.data('data', selection);
$selections.push($selection);
}
var $rendered=this.$selection.find('.select2-selection__rendered');
Utils.appendMany($rendered, $selections);
};
return MultipleSelection;
}
);
S2.define('select2/selection/placeholder',
[
'../utils'
],
function (Utils){
function Placeholder(decorated, $element, options){
this.placeholder=this.normalizePlaceholder(options.get('placeholder') );
decorated.call(this, $element, options);
}
Placeholder.prototype.normalizePlaceholder=function (_, placeholder){
if(typeof placeholder==='string'){
placeholder={
id: '',
text: placeholder
};}
return placeholder;
};
Placeholder.prototype.createPlaceholder=function (decorated, placeholder){
var $placeholder=this.selectionContainer();
$placeholder.html(this.display(placeholder) );
$placeholder.addClass('select2-selection__placeholder')
.removeClass('select2-selection__choice');
return $placeholder;
};
Placeholder.prototype.update=function (decorated, data){
var singlePlaceholder=(
data.length==1&&data[0].id!=this.placeholder.id
);
var multipleSelections=data.length > 1;
if(multipleSelections||singlePlaceholder){
return decorated.call(this, data);
}
this.clear();
var $placeholder=this.createPlaceholder(this.placeholder);
this.$selection.find('.select2-selection__rendered').append($placeholder);
};
return Placeholder;
}
);
S2.define('select2/selection/allowClear',
[
'jquery',
'../keys'
],
function ($, KEYS){
function AllowClear(){ }
AllowClear.prototype.bind=function (decorated, container, $container){
var self=this;
decorated.call(this, container, $container);
if(this.placeholder==null){
if(this.options.get('debug')&&window.console&&console.error){
console.error('Select2: The `allowClear` option should be used in combination ' +
'with the `placeholder` option.'
);
}}
this.$selection.on('mousedown',
'.select2-selection__clear',
function (evt){
self._handleClear(evt);
}
);
container.on('keypress',
function (evt){
self._handleKeyboardClear(evt, container);
}
);
};
AllowClear.prototype._handleClear=function (_, evt){
if(this.options.get('disabled')){
return;
}
var $clear=this.$selection.find('.select2-selection__clear');
if($clear.length===0){
return;
}
evt.stopPropagation();
var data=$clear.data('data');
for (var d=0; d < data.length; d++){
var unselectData={
data: data[d]
};
this.trigger('unselect', unselectData);
if(unselectData.prevented){
return;
}}
this.$element.val(this.placeholder.id).trigger('change');
this.trigger('toggle');
};
AllowClear.prototype._handleKeyboardClear=function (_, evt, container){
if(container.isOpen()){
return;
}
if(evt.which==KEYS.DELETE||evt.which==KEYS.BACKSPACE){
this._handleClear(evt);
}};
AllowClear.prototype.update=function (decorated, data){
decorated.call(this, data);
if(this.$selection.find('.select2-selection__placeholder').length > 0
|| data.length===0
){
return;
}
var $remove=$(
'<span class="select2-selection__clear">' +
'&times;' +
'</span>'
);
$remove.data('data', data);
this.$selection.find('.select2-selection__rendered').prepend($remove);
};
return AllowClear;
}
);
S2.define('select2/selection/search',
[
'jquery',
'../utils',
'../keys'
],
function ($, Utils, KEYS){
function Search(decorated, $element, options){
decorated.call(this, $element, options);
}
Search.prototype.render=function (decorated){
var $search=$(
'<li class="select2-search select2-search--inline">' +
'<input class="select2-search__field" type="search" tabindex="-1"' +
' autocomplete="off" autocorrect="off" autocapitalize="off"' +
' spellcheck="false" role="textbox" />' +
'</li>'
);
this.$searchContainer=$search;
this.$search=$search.find('input');
var $rendered=decorated.call(this);
return $rendered;
};
Search.prototype.bind=function (decorated, container, $container){
var self=this;
decorated.call(this, container, $container);
container.on('open',
function (){
self.$search.attr('tabindex', 0);
self.$search.focus();
}
);
container.on('close',
function (){
self.$search.attr('tabindex', -1);
self.$search.val('');
self.$search.focus();
}
);
container.on('enable',
function (){
self.$search.prop('disabled', false);
}
);
container.on('disable',
function (){
self.$search.prop('disabled', true);
}
);
this.$selection.on('focusin',
'.select2-search--inline',
function (evt){
self.trigger('focus', evt);
}
);
this.$selection.on('focusout',
'.select2-search--inline',
function (evt){
self.trigger('blur', evt);
}
);
this.$selection.on('keydown',
'.select2-search--inline',
function (evt){
evt.stopPropagation();
self.trigger('keypress', evt);
self._keyUpPrevented=evt.isDefaultPrevented();
var key=evt.which;
if(key===KEYS.BACKSPACE&&self.$search.val()===''){
var $previousChoice=self.$searchContainer
.prev('.select2-selection__choice');
if($previousChoice.length > 0){
var item=$previousChoice.data('data');
self.searchRemoveChoice(item);
evt.preventDefault();
}}
}
);
this.$selection.on('input',
'.select2-search--inline',
function (evt){
self.$selection.off('keyup.search');
}
);
this.$selection.on('keyup.search input',
'.select2-search--inline',
function (evt){
self.handleSearch(evt);
}
);
};
Search.prototype.createPlaceholder=function (decorated, placeholder){
this.$search.attr('placeholder', placeholder.text);
};
Search.prototype.update=function (decorated, data){
this.$search.attr('placeholder', '');
decorated.call(this, data);
this.$selection.find('.select2-selection__rendered')
.append(this.$searchContainer);
this.resizeSearch();
};
Search.prototype.handleSearch=function (){
this.resizeSearch();
if(! this._keyUpPrevented){
var input=this.$search.val();
this.trigger('query',
{
term: input
}
);
}
this._keyUpPrevented=false;
};
Search.prototype.searchRemoveChoice=function (decorated, item){
this.trigger('unselect',
{
data: item
}
);
this.trigger('open');
this.$search.val(item.text + ' ');
};
Search.prototype.resizeSearch=function (){
this.$search.css('width', '25px');
var width='';
if(this.$search.attr('placeholder')!==''){
width=this.$selection.find('.select2-selection__rendered').innerWidth();
}else{
var minimumWidth=this.$search.val().length + 1;
width=(minimumWidth * 0.75) + 'em';
}
this.$search.css('width', width);
};
return Search;
}
);
S2.define('select2/selection/eventRelay',
[
'jquery'
],
function ($){
function EventRelay(){ }
EventRelay.prototype.bind=function (decorated, container, $container){
var self=this;
var relayEvents=[
'open', 'opening',
'close', 'closing',
'select', 'selecting',
'unselect', 'unselecting'
];
var preventableEvents=['opening', 'closing', 'selecting', 'unselecting'];
decorated.call(this, container, $container);
container.on('*',
function (name, params){
if($.inArray(name, relayEvents)===-1){
return;
}
params=params||{};
var evt=$.Event('select2:' + name,
{
params: params
}
);
self.$element.trigger(evt);
if($.inArray(name, preventableEvents)===-1){
return;
}
params.prevented=evt.isDefaultPrevented();
}
);
};
return EventRelay;
}
);
S2.define('select2/translation',
[
'jquery',
'require'
],
function ($, require){
function Translation(dict){
this.dict=dict||{};}
Translation.prototype.all=function (){
return this.dict;
};
Translation.prototype.get=function (key){
return this.dict[key];
};
Translation.prototype.extend=function (translation){
this.dict=$.extend({}, translation.all(), this.dict);
};
Translation._cache={};
Translation.loadPath=function (path){
if(! (path in Translation._cache)){
var translations=require(path);
Translation._cache[path]=translations;
}
return new Translation(Translation._cache[path]);
};
return Translation;
}
);
S2.define('select2/diacritics',
[
],
function (){
var diacritics={
'\u24B6': 'A',
'\uFF21': 'A',
'\u00C0': 'A',
'\u00C1': 'A',
'\u00C2': 'A',
'\u1EA6': 'A',
'\u1EA4': 'A',
'\u1EAA': 'A',
'\u1EA8': 'A',
'\u00C3': 'A',
'\u0100': 'A',
'\u0102': 'A',
'\u1EB0': 'A',
'\u1EAE': 'A',
'\u1EB4': 'A',
'\u1EB2': 'A',
'\u0226': 'A',
'\u01E0': 'A',
'\u00C4': 'A',
'\u01DE': 'A',
'\u1EA2': 'A',
'\u00C5': 'A',
'\u01FA': 'A',
'\u01CD': 'A',
'\u0200': 'A',
'\u0202': 'A',
'\u1EA0': 'A',
'\u1EAC': 'A',
'\u1EB6': 'A',
'\u1E00': 'A',
'\u0104': 'A',
'\u023A': 'A',
'\u2C6F': 'A',
'\uA732': 'AA',
'\u00C6': 'AE',
'\u01FC': 'AE',
'\u01E2': 'AE',
'\uA734': 'AO',
'\uA736': 'AU',
'\uA738': 'AV',
'\uA73A': 'AV',
'\uA73C': 'AY',
'\u24B7': 'B',
'\uFF22': 'B',
'\u1E02': 'B',
'\u1E04': 'B',
'\u1E06': 'B',
'\u0243': 'B',
'\u0182': 'B',
'\u0181': 'B',
'\u24B8': 'C',
'\uFF23': 'C',
'\u0106': 'C',
'\u0108': 'C',
'\u010A': 'C',
'\u010C': 'C',
'\u00C7': 'C',
'\u1E08': 'C',
'\u0187': 'C',
'\u023B': 'C',
'\uA73E': 'C',
'\u24B9': 'D',
'\uFF24': 'D',
'\u1E0A': 'D',
'\u010E': 'D',
'\u1E0C': 'D',
'\u1E10': 'D',
'\u1E12': 'D',
'\u1E0E': 'D',
'\u0110': 'D',
'\u018B': 'D',
'\u018A': 'D',
'\u0189': 'D',
'\uA779': 'D',
'\u01F1': 'DZ',
'\u01C4': 'DZ',
'\u01F2': 'Dz',
'\u01C5': 'Dz',
'\u24BA': 'E',
'\uFF25': 'E',
'\u00C8': 'E',
'\u00C9': 'E',
'\u00CA': 'E',
'\u1EC0': 'E',
'\u1EBE': 'E',
'\u1EC4': 'E',
'\u1EC2': 'E',
'\u1EBC': 'E',
'\u0112': 'E',
'\u1E14': 'E',
'\u1E16': 'E',
'\u0114': 'E',
'\u0116': 'E',
'\u00CB': 'E',
'\u1EBA': 'E',
'\u011A': 'E',
'\u0204': 'E',
'\u0206': 'E',
'\u1EB8': 'E',
'\u1EC6': 'E',
'\u0228': 'E',
'\u1E1C': 'E',
'\u0118': 'E',
'\u1E18': 'E',
'\u1E1A': 'E',
'\u0190': 'E',
'\u018E': 'E',
'\u24BB': 'F',
'\uFF26': 'F',
'\u1E1E': 'F',
'\u0191': 'F',
'\uA77B': 'F',
'\u24BC': 'G',
'\uFF27': 'G',
'\u01F4': 'G',
'\u011C': 'G',
'\u1E20': 'G',
'\u011E': 'G',
'\u0120': 'G',
'\u01E6': 'G',
'\u0122': 'G',
'\u01E4': 'G',
'\u0193': 'G',
'\uA7A0': 'G',
'\uA77D': 'G',
'\uA77E': 'G',
'\u24BD': 'H',
'\uFF28': 'H',
'\u0124': 'H',
'\u1E22': 'H',
'\u1E26': 'H',
'\u021E': 'H',
'\u1E24': 'H',
'\u1E28': 'H',
'\u1E2A': 'H',
'\u0126': 'H',
'\u2C67': 'H',
'\u2C75': 'H',
'\uA78D': 'H',
'\u24BE': 'I',
'\uFF29': 'I',
'\u00CC': 'I',
'\u00CD': 'I',
'\u00CE': 'I',
'\u0128': 'I',
'\u012A': 'I',
'\u012C': 'I',
'\u0130': 'I',
'\u00CF': 'I',
'\u1E2E': 'I',
'\u1EC8': 'I',
'\u01CF': 'I',
'\u0208': 'I',
'\u020A': 'I',
'\u1ECA': 'I',
'\u012E': 'I',
'\u1E2C': 'I',
'\u0197': 'I',
'\u24BF': 'J',
'\uFF2A': 'J',
'\u0134': 'J',
'\u0248': 'J',
'\u24C0': 'K',
'\uFF2B': 'K',
'\u1E30': 'K',
'\u01E8': 'K',
'\u1E32': 'K',
'\u0136': 'K',
'\u1E34': 'K',
'\u0198': 'K',
'\u2C69': 'K',
'\uA740': 'K',
'\uA742': 'K',
'\uA744': 'K',
'\uA7A2': 'K',
'\u24C1': 'L',
'\uFF2C': 'L',
'\u013F': 'L',
'\u0139': 'L',
'\u013D': 'L',
'\u1E36': 'L',
'\u1E38': 'L',
'\u013B': 'L',
'\u1E3C': 'L',
'\u1E3A': 'L',
'\u0141': 'L',
'\u023D': 'L',
'\u2C62': 'L',
'\u2C60': 'L',
'\uA748': 'L',
'\uA746': 'L',
'\uA780': 'L',
'\u01C7': 'LJ',
'\u01C8': 'Lj',
'\u24C2': 'M',
'\uFF2D': 'M',
'\u1E3E': 'M',
'\u1E40': 'M',
'\u1E42': 'M',
'\u2C6E': 'M',
'\u019C': 'M',
'\u24C3': 'N',
'\uFF2E': 'N',
'\u01F8': 'N',
'\u0143': 'N',
'\u00D1': 'N',
'\u1E44': 'N',
'\u0147': 'N',
'\u1E46': 'N',
'\u0145': 'N',
'\u1E4A': 'N',
'\u1E48': 'N',
'\u0220': 'N',
'\u019D': 'N',
'\uA790': 'N',
'\uA7A4': 'N',
'\u01CA': 'NJ',
'\u01CB': 'Nj',
'\u24C4': 'O',
'\uFF2F': 'O',
'\u00D2': 'O',
'\u00D3': 'O',
'\u00D4': 'O',
'\u1ED2': 'O',
'\u1ED0': 'O',
'\u1ED6': 'O',
'\u1ED4': 'O',
'\u00D5': 'O',
'\u1E4C': 'O',
'\u022C': 'O',
'\u1E4E': 'O',
'\u014C': 'O',
'\u1E50': 'O',
'\u1E52': 'O',
'\u014E': 'O',
'\u022E': 'O',
'\u0230': 'O',
'\u00D6': 'O',
'\u022A': 'O',
'\u1ECE': 'O',
'\u0150': 'O',
'\u01D1': 'O',
'\u020C': 'O',
'\u020E': 'O',
'\u01A0': 'O',
'\u1EDC': 'O',
'\u1EDA': 'O',
'\u1EE0': 'O',
'\u1EDE': 'O',
'\u1EE2': 'O',
'\u1ECC': 'O',
'\u1ED8': 'O',
'\u01EA': 'O',
'\u01EC': 'O',
'\u00D8': 'O',
'\u01FE': 'O',
'\u0186': 'O',
'\u019F': 'O',
'\uA74A': 'O',
'\uA74C': 'O',
'\u01A2': 'OI',
'\uA74E': 'OO',
'\u0222': 'OU',
'\u24C5': 'P',
'\uFF30': 'P',
'\u1E54': 'P',
'\u1E56': 'P',
'\u01A4': 'P',
'\u2C63': 'P',
'\uA750': 'P',
'\uA752': 'P',
'\uA754': 'P',
'\u24C6': 'Q',
'\uFF31': 'Q',
'\uA756': 'Q',
'\uA758': 'Q',
'\u024A': 'Q',
'\u24C7': 'R',
'\uFF32': 'R',
'\u0154': 'R',
'\u1E58': 'R',
'\u0158': 'R',
'\u0210': 'R',
'\u0212': 'R',
'\u1E5A': 'R',
'\u1E5C': 'R',
'\u0156': 'R',
'\u1E5E': 'R',
'\u024C': 'R',
'\u2C64': 'R',
'\uA75A': 'R',
'\uA7A6': 'R',
'\uA782': 'R',
'\u24C8': 'S',
'\uFF33': 'S',
'\u1E9E': 'S',
'\u015A': 'S',
'\u1E64': 'S',
'\u015C': 'S',
'\u1E60': 'S',
'\u0160': 'S',
'\u1E66': 'S',
'\u1E62': 'S',
'\u1E68': 'S',
'\u0218': 'S',
'\u015E': 'S',
'\u2C7E': 'S',
'\uA7A8': 'S',
'\uA784': 'S',
'\u24C9': 'T',
'\uFF34': 'T',
'\u1E6A': 'T',
'\u0164': 'T',
'\u1E6C': 'T',
'\u021A': 'T',
'\u0162': 'T',
'\u1E70': 'T',
'\u1E6E': 'T',
'\u0166': 'T',
'\u01AC': 'T',
'\u01AE': 'T',
'\u023E': 'T',
'\uA786': 'T',
'\uA728': 'TZ',
'\u24CA': 'U',
'\uFF35': 'U',
'\u00D9': 'U',
'\u00DA': 'U',
'\u00DB': 'U',
'\u0168': 'U',
'\u1E78': 'U',
'\u016A': 'U',
'\u1E7A': 'U',
'\u016C': 'U',
'\u00DC': 'U',
'\u01DB': 'U',
'\u01D7': 'U',
'\u01D5': 'U',
'\u01D9': 'U',
'\u1EE6': 'U',
'\u016E': 'U',
'\u0170': 'U',
'\u01D3': 'U',
'\u0214': 'U',
'\u0216': 'U',
'\u01AF': 'U',
'\u1EEA': 'U',
'\u1EE8': 'U',
'\u1EEE': 'U',
'\u1EEC': 'U',
'\u1EF0': 'U',
'\u1EE4': 'U',
'\u1E72': 'U',
'\u0172': 'U',
'\u1E76': 'U',
'\u1E74': 'U',
'\u0244': 'U',
'\u24CB': 'V',
'\uFF36': 'V',
'\u1E7C': 'V',
'\u1E7E': 'V',
'\u01B2': 'V',
'\uA75E': 'V',
'\u0245': 'V',
'\uA760': 'VY',
'\u24CC': 'W',
'\uFF37': 'W',
'\u1E80': 'W',
'\u1E82': 'W',
'\u0174': 'W',
'\u1E86': 'W',
'\u1E84': 'W',
'\u1E88': 'W',
'\u2C72': 'W',
'\u24CD': 'X',
'\uFF38': 'X',
'\u1E8A': 'X',
'\u1E8C': 'X',
'\u24CE': 'Y',
'\uFF39': 'Y',
'\u1EF2': 'Y',
'\u00DD': 'Y',
'\u0176': 'Y',
'\u1EF8': 'Y',
'\u0232': 'Y',
'\u1E8E': 'Y',
'\u0178': 'Y',
'\u1EF6': 'Y',
'\u1EF4': 'Y',
'\u01B3': 'Y',
'\u024E': 'Y',
'\u1EFE': 'Y',
'\u24CF': 'Z',
'\uFF3A': 'Z',
'\u0179': 'Z',
'\u1E90': 'Z',
'\u017B': 'Z',
'\u017D': 'Z',
'\u1E92': 'Z',
'\u1E94': 'Z',
'\u01B5': 'Z',
'\u0224': 'Z',
'\u2C7F': 'Z',
'\u2C6B': 'Z',
'\uA762': 'Z',
'\u24D0': 'a',
'\uFF41': 'a',
'\u1E9A': 'a',
'\u00E0': 'a',
'\u00E1': 'a',
'\u00E2': 'a',
'\u1EA7': 'a',
'\u1EA5': 'a',
'\u1EAB': 'a',
'\u1EA9': 'a',
'\u00E3': 'a',
'\u0101': 'a',
'\u0103': 'a',
'\u1EB1': 'a',
'\u1EAF': 'a',
'\u1EB5': 'a',
'\u1EB3': 'a',
'\u0227': 'a',
'\u01E1': 'a',
'\u00E4': 'a',
'\u01DF': 'a',
'\u1EA3': 'a',
'\u00E5': 'a',
'\u01FB': 'a',
'\u01CE': 'a',
'\u0201': 'a',
'\u0203': 'a',
'\u1EA1': 'a',
'\u1EAD': 'a',
'\u1EB7': 'a',
'\u1E01': 'a',
'\u0105': 'a',
'\u2C65': 'a',
'\u0250': 'a',
'\uA733': 'aa',
'\u00E6': 'ae',
'\u01FD': 'ae',
'\u01E3': 'ae',
'\uA735': 'ao',
'\uA737': 'au',
'\uA739': 'av',
'\uA73B': 'av',
'\uA73D': 'ay',
'\u24D1': 'b',
'\uFF42': 'b',
'\u1E03': 'b',
'\u1E05': 'b',
'\u1E07': 'b',
'\u0180': 'b',
'\u0183': 'b',
'\u0253': 'b',
'\u24D2': 'c',
'\uFF43': 'c',
'\u0107': 'c',
'\u0109': 'c',
'\u010B': 'c',
'\u010D': 'c',
'\u00E7': 'c',
'\u1E09': 'c',
'\u0188': 'c',
'\u023C': 'c',
'\uA73F': 'c',
'\u2184': 'c',
'\u24D3': 'd',
'\uFF44': 'd',
'\u1E0B': 'd',
'\u010F': 'd',
'\u1E0D': 'd',
'\u1E11': 'd',
'\u1E13': 'd',
'\u1E0F': 'd',
'\u0111': 'd',
'\u018C': 'd',
'\u0256': 'd',
'\u0257': 'd',
'\uA77A': 'd',
'\u01F3': 'dz',
'\u01C6': 'dz',
'\u24D4': 'e',
'\uFF45': 'e',
'\u00E8': 'e',
'\u00E9': 'e',
'\u00EA': 'e',
'\u1EC1': 'e',
'\u1EBF': 'e',
'\u1EC5': 'e',
'\u1EC3': 'e',
'\u1EBD': 'e',
'\u0113': 'e',
'\u1E15': 'e',
'\u1E17': 'e',
'\u0115': 'e',
'\u0117': 'e',
'\u00EB': 'e',
'\u1EBB': 'e',
'\u011B': 'e',
'\u0205': 'e',
'\u0207': 'e',
'\u1EB9': 'e',
'\u1EC7': 'e',
'\u0229': 'e',
'\u1E1D': 'e',
'\u0119': 'e',
'\u1E19': 'e',
'\u1E1B': 'e',
'\u0247': 'e',
'\u025B': 'e',
'\u01DD': 'e',
'\u24D5': 'f',
'\uFF46': 'f',
'\u1E1F': 'f',
'\u0192': 'f',
'\uA77C': 'f',
'\u24D6': 'g',
'\uFF47': 'g',
'\u01F5': 'g',
'\u011D': 'g',
'\u1E21': 'g',
'\u011F': 'g',
'\u0121': 'g',
'\u01E7': 'g',
'\u0123': 'g',
'\u01E5': 'g',
'\u0260': 'g',
'\uA7A1': 'g',
'\u1D79': 'g',
'\uA77F': 'g',
'\u24D7': 'h',
'\uFF48': 'h',
'\u0125': 'h',
'\u1E23': 'h',
'\u1E27': 'h',
'\u021F': 'h',
'\u1E25': 'h',
'\u1E29': 'h',
'\u1E2B': 'h',
'\u1E96': 'h',
'\u0127': 'h',
'\u2C68': 'h',
'\u2C76': 'h',
'\u0265': 'h',
'\u0195': 'hv',
'\u24D8': 'i',
'\uFF49': 'i',
'\u00EC': 'i',
'\u00ED': 'i',
'\u00EE': 'i',
'\u0129': 'i',
'\u012B': 'i',
'\u012D': 'i',
'\u00EF': 'i',
'\u1E2F': 'i',
'\u1EC9': 'i',
'\u01D0': 'i',
'\u0209': 'i',
'\u020B': 'i',
'\u1ECB': 'i',
'\u012F': 'i',
'\u1E2D': 'i',
'\u0268': 'i',
'\u0131': 'i',
'\u24D9': 'j',
'\uFF4A': 'j',
'\u0135': 'j',
'\u01F0': 'j',
'\u0249': 'j',
'\u24DA': 'k',
'\uFF4B': 'k',
'\u1E31': 'k',
'\u01E9': 'k',
'\u1E33': 'k',
'\u0137': 'k',
'\u1E35': 'k',
'\u0199': 'k',
'\u2C6A': 'k',
'\uA741': 'k',
'\uA743': 'k',
'\uA745': 'k',
'\uA7A3': 'k',
'\u24DB': 'l',
'\uFF4C': 'l',
'\u0140': 'l',
'\u013A': 'l',
'\u013E': 'l',
'\u1E37': 'l',
'\u1E39': 'l',
'\u013C': 'l',
'\u1E3D': 'l',
'\u1E3B': 'l',
'\u017F': 'l',
'\u0142': 'l',
'\u019A': 'l',
'\u026B': 'l',
'\u2C61': 'l',
'\uA749': 'l',
'\uA781': 'l',
'\uA747': 'l',
'\u01C9': 'lj',
'\u24DC': 'm',
'\uFF4D': 'm',
'\u1E3F': 'm',
'\u1E41': 'm',
'\u1E43': 'm',
'\u0271': 'm',
'\u026F': 'm',
'\u24DD': 'n',
'\uFF4E': 'n',
'\u01F9': 'n',
'\u0144': 'n',
'\u00F1': 'n',
'\u1E45': 'n',
'\u0148': 'n',
'\u1E47': 'n',
'\u0146': 'n',
'\u1E4B': 'n',
'\u1E49': 'n',
'\u019E': 'n',
'\u0272': 'n',
'\u0149': 'n',
'\uA791': 'n',
'\uA7A5': 'n',
'\u01CC': 'nj',
'\u24DE': 'o',
'\uFF4F': 'o',
'\u00F2': 'o',
'\u00F3': 'o',
'\u00F4': 'o',
'\u1ED3': 'o',
'\u1ED1': 'o',
'\u1ED7': 'o',
'\u1ED5': 'o',
'\u00F5': 'o',
'\u1E4D': 'o',
'\u022D': 'o',
'\u1E4F': 'o',
'\u014D': 'o',
'\u1E51': 'o',
'\u1E53': 'o',
'\u014F': 'o',
'\u022F': 'o',
'\u0231': 'o',
'\u00F6': 'o',
'\u022B': 'o',
'\u1ECF': 'o',
'\u0151': 'o',
'\u01D2': 'o',
'\u020D': 'o',
'\u020F': 'o',
'\u01A1': 'o',
'\u1EDD': 'o',
'\u1EDB': 'o',
'\u1EE1': 'o',
'\u1EDF': 'o',
'\u1EE3': 'o',
'\u1ECD': 'o',
'\u1ED9': 'o',
'\u01EB': 'o',
'\u01ED': 'o',
'\u00F8': 'o',
'\u01FF': 'o',
'\u0254': 'o',
'\uA74B': 'o',
'\uA74D': 'o',
'\u0275': 'o',
'\u01A3': 'oi',
'\u0223': 'ou',
'\uA74F': 'oo',
'\u24DF': 'p',
'\uFF50': 'p',
'\u1E55': 'p',
'\u1E57': 'p',
'\u01A5': 'p',
'\u1D7D': 'p',
'\uA751': 'p',
'\uA753': 'p',
'\uA755': 'p',
'\u24E0': 'q',
'\uFF51': 'q',
'\u024B': 'q',
'\uA757': 'q',
'\uA759': 'q',
'\u24E1': 'r',
'\uFF52': 'r',
'\u0155': 'r',
'\u1E59': 'r',
'\u0159': 'r',
'\u0211': 'r',
'\u0213': 'r',
'\u1E5B': 'r',
'\u1E5D': 'r',
'\u0157': 'r',
'\u1E5F': 'r',
'\u024D': 'r',
'\u027D': 'r',
'\uA75B': 'r',
'\uA7A7': 'r',
'\uA783': 'r',
'\u24E2': 's',
'\uFF53': 's',
'\u00DF': 's',
'\u015B': 's',
'\u1E65': 's',
'\u015D': 's',
'\u1E61': 's',
'\u0161': 's',
'\u1E67': 's',
'\u1E63': 's',
'\u1E69': 's',
'\u0219': 's',
'\u015F': 's',
'\u023F': 's',
'\uA7A9': 's',
'\uA785': 's',
'\u1E9B': 's',
'\u24E3': 't',
'\uFF54': 't',
'\u1E6B': 't',
'\u1E97': 't',
'\u0165': 't',
'\u1E6D': 't',
'\u021B': 't',
'\u0163': 't',
'\u1E71': 't',
'\u1E6F': 't',
'\u0167': 't',
'\u01AD': 't',
'\u0288': 't',
'\u2C66': 't',
'\uA787': 't',
'\uA729': 'tz',
'\u24E4': 'u',
'\uFF55': 'u',
'\u00F9': 'u',
'\u00FA': 'u',
'\u00FB': 'u',
'\u0169': 'u',
'\u1E79': 'u',
'\u016B': 'u',
'\u1E7B': 'u',
'\u016D': 'u',
'\u00FC': 'u',
'\u01DC': 'u',
'\u01D8': 'u',
'\u01D6': 'u',
'\u01DA': 'u',
'\u1EE7': 'u',
'\u016F': 'u',
'\u0171': 'u',
'\u01D4': 'u',
'\u0215': 'u',
'\u0217': 'u',
'\u01B0': 'u',
'\u1EEB': 'u',
'\u1EE9': 'u',
'\u1EEF': 'u',
'\u1EED': 'u',
'\u1EF1': 'u',
'\u1EE5': 'u',
'\u1E73': 'u',
'\u0173': 'u',
'\u1E77': 'u',
'\u1E75': 'u',
'\u0289': 'u',
'\u24E5': 'v',
'\uFF56': 'v',
'\u1E7D': 'v',
'\u1E7F': 'v',
'\u028B': 'v',
'\uA75F': 'v',
'\u028C': 'v',
'\uA761': 'vy',
'\u24E6': 'w',
'\uFF57': 'w',
'\u1E81': 'w',
'\u1E83': 'w',
'\u0175': 'w',
'\u1E87': 'w',
'\u1E85': 'w',
'\u1E98': 'w',
'\u1E89': 'w',
'\u2C73': 'w',
'\u24E7': 'x',
'\uFF58': 'x',
'\u1E8B': 'x',
'\u1E8D': 'x',
'\u24E8': 'y',
'\uFF59': 'y',
'\u1EF3': 'y',
'\u00FD': 'y',
'\u0177': 'y',
'\u1EF9': 'y',
'\u0233': 'y',
'\u1E8F': 'y',
'\u00FF': 'y',
'\u1EF7': 'y',
'\u1E99': 'y',
'\u1EF5': 'y',
'\u01B4': 'y',
'\u024F': 'y',
'\u1EFF': 'y',
'\u24E9': 'z',
'\uFF5A': 'z',
'\u017A': 'z',
'\u1E91': 'z',
'\u017C': 'z',
'\u017E': 'z',
'\u1E93': 'z',
'\u1E95': 'z',
'\u01B6': 'z',
'\u0225': 'z',
'\u0240': 'z',
'\u2C6C': 'z',
'\uA763': 'z',
'\u0386': '\u0391',
'\u0388': '\u0395',
'\u0389': '\u0397',
'\u038A': '\u0399',
'\u03AA': '\u0399',
'\u038C': '\u039F',
'\u038E': '\u03A5',
'\u03AB': '\u03A5',
'\u038F': '\u03A9',
'\u03AC': '\u03B1',
'\u03AD': '\u03B5',
'\u03AE': '\u03B7',
'\u03AF': '\u03B9',
'\u03CA': '\u03B9',
'\u0390': '\u03B9',
'\u03CC': '\u03BF',
'\u03CD': '\u03C5',
'\u03CB': '\u03C5',
'\u03B0': '\u03C5',
'\u03C9': '\u03C9',
'\u03C2': '\u03C3'
};
return diacritics;
}
);
S2.define('select2/data/base',
[
'../utils'
],
function (Utils){
function BaseAdapter($element, options){
BaseAdapter.__super__.constructor.call(this);
}
Utils.Extend(BaseAdapter, Utils.Observable);
BaseAdapter.prototype.current=function (callback){
throw new Error('The `current` method must be defined in child classes.');
};
BaseAdapter.prototype.query=function (params, callback){
throw new Error('The `query` method must be defined in child classes.');
};
BaseAdapter.prototype.bind=function (container, $container){
};
BaseAdapter.prototype.destroy=function (){
};
BaseAdapter.prototype.generateResultId=function (container, data){
var id=container.id + '-result-';
id +=Utils.generateChars(4);
if(data.id!=null){
id +='-' + data.id.toString();
}else{
id +='-' + Utils.generateChars(4);
}
return id;
};
return BaseAdapter;
}
);
S2.define('select2/data/select',
[
'./base',
'../utils',
'jquery'
],
function (BaseAdapter, Utils, $){
function SelectAdapter($element, options){
this.$element=$element;
this.options=options;
SelectAdapter.__super__.constructor.call(this);
}
Utils.Extend(SelectAdapter, BaseAdapter);
SelectAdapter.prototype.current=function (callback){
var data=[];
var self=this;
this.$element.find(':selected').each(function (){
var $option=$(this);
var option=self.item($option);
data.push(option);
}
);
callback(data);
};
SelectAdapter.prototype.select=function (data){
var self=this;
data.selected=true;
if($(data.element).is('option')){
data.element.selected=true;
this.$element.trigger('change');
return;
}
if(this.$element.prop('multiple')){
this.current(function (currentData){
var val=[];
data=[data];
data.push.apply(data, currentData);
for (var d=0; d < data.length; d++){
var id=data[d].id;
if($.inArray(id, val)===-1){
val.push(id);
}}
self.$element.val(val);
self.$element.trigger('change');
}
);
}else{
var val=data.id;
this.$element.val(val);
this.$element.trigger('change');
}};
SelectAdapter.prototype.unselect=function (data){
var self=this;
if(! this.$element.prop('multiple')){
return;
}
data.selected=false;
if($(data.element).is('option')){
data.element.selected=false;
this.$element.trigger('change');
return;
}
this.current(function (currentData){
var val=[];
for (var d=0; d < currentData.length; d++){
var id=currentData[d].id;
if(id!==data.id&&$.inArray(id, val)===-1){
val.push(id);
}}
self.$element.val(val);
self.$element.trigger('change');
}
);
};
SelectAdapter.prototype.bind=function (container, $container){
var self=this;
this.container=container;
container.on('select',
function (params){
self.select(params.data);
}
);
container.on('unselect',
function (params){
self.unselect(params.data);
}
);
};
SelectAdapter.prototype.destroy=function (){
this.$element.find('*').each(function (){
$.removeData(this, 'data');
}
);
};
SelectAdapter.prototype.query=function (params, callback){
var data=[];
var self=this;
var $options=this.$element.children();
$options.each(function (){
var $option=$(this);
if(! $option.is('option')&&! $option.is('optgroup')){
return;
}
var option=self.item($option);
var matches=self.matches(params, option);
if(matches!==null){
data.push(matches);
}}
);
callback(
{
results: data
}
);
};
SelectAdapter.prototype.addOptions=function ($options){
Utils.appendMany(this.$element, $options);
};
SelectAdapter.prototype.option=function (data){
var option;
if(data.children){
option=document.createElement('optgroup');
option.label=data.text;
}else{
option=document.createElement('option');
if(option.textContent!==undefined){
option.textContent=data.text;
}else{
option.innerText=data.text;
}}
if(data.id){
option.value=data.id;
}
if(data.disabled){
option.disabled=true;
}
if(data.selected){
option.selected=true;
}
if(data.title){
option.title=data.title;
}
var $option=$(option);
var normalizedData=this._normalizeItem(data);
normalizedData.element=option;
$.data(option, 'data', normalizedData);
return $option;
};
SelectAdapter.prototype.item=function ($option){
var data={};
data=$.data($option[0], 'data');
if(data!=null){
return data;
}
if($option.is('option')){
data={
id: $option.val(),
text: $option.text(),
disabled: $option.prop('disabled'),
selected: $option.prop('selected'),
title: $option.prop('title')
};}else if($option.is('optgroup')){
data={
text: $option.prop('label'),
children: [],
title: $option.prop('title')
};
var $children=$option.children('option');
var children=[];
for (var c=0; c < $children.length; c++){
var $child=$($children[c]);
var child=this.item($child);
children.push(child);
}
data.children=children;
}
data=this._normalizeItem(data);
data.element=$option[0];
$.data($option[0], 'data', data);
return data;
};
SelectAdapter.prototype._normalizeItem=function (item){
if(! $.isPlainObject(item)){
item={
id: item,
text: item
};}
item=$.extend({},
{
text: ''
},
item
);
var defaults={
selected: false,
disabled: false
};
if(item.id!=null){
item.id=item.id.toString();
}
if(item.text!=null){
item.text=item.text.toString();
}
if(item._resultId==null&&item.id&&this.container!=null){
item._resultId=this.generateResultId(this.container, item);
}
return $.extend({}, defaults, item);
};
SelectAdapter.prototype.matches=function (params, data){
var matcher=this.options.get('matcher');
return matcher(params, data);
};
return SelectAdapter;
}
);
S2.define('select2/data/array',
[
'./select',
'../utils',
'jquery'
],
function (SelectAdapter, Utils, $){
function ArrayAdapter($element, options){
var data=options.get('data')||[];
ArrayAdapter.__super__.constructor.call(this, $element, options);
this.addOptions(this.convertToOptions(data) );
}
Utils.Extend(ArrayAdapter, SelectAdapter);
ArrayAdapter.prototype.select=function (data){
var $option=this.$element.find('option').filter(function (i, elm){
return elm.value==data.id.toString();
}
);
if($option.length===0){
$option=this.option(data);
this.addOptions($option);
}
ArrayAdapter.__super__.select.call(this, data);
};
ArrayAdapter.prototype.convertToOptions=function (data){
var self=this;
var $existing=this.$element.find('option');
var existingIds=$existing.map(function (){
return self.item($(this) ).id;
}
).get();
var $options=[];
function onlyItem(item){
return function (){
return $(this).val()==item.id;
};}
for (var d=0; d < data.length; d++){
var item=this._normalizeItem(data[d]);
if($.inArray(item.id, existingIds) >=0){
var $existingOption=$existing.filter(onlyItem(item) );
var existingData=this.item($existingOption);
var newData=$.extend(true, {}, existingData, item);
var $newOption=this.option(existingData);
$existingOption.replaceWith($newOption);
continue;
}
var $option=this.option(item);
if(item.children){
var $children=this.convertToOptions(item.children);
Utils.appendMany($option, $children);
}
$options.push($option);
}
return $options;
};
return ArrayAdapter;
}
);
S2.define('select2/data/ajax',
[
'./array',
'../utils',
'jquery'
],
function (ArrayAdapter, Utils, $){
function AjaxAdapter($element, options){
this.ajaxOptions=this._applyDefaults(options.get('ajax') );
if(this.ajaxOptions.processResults!=null){
this.processResults=this.ajaxOptions.processResults;
}
ArrayAdapter.__super__.constructor.call(this, $element, options);
}
Utils.Extend(AjaxAdapter, ArrayAdapter);
AjaxAdapter.prototype._applyDefaults=function (options){
var defaults={
data: function (params){
return {
q: params.term
};},
transport: function (params, success, failure){
var $request=$.ajax(params);
$request.then(success);
$request.fail(failure);
return $request;
}};
return $.extend({}, defaults, options, true);
};
AjaxAdapter.prototype.processResults=function (results){
return results;
};
AjaxAdapter.prototype.query=function (params, callback){
var matches=[];
var self=this;
if(this._request!=null){
if($.isFunction(this._request.abort)){
this._request.abort();
}
this._request=null;
}
var options=$.extend({
type: 'GET'
},
this.ajaxOptions
);
if(typeof options.url==='function'){
options.url=options.url(params);
}
if(typeof options.data==='function'){
options.data=options.data(params);
}
function request(){
var $request=options.transport(options,
function (data){
var results=self.processResults(data, params);
if(self.options.get('debug')&&window.console&&console.error){
if(! results||! results.results||! $.isArray(results.results)){
console.error('Select2: The AJAX results did not return an array in the ' +
'`results` key of the response.'
);
}}
callback(results);
},
function (){
}
);
self._request=$request;
}
if(this.ajaxOptions.delay&&params.term!==''){
if(this._queryTimeout){
window.clearTimeout(this._queryTimeout);
}
this._queryTimeout=window.setTimeout(request, this.ajaxOptions.delay);
}else{
request();
}};
return AjaxAdapter;
}
);
S2.define('select2/data/tags',
[
'jquery'
],
function ($){
function Tags(decorated, $element, options){
var tags=options.get('tags');
var createTag=options.get('createTag');
if(createTag!==undefined){
this.createTag=createTag;
}
decorated.call(this, $element, options);
if($.isArray(tags)){
for (var t=0; t < tags.length; t++){
var tag=tags[t];
var item=this._normalizeItem(tag);
var $option=this.option(item);
this.$element.append($option);
}}
}
Tags.prototype.query=function (decorated, params, callback){
var self=this;
this._removeOldTags();
if(params.term==null||params.page!=null){
decorated.call(this, params, callback);
return;
}
function wrapper(obj, child){
var data=obj.results;
for (var i=0; i < data.length; i++){
var option=data[i];
var checkChildren=(
option.children!=null &&
! wrapper(
{
results: option.children
},
true
)
);
var checkText=option.text===params.term;
if(checkText||checkChildren){
if(child){
return false;
}
obj.data=data;
callback(obj);
return;
}}
if(child){
return true;
}
var tag=self.createTag(params);
if(tag!=null){
var $option=self.option(tag);
$option.attr('data-select2-tag', true);
self.addOptions([$option]);
self.insertTag(data, tag);
}
obj.results=data;
callback(obj);
}
decorated.call(this, params, wrapper);
};
Tags.prototype.createTag=function (decorated, params){
var term=$.trim(params.term);
if(term===''){
return null;
}
return {
id: term,
text: term
};};
Tags.prototype.insertTag=function (_, data, tag){
data.unshift(tag);
};
Tags.prototype._removeOldTags=function (_){
var tag=this._lastTag;
var $options=this.$element.find('option[data-select2-tag]');
$options.each(function (){
if(this.selected){
return;
}
$(this).remove();
}
);
};
return Tags;
}
);
S2.define('select2/data/tokenizer',
[
'jquery'
],
function ($){
function Tokenizer(decorated, $element, options){
var tokenizer=options.get('tokenizer');
if(tokenizer!==undefined){
this.tokenizer=tokenizer;
}
decorated.call(this, $element, options);
}
Tokenizer.prototype.bind=function (decorated, container, $container){
decorated.call(this, container, $container);
this.$search=container.dropdown.$search||container.selection.$search ||
$container.find('.select2-search__field');
};
Tokenizer.prototype.query=function (decorated, params, callback){
var self=this;
function select(data){
self.select(data);
}
params.term=params.term||'';
var tokenData=this.tokenizer(params, this.options, select);
if(tokenData.term!==params.term){
if(this.$search.length){
this.$search.val(tokenData.term);
this.$search.focus();
}
params.term=tokenData.term;
}
decorated.call(this, params, callback);
};
Tokenizer.prototype.tokenizer=function (_, params, options, callback){
var separators=options.get('tokenSeparators')||[];
var term=params.term;
var i=0;
var createTag=this.createTag||function (params){
return {
id: params.term,
text: params.term
};};
while (i < term.length){
var termChar=term[i];
if($.inArray(termChar, separators)===-1){
i++;
continue;
}
var part=term.substr(0, i);
var partParams=$.extend({},
params,
{
term: part
}
);
var data=createTag(partParams);
callback(data);
term=term.substr(i + 1)||'';
i=0;
}
return {
term: term
};};
return Tokenizer;
}
);
S2.define('select2/data/minimumInputLength',
[
],
function (){
function MinimumInputLength(decorated, $e, options){
this.minimumInputLength=options.get('minimumInputLength');
decorated.call(this, $e, options);
}
MinimumInputLength.prototype.query=function (decorated, params, callback){
params.term=params.term||'';
if(params.term.length < this.minimumInputLength){
this.trigger('results:message',
{
message: 'inputTooShort',
args: {
minimum: this.minimumInputLength,
input: params.term,
params: params
}}
);
return;
}
decorated.call(this, params, callback);
};
return MinimumInputLength;
}
);
S2.define('select2/data/maximumInputLength',
[
],
function (){
function MaximumInputLength(decorated, $e, options){
this.maximumInputLength=options.get('maximumInputLength');
decorated.call(this, $e, options);
}
MaximumInputLength.prototype.query=function (decorated, params, callback){
params.term=params.term||'';
if(this.maximumInputLength > 0
&& params.term.length > this.maximumInputLength
){
this.trigger('results:message',
{
message: 'inputTooLong',
args: {
maximum: this.maximumInputLength,
input: params.term,
params: params
}}
);
return;
}
decorated.call(this, params, callback);
};
return MaximumInputLength;
}
);
S2.define('select2/data/maximumSelectionLength',
[
],
function (){
function MaximumSelectionLength(decorated, $e, options){
this.maximumSelectionLength=options.get('maximumSelectionLength');
decorated.call(this, $e, options);
}
MaximumSelectionLength.prototype.query =
function (decorated, params, callback){
var self=this;
this.current(function (currentData){
var count=currentData!=null ? currentData.length:0;
if(self.maximumSelectionLength > 0
&& count >=self.maximumSelectionLength
){
self.trigger('results:message',
{
message: 'maximumSelected',
args: {
maximum: self.maximumSelectionLength
}}
);
return;
}
decorated.call(self, params, callback);
}
);
};
return MaximumSelectionLength;
}
);
S2.define('select2/dropdown',
[
'jquery',
'./utils'
],
function ($, Utils){
function Dropdown($element, options){
this.$element=$element;
this.options=options;
Dropdown.__super__.constructor.call(this);
}
Utils.Extend(Dropdown, Utils.Observable);
Dropdown.prototype.render=function (){
var $dropdown=$(
'<span class="select2-dropdown">' +
'<span class="select2-results"></span>' +
'</span>'
);
$dropdown.attr('dir', this.options.get('dir') );
this.$dropdown=$dropdown;
return $dropdown;
};
Dropdown.prototype.position=function ($dropdown, $container){
};
Dropdown.prototype.destroy=function (){
this.$dropdown.remove();
};
return Dropdown;
}
);
S2.define('select2/dropdown/search',
[
'jquery',
'../utils'
],
function ($, Utils){
function Search(){ }
Search.prototype.render=function (decorated){
var $rendered=decorated.call(this);
var $search=$(
'<span class="select2-search select2-search--dropdown">' +
'<input class="select2-search__field" type="search" tabindex="-1"' +
' autocomplete="off" autocorrect="off" autocapitalize="off"' +
' spellcheck="false" role="textbox" />' +
'</span>'
);
this.$searchContainer=$search;
this.$search=$search.find('input');
$rendered.prepend($search);
return $rendered;
};
Search.prototype.bind=function (decorated, container, $container){
var self=this;
decorated.call(this, container, $container);
this.$search.on('keydown',
function (evt){
self.trigger('keypress', evt);
self._keyUpPrevented=evt.isDefaultPrevented();
}
);
this.$search.on('input',
function (evt){
$(this).off('keyup');
}
);
this.$search.on('keyup input',
function (evt){
self.handleSearch(evt);
}
);
container.on('open',
function (){
self.$search.attr('tabindex', 0);
self.$search.focus();
window.setTimeout(function (){
self.$search.focus();
},
0
);
}
);
container.on('close',
function (){
self.$search.attr('tabindex', -1);
self.$search.val('');
}
);
container.on('results:all',
function (params){
if(params.query.term==null||params.query.term===''){
var showSearch=self.showSearch(params);
if(showSearch){
self.$searchContainer.removeClass('select2-search--hide');
}else{
self.$searchContainer.addClass('select2-search--hide');
}}
}
);
};
Search.prototype.handleSearch=function (evt){
if(! this._keyUpPrevented){
var input=this.$search.val();
this.trigger('query',
{
term: input
}
);
}
this._keyUpPrevented=false;
};
Search.prototype.showSearch=function (_, params){
return true;
};
return Search;
}
);
S2.define('select2/dropdown/hidePlaceholder',
[
],
function (){
function HidePlaceholder(decorated, $element, options, dataAdapter){
this.placeholder=this.normalizePlaceholder(options.get('placeholder') );
decorated.call(this, $element, options, dataAdapter);
}
HidePlaceholder.prototype.append=function (decorated, data){
data.results=this.removePlaceholder(data.results);
decorated.call(this, data);
};
HidePlaceholder.prototype.normalizePlaceholder=function (_, placeholder){
if(typeof placeholder==='string'){
placeholder={
id: '',
text: placeholder
};}
return placeholder;
};
HidePlaceholder.prototype.removePlaceholder=function (_, data){
var modifiedData=data.slice(0);
for (var d=data.length - 1; d >=0; d--){
var item=data[d];
if(this.placeholder.id===item.id){
modifiedData.splice(d, 1);
}}
return modifiedData;
};
return HidePlaceholder;
}
);
S2.define('select2/dropdown/infiniteScroll',
[
'jquery'
],
function ($){
function InfiniteScroll(decorated, $element, options, dataAdapter){
this.lastParams={};
decorated.call(this, $element, options, dataAdapter);
this.$loadingMore=this.createLoadingMore();
this.loading=false;
}
InfiniteScroll.prototype.append=function (decorated, data){
this.$loadingMore.remove();
this.loading=false;
decorated.call(this, data);
if(this.showLoadingMore(data)){
this.$results.append(this.$loadingMore);
}};
InfiniteScroll.prototype.bind=function (decorated, container, $container){
var self=this;
decorated.call(this, container, $container);
container.on('query',
function (params){
self.lastParams=params;
self.loading=true;
}
);
container.on('query:append',
function (params){
self.lastParams=params;
self.loading=true;
}
);
this.$results.on('scroll',
function (){
var isLoadMoreVisible=$.contains(document.documentElement,
self.$loadingMore[0]
);
if(self.loading||! isLoadMoreVisible){
return;
}
var currentOffset=self.$results.offset().top +
self.$results.outerHeight(false);
var loadingMoreOffset=self.$loadingMore.offset().top +
self.$loadingMore.outerHeight(false);
if(currentOffset + 50 >=loadingMoreOffset){
self.loadMore();
}}
);
};
InfiniteScroll.prototype.loadMore=function (){
this.loading=true;
var params=$.extend({}, {page: 1}, this.lastParams);
params.page++;
this.trigger('query:append', params);
};
InfiniteScroll.prototype.showLoadingMore=function (_, data){
return data.pagination&&data.pagination.more;
};
InfiniteScroll.prototype.createLoadingMore=function (){
var $option=$(
'<li class="option load-more" role="treeitem"></li>'
);
var message=this.options.get('translations').get('loadingMore');
$option.html(message(this.lastParams) );
return $option;
};
return InfiniteScroll;
}
);
S2.define('select2/dropdown/attachBody',
[
'jquery',
'../utils'
],
function ($, Utils){
function AttachBody(decorated, $element, options){
this.$dropdownParent=options.get('dropdownParent')||document.body;
decorated.call(this, $element, options);
}
AttachBody.prototype.bind=function (decorated, container, $container){
var self=this;
var setupResultsEvents=false;
decorated.call(this, container, $container);
container.on('open',
function (){
self._showDropdown();
self._attachPositioningHandler(container);
if(! setupResultsEvents){
setupResultsEvents=true;
container.on('results:all',
function (){
self._positionDropdown();
self._resizeDropdown();
}
);
container.on('results:append',
function (){
self._positionDropdown();
self._resizeDropdown();
}
);
}}
);
container.on('close',
function (){
self._hideDropdown();
self._detachPositioningHandler(container);
}
);
this.$dropdownContainer.on('mousedown',
function (evt){
evt.stopPropagation();
}
);
};
AttachBody.prototype.position=function (decorated, $dropdown, $container){
$dropdown.attr('class', $container.attr('class') );
$dropdown.removeClass('select2');
$dropdown.addClass('select2-container--open');
$dropdown.css({
position: 'absolute',
top: -999999
}
);
this.$container=$container;
};
AttachBody.prototype.render=function (decorated){
var $container=$('<span></span>');
var $dropdown=decorated.call(this);
$container.append($dropdown);
this.$dropdownContainer=$container;
return $container;
};
AttachBody.prototype._hideDropdown=function (decorated){
this.$dropdownContainer.detach();
};
AttachBody.prototype._attachPositioningHandler=function (container){
var self=this;
var scrollEvent='scroll.select2.' + container.id;
var resizeEvent='resize.select2.' + container.id;
var orientationEvent='orientationchange.select2.' + container.id;
var $watchers=this.$container.parents().filter(Utils.hasScroll);
$watchers.each(function (){
$(this).data('select2-scroll-position',
{
x: $(this).scrollLeft(),
y: $(this).scrollTop()
}
);
}
);
$watchers.on(scrollEvent,
function (ev){
var position=$(this).data('select2-scroll-position');
$(this).scrollTop(position.y);
}
);
$(window).on(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent,
function (e){
self._positionDropdown();
self._resizeDropdown();
}
);
};
AttachBody.prototype._detachPositioningHandler=function (container){
var scrollEvent='scroll.select2.' + container.id;
var resizeEvent='resize.select2.' + container.id;
var orientationEvent='orientationchange.select2.' + container.id;
var $watchers=this.$container.parents().filter(Utils.hasScroll);
$watchers.off(scrollEvent);
$(window).off(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent);
};
AttachBody.prototype._positionDropdown=function (){
var $window=$(window);
var isCurrentlyAbove=this.$dropdown.hasClass('select2-dropdown--above');
var isCurrentlyBelow=this.$dropdown.hasClass('select2-dropdown--below');
var newDirection=null;
var position=this.$container.position();
var offset=this.$container.offset();
offset.bottom=offset.top + this.$container.outerHeight(false);
var container={
height: this.$container.outerHeight(false)
};
container.top=offset.top;
container.bottom=offset.top + container.height;
var dropdown={
height: this.$dropdown.outerHeight(false)
};
var viewport={
top: $window.scrollTop(),
bottom: $window.scrollTop() + $window.height()
};
var enoughRoomAbove=viewport.top < (offset.top - dropdown.height);
var enoughRoomBelow=viewport.bottom > (offset.bottom + dropdown.height);
var css={
left: offset.left,
top: container.bottom
};
if(! isCurrentlyAbove&&! isCurrentlyBelow){
newDirection='below';
}
if(! enoughRoomBelow&&enoughRoomAbove&&! isCurrentlyAbove){
newDirection='above';
}else if(! enoughRoomAbove&&enoughRoomBelow&&isCurrentlyAbove){
newDirection='below';
}
if(newDirection=='above'
|| (isCurrentlyAbove&&newDirection!=='below')
){
css.top=container.top - dropdown.height;
}
if(newDirection!=null){
this.$dropdown
.removeClass('select2-dropdown--below select2-dropdown--above')
.addClass('select2-dropdown--' + newDirection);
this.$container
.removeClass('select2-container--below select2-container--above')
.addClass('select2-container--' + newDirection);
}
this.$dropdownContainer.css(css);
};
AttachBody.prototype._resizeDropdown=function (){
this.$dropdownContainer.width();
var css={
width: this.$container.outerWidth(false) + 'px'
};
if(this.options.get('dropdownAutoWidth')){
css.minWidth=css.width;
css.width='auto';
}
this.$dropdown.css(css);
};
AttachBody.prototype._showDropdown=function (decorated){
this.$dropdownContainer.appendTo(this.$dropdownParent);
this._positionDropdown();
this._resizeDropdown();
};
return AttachBody;
}
);
S2.define('select2/dropdown/minimumResultsForSearch',
[
],
function (){
function countResults(data){
var count=0;
for (var d=0; d < data.length; d++){
var item=data[d];
if(item.children){
count +=countResults(item.children);
}else{
count++;
}}
return count;
}
function MinimumResultsForSearch(decorated, $element, options, dataAdapter){
this.minimumResultsForSearch=options.get('minimumResultsForSearch');
if(this.minimumResultsForSearch < 0){
this.minimumResultsForSearch=Infinity;
}
decorated.call(this, $element, options, dataAdapter);
}
MinimumResultsForSearch.prototype.showSearch=function (decorated, params){
if(countResults(params.data.results) < this.minimumResultsForSearch){
return false;
}
return decorated.call(this, params);
};
return MinimumResultsForSearch;
}
);
S2.define('select2/dropdown/selectOnClose',
[
],
function (){
function SelectOnClose(){ }
SelectOnClose.prototype.bind=function (decorated, container, $container){
var self=this;
decorated.call(this, container, $container);
container.on('close',
function (){
self._handleSelectOnClose();
}
);
};
SelectOnClose.prototype._handleSelectOnClose=function (){
var $highlightedResults=this.getHighlightedResults();
if($highlightedResults.length < 1){
return;
}
this.trigger('select',
{
data: $highlightedResults.data('data')
}
);
};
return SelectOnClose;
}
);
S2.define('select2/dropdown/closeOnSelect',
[
],
function (){
function CloseOnSelect(){ }
CloseOnSelect.prototype.bind=function (decorated, container, $container){
var self=this;
decorated.call(this, container, $container);
container.on('select',
function (evt){
self._selectTriggered(evt);
}
);
container.on('unselect',
function (evt){
self._selectTriggered(evt);
}
);
};
CloseOnSelect.prototype._selectTriggered=function (_, evt){
var originalEvent=evt.originalEvent;
if(originalEvent&&originalEvent.ctrlKey){
return;
}
this.trigger('close');
};
return CloseOnSelect;
}
);
S2.define('select2/i18n/en',
[],
function (){
return {
errorLoading: function (){
return 'The results could not be loaded.';
},
inputTooLong: function (args){
var overChars=args.input.length - args.maximum;
var message='Please delete ' + overChars + ' character';
if(overChars!=1){
message +='s';
}
return message;
},
inputTooShort: function (args){
var remainingChars=args.minimum - args.input.length;
var message='Please enter ' + remainingChars + ' or more characters';
return message;
},
loadingMore: function (){
return 'Loading more results…';
},
maximumSelected: function (args){
var message='You can only select ' + args.maximum + ' item';
if(args.maximum!=1){
message +='s';
}
return message;
},
noResults: function (){
return 'No results found';
},
searching: function (){
return 'Searching…';
}};}
);
S2.define('select2/defaults',
[
'jquery',
'require',
'./results',
'./selection/single',
'./selection/multiple',
'./selection/placeholder',
'./selection/allowClear',
'./selection/search',
'./selection/eventRelay',
'./utils',
'./translation',
'./diacritics',
'./data/select',
'./data/array',
'./data/ajax',
'./data/tags',
'./data/tokenizer',
'./data/minimumInputLength',
'./data/maximumInputLength',
'./data/maximumSelectionLength',
'./dropdown',
'./dropdown/search',
'./dropdown/hidePlaceholder',
'./dropdown/infiniteScroll',
'./dropdown/attachBody',
'./dropdown/minimumResultsForSearch',
'./dropdown/selectOnClose',
'./dropdown/closeOnSelect',
'./i18n/en'
],
function ($, require,
ResultsList,
SingleSelection, MultipleSelection, Placeholder, AllowClear,
SelectionSearch, EventRelay,
Utils, Translation, DIACRITICS,
SelectData, ArrayData, AjaxData, Tags, Tokenizer,
MinimumInputLength, MaximumInputLength, MaximumSelectionLength,
Dropdown, DropdownSearch, HidePlaceholder, InfiniteScroll,
AttachBody, MinimumResultsForSearch, SelectOnClose, CloseOnSelect,
EnglishTranslation
){
function Defaults(){
this.reset();
}
Defaults.prototype.apply=function (options){
options=$.extend({}, this.defaults, options);
if(options.dataAdapter==null){
if(options.ajax!=null){
options.dataAdapter=AjaxData;
}else if(options.data!=null){
options.dataAdapter=ArrayData;
}else{
options.dataAdapter=SelectData;
}
if(options.minimumInputLength > 0){
options.dataAdapter=Utils.Decorate(options.dataAdapter,
MinimumInputLength
);
}
if(options.maximumInputLength > 0){
options.dataAdapter=Utils.Decorate(options.dataAdapter,
MaximumInputLength
);
}
if(options.maximumSelectionLength > 0){
options.dataAdapter=Utils.Decorate(options.dataAdapter,
MaximumSelectionLength
);
}
if(options.tags){
options.dataAdapter=Utils.Decorate(options.dataAdapter, Tags);
}
if(options.tokenSeparators!=null||options.tokenizer!=null){
options.dataAdapter=Utils.Decorate(options.dataAdapter,
Tokenizer
);
}
if(options.query!=null){
var Query=require(options.amdBase + 'compat/query');
options.dataAdapter=Utils.Decorate(options.dataAdapter,
Query
);
}
if(options.initSelection!=null){
var InitSelection=require(options.amdBase + 'compat/initSelection');
options.dataAdapter=Utils.Decorate(options.dataAdapter,
InitSelection
);
}}
if(options.resultsAdapter==null){
options.resultsAdapter=ResultsList;
if(options.ajax!=null){
options.resultsAdapter=Utils.Decorate(options.resultsAdapter,
InfiniteScroll
);
}
if(options.placeholder!=null){
options.resultsAdapter=Utils.Decorate(options.resultsAdapter,
HidePlaceholder
);
}
if(options.selectOnClose){
options.resultsAdapter=Utils.Decorate(options.resultsAdapter,
SelectOnClose
);
}}
if(options.dropdownAdapter==null){
if(options.multiple){
options.dropdownAdapter=Dropdown;
}else{
var SearchableDropdown=Utils.Decorate(Dropdown, DropdownSearch);
options.dropdownAdapter=SearchableDropdown;
}
if(options.minimumResultsForSearch!==0){
options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,
MinimumResultsForSearch
);
}
if(options.closeOnSelect){
options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,
CloseOnSelect
);
}
if(options.dropdownCssClass!=null
|| options.dropdownCss!=null
|| options.adaptDropdownCssClass!=null
){
var DropdownCSS=require(options.amdBase + 'compat/dropdownCss');
options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,
DropdownCSS
);
}
options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,
AttachBody
);
}
if(options.selectionAdapter==null){
if(options.multiple){
options.selectionAdapter=MultipleSelection;
}else{
options.selectionAdapter=SingleSelection;
}
if(options.placeholder!=null){
options.selectionAdapter=Utils.Decorate(options.selectionAdapter,
Placeholder
);
}
if(options.allowClear){
options.selectionAdapter=Utils.Decorate(options.selectionAdapter,
AllowClear
);
}
if(options.multiple){
options.selectionAdapter=Utils.Decorate(options.selectionAdapter,
SelectionSearch
);
}
if(options.containerCssClass!=null
|| options.containerCss!=null
|| options.adaptContainerCssClass!=null
){
var ContainerCSS=require(options.amdBase + 'compat/containerCss');
options.selectionAdapter=Utils.Decorate(options.selectionAdapter,
ContainerCSS
);
}
options.selectionAdapter=Utils.Decorate(options.selectionAdapter,
EventRelay
);
}
if(typeof options.language==='string'){
if(options.language.indexOf('-') > 0){
var languageParts=options.language.split('-');
var baseLanguage=languageParts[0];
options.language=[options.language, baseLanguage];
}else{
options.language=[options.language];
}}
if($.isArray(options.language)){
var languages=new Translation();
options.language.push('en');
var languageNames=options.language;
for (var l=0; l < languageNames.length; l++){
var name=languageNames[l];
var language={};
try {
language=Translation.loadPath(name);
} catch (e){
try {
name=this.defaults.amdLanguageBase + name;
language=Translation.loadPath(name);
} catch (ex){
if(options.debug&&window.console&&console.warn){
console.warn('Select2: The language file for "' + name + '" could not be ' +
'automatically loaded. A fallback will be used instead.'
);
}
continue;
}}
languages.extend(language);
}
options.translations=languages;
}else{
var baseTranslation=Translation.loadPath(this.defaults.amdLanguageBase + 'en'
);
var customTranslation=new Translation(options.language);
customTranslation.extend(baseTranslation);
options.translations=customTranslation;
}
return options;
};
Defaults.prototype.reset=function (){
function stripDiacritics(text){
function match(a){
return DIACRITICS[a]||a;
}
return text.replace(/[^\u0000-\u007E]/g, match);
}
function matcher(params, data){
if($.trim(params.term)===''){
return data;
}
if(data.children&&data.children.length > 0){
var match=$.extend(true, {}, data);
for (var c=data.children.length - 1; c >=0; c--){
var child=data.children[c];
var matches=matcher(params, child);
if(matches==null){
match.children.splice(c, 1);
}}
if(match.children.length > 0){
return match;
}
return matcher(params, match);
}
var original=stripDiacritics(data.text).toUpperCase();
var term=stripDiacritics(params.term).toUpperCase();
if(original.indexOf(term) > -1){
return data;
}
return null;
}
this.defaults={
amdBase: './',
amdLanguageBase: './i18n/',
closeOnSelect: true,
debug: false,
dropdownAutoWidth: false,
escapeMarkup: Utils.escapeMarkup,
language: EnglishTranslation,
matcher: matcher,
minimumInputLength: 0,
maximumInputLength: 0,
maximumSelectionLength: 0,
minimumResultsForSearch: 0,
selectOnClose: false,
sorter: function (data){
return data;
},
templateResult: function (result){
return result.text;
},
templateSelection: function (selection){
return selection.text;
},
theme: 'default',
width: 'resolve'
};};
Defaults.prototype.set=function (key, value){
var camelKey=$.camelCase(key);
var data={};
data[camelKey]=value;
var convertedData=Utils._convertData(data);
$.extend(this.defaults, convertedData);
};
var defaults=new Defaults();
return defaults;
}
);
S2.define('select2/options',
[
'require',
'jquery',
'./defaults',
'./utils'
],
function (require, $, Defaults, Utils){
function Options(options, $element){
this.options=options;
if($element!=null){
this.fromElement($element);
}
this.options=Defaults.apply(this.options);
if($element&&$element.is('input')){
var InputCompat=require(this.get('amdBase') + 'compat/inputData');
this.options.dataAdapter=Utils.Decorate(this.options.dataAdapter,
InputCompat
);
}}
Options.prototype.fromElement=function ($e){
var excludedData=['select2'];
if(this.options.multiple==null){
this.options.multiple=$e.prop('multiple');
}
if(this.options.disabled==null){
this.options.disabled=$e.prop('disabled');
}
if(this.options.language==null){
if($e.prop('lang')){
this.options.language=$e.prop('lang').toLowerCase();
}else if($e.closest('[lang]').prop('lang')){
this.options.language=$e.closest('[lang]').prop('lang');
}}
if(this.options.dir==null){
if($e.prop('dir')){
this.options.dir=$e.prop('dir');
}else if($e.closest('[dir]').prop('dir')){
this.options.dir=$e.closest('[dir]').prop('dir');
}else{
this.options.dir='ltr';
}}
$e.prop('disabled', this.options.disabled);
$e.prop('multiple', this.options.multiple);
if($e.data('select2Tags')){
if(this.options.debug&&window.console&&console.warn){
console.warn('Select2: The `data-select2-tags` attribute has been changed to ' +
'use the `data-data` and `data-tags="true"` attributes and will be ' +
'removed in future versions of Select2.'
);
}
$e.data('data', $e.data('select2Tags') );
$e.data('tags', true);
}
if($e.data('ajaxUrl')){
if(this.options.debug&&window.console&&console.warn){
console.warn('Select2: The `data-ajax-url` attribute has been changed to ' +
'`data-ajax--url` and support for the old attribute will be removed' +
' in future versions of Select2.'
);
}
$e.attr('ajax--url', $e.data('ajaxUrl') );
$e.data('ajax--url', $e.data('ajaxUrl') );
}
var dataset={};
if($.fn.jquery&&$.fn.jquery.substr(0, 2)=='1.'&&$e[0].dataset){
dataset=$.extend(true, {}, $e[0].dataset, $e.data());
}else{
dataset=$e.data();
}
var data=$.extend(true, {}, dataset);
data=Utils._convertData(data);
for (var key in data){
if($.inArray(key, excludedData) > -1){
continue;
}
if($.isPlainObject(this.options[key])){
$.extend(this.options[key], data[key]);
}else{
this.options[key]=data[key];
}}
return this;
};
Options.prototype.get=function (key){
return this.options[key];
};
Options.prototype.set=function (key, val){
this.options[key]=val;
};
return Options;
}
);
S2.define('select2/core',
[
'jquery',
'./options',
'./utils',
'./keys'
],
function ($, Options, Utils, KEYS){
var Select2=function ($element, options){
if($element.data('select2')!=null){
$element.data('select2').destroy();
}
this.$element=$element;
this.id=this._generateId($element);
options=options||{};
this.options=new Options(options, $element);
Select2.__super__.constructor.call(this);
var tabindex=$element.attr('tabindex')||0;
$element.data('old-tabindex', tabindex);
$element.attr('tabindex', '-1');
var DataAdapter=this.options.get('dataAdapter');
this.dataAdapter=new DataAdapter($element, this.options);
var $container=this.render();
this._placeContainer($container);
var SelectionAdapter=this.options.get('selectionAdapter');
this.selection=new SelectionAdapter($element, this.options);
this.$selection=this.selection.render();
this.selection.position(this.$selection, $container);
var DropdownAdapter=this.options.get('dropdownAdapter');
this.dropdown=new DropdownAdapter($element, this.options);
this.$dropdown=this.dropdown.render();
this.dropdown.position(this.$dropdown, $container);
var ResultsAdapter=this.options.get('resultsAdapter');
this.results=new ResultsAdapter($element, this.options, this.dataAdapter);
this.$results=this.results.render();
this.results.position(this.$results, this.$dropdown);
var self=this;
this._bindAdapters();
this._registerDomEvents();
this._registerDataEvents();
this._registerSelectionEvents();
this._registerDropdownEvents();
this._registerResultsEvents();
this._registerEvents();
this.dataAdapter.current(function (initialData){
self.trigger('selection:update',
{
data: initialData
}
);
}
);
$element.addClass('select2-hidden-accessible');
$element.attr('aria-hidden', 'true');
this._syncAttributes();
$element.data('select2', this);
};
Utils.Extend(Select2, Utils.Observable);
Select2.prototype._generateId=function ($element){
var id='';
if($element.attr('id')!=null){
id=$element.attr('id');
}else if($element.attr('name')!=null){
id=$element.attr('name') + '-' + Utils.generateChars(2);
}else{
id=Utils.generateChars(4);
}
id='select2-' + id;
return id;
};
Select2.prototype._placeContainer=function ($container){
$container.insertAfter(this.$element);
var width=this._resolveWidth(this.$element, this.options.get('width') );
if(width!=null){
$container.css('width', width);
}};
Select2.prototype._resolveWidth=function ($element, method){
var WIDTH=/^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i;
if(method=='resolve'){
var styleWidth=this._resolveWidth($element, 'style');
if(styleWidth!=null){
return styleWidth;
}
return this._resolveWidth($element, 'element');
}
if(method=='element'){
var elementWidth=$element.outerWidth(false);
if(elementWidth <=0){
return 'auto';
}
return elementWidth + 'px';
}
if(method=='style'){
var style=$element.attr('style');
if(typeof(style)!=='string'){
return null;
}
var attrs=style.split(';');
for (var i=0, l=attrs.length; i < l; i=i + 1){
var attr=attrs[i].replace(/\s/g, '');
var matches=attr.match(WIDTH);
if(matches!==null&&matches.length >=1){
return matches[1];
}}
return null;
}
return method;
};
Select2.prototype._bindAdapters=function (){
this.dataAdapter.bind(this, this.$container);
this.selection.bind(this, this.$container);
this.dropdown.bind(this, this.$container);
this.results.bind(this, this.$container);
};
Select2.prototype._registerDomEvents=function (){
var self=this;
this.$element.on('change.select2',
function (){
self.dataAdapter.current(function (data){
self.trigger('selection:update',
{
data: data
}
);
}
);
}
);
this._sync=Utils.bind(this._syncAttributes, this);
if(this.$element[0].attachEvent){
this.$element[0].attachEvent('onpropertychange', this._sync);
}
var observer=window.MutationObserver ||
window.WebKitMutationObserver ||
window.MozMutationObserver;
if(observer!=null){
this._observer=new observer(
function (mutations){
$.each(mutations, self._sync);
}
);
this._observer.observe(this.$element[0],
{
attributes: true,
subtree: false
}
);
}else if(this.$element[0].addEventListener){
this.$element[0].addEventListener('DOMAttrModified', self._sync, false);
}};
Select2.prototype._registerDataEvents=function (){
var self=this;
this.dataAdapter.on('*',
function (name, params){
self.trigger(name, params);
}
);
};
Select2.prototype._registerSelectionEvents=function (){
var self=this;
var nonRelayEvents=['toggle'];
this.selection.on('toggle',
function (){
self.toggleDropdown();
}
);
this.selection.on('*',
function (name, params){
if($.inArray(name, nonRelayEvents)!==-1){
return;
}
self.trigger(name, params);
}
);
};
Select2.prototype._registerDropdownEvents=function (){
var self=this;
this.dropdown.on('*',
function (name, params){
self.trigger(name, params);
}
);
};
Select2.prototype._registerResultsEvents=function (){
var self=this;
this.results.on('*',
function (name, params){
self.trigger(name, params);
}
);
};
Select2.prototype._registerEvents=function (){
var self=this;
this.on('open',
function (){
self.$container.addClass('select2-container--open');
}
);
this.on('close',
function (){
self.$container.removeClass('select2-container--open');
}
);
this.on('enable',
function (){
self.$container.removeClass('select2-container--disabled');
}
);
this.on('disable',
function (){
self.$container.addClass('select2-container--disabled');
}
);
this.on('focus',
function (){
self.$container.addClass('select2-container--focus');
}
);
this.on('blur',
function (){
self.$container.removeClass('select2-container--focus');
}
);
this.on('query',
function (params){
if(! self.isOpen()){
self.trigger('open');
}
this.dataAdapter.query(params,
function (data){
self.trigger('results:all',
{
data: data,
query: params
}
);
}
);
}
);
this.on('query:append',
function (params){
this.dataAdapter.query(params,
function (data){
self.trigger('results:append',
{
data: data,
query: params
}
);
}
);
}
);
this.on('keypress',
function (evt){
var key=evt.which;
if(self.isOpen()){
if(key===KEYS.ENTER){
self.trigger('results:select');
evt.preventDefault();
}else if((key===KEYS.SPACE&&evt.ctrlKey)){
self.trigger('results:toggle');
evt.preventDefault();
}else if(key===KEYS.UP){
self.trigger('results:previous');
evt.preventDefault();
}else if(key===KEYS.DOWN){
self.trigger('results:next');
evt.preventDefault();
}else if(key===KEYS.ESC||key===KEYS.TAB){
self.close();
evt.preventDefault();
}}else{
if(key===KEYS.ENTER||key===KEYS.SPACE
|| ((key===KEYS.DOWN||key===KEYS.UP)&&evt.altKey)
){
self.open();
evt.preventDefault();
}}
}
);
};
Select2.prototype._syncAttributes=function (){
this.options.set('disabled', this.$element.prop('disabled') );
if(this.options.get('disabled')){
if(this.isOpen()){
this.close();
}
this.trigger('disable');
}else{
this.trigger('enable');
}};
Select2.prototype.trigger=function (name, args){
var actualTrigger=Select2.__super__.trigger;
var preTriggerMap={
'open': 'opening',
'close': 'closing',
'select': 'selecting',
'unselect': 'unselecting'
};
if(name in preTriggerMap){
var preTriggerName=preTriggerMap[name];
var preTriggerArgs={
prevented: false,
name: name,
args: args
};
actualTrigger.call(this, preTriggerName, preTriggerArgs);
if(preTriggerArgs.prevented){
args.prevented=true;
return;
}}
actualTrigger.call(this, name, args);
};
Select2.prototype.toggleDropdown=function (){
if(this.options.get('disabled')){
return;
}
if(this.isOpen()){
this.close();
}else{
this.open();
}};
Select2.prototype.open=function (){
if(this.isOpen()){
return;
}
this.trigger('query', {});
this.trigger('open');
};
Select2.prototype.close=function (){
if(! this.isOpen()){
return;
}
this.trigger('close');
};
Select2.prototype.isOpen=function (){
return this.$container.hasClass('select2-container--open');
};
Select2.prototype.enable=function (args){
if(this.options.get('debug')&&window.console&&console.warn){
console.warn('Select2: The `select2("enable")` method has been deprecated and will' +
' be removed in later Select2 versions. Use $element.prop("disabled")' +
' instead.'
);
}
if(args==null||args.length===0){
args=[true];
}
var disabled = ! args[0];
this.$element.prop('disabled', disabled);
};
Select2.prototype.data=function (){
if(this.options.get('debug')
&& arguments.length > 0&&window.console&&console.warn
){
console.warn('Select2: Data can no longer be set using `select2("data")`. You ' +
'should consider setting the value instead using `$element.val()`.'
);
}
var data=[];
this.dataAdapter.current(function (currentData){
data=currentData;
}
);
return data;
};
Select2.prototype.val=function (args){
if(this.options.get('debug')&&window.console&&console.warn){
console.warn('Select2: The `select2("val")` method has been deprecated and will be' +
' removed in later Select2 versions. Use $element.val() instead.'
);
}
if(args==null||args.length===0){
return this.$element.val();
}
var newVal=args[0];
if($.isArray(newVal)){
newVal=$.map(newVal,
function (obj){
return obj.toString();
}
);
}
this.$element.val(newVal).trigger('change');
};
Select2.prototype.destroy=function (){
this.$container.remove();
if(this.$element[0].detachEvent){
this.$element[0].detachEvent('onpropertychange', this._sync);
}
if(this._observer!=null){
this._observer.disconnect();
this._observer=null;
}else if(this.$element[0].removeEventListener){
this.$element[0]
.removeEventListener('DOMAttrModified', this._sync, false);
}
this._sync=null;
this.$element.off('.select2');
this.$element.attr('tabindex', this.$element.data('old-tabindex') );
this.$element.removeClass('select2-hidden-accessible');
this.$element.attr('aria-hidden', 'false');
this.$element.removeData('select2');
this.dataAdapter.destroy();
this.selection.destroy();
this.dropdown.destroy();
this.results.destroy();
this.dataAdapter=null;
this.selection=null;
this.dropdown=null;
this.results=null;
};
Select2.prototype.render=function (){
var $container=$(
'<span class="select2 select2-container">' +
'<span class="selection"></span>' +
'<span class="dropdown-wrapper" aria-hidden="true"></span>' +
'</span>'
);
$container.attr('dir', this.options.get('dir') );
this.$container=$container;
this.$container.addClass('select2-container--' + this.options.get('theme') );
$container.data('element', this.$element);
return $container;
};
return Select2;
}
);
S2.define('jquery.select2',
[
'jquery',
'require',
'./select2/core',
'./select2/defaults'
],
function ($, require, Select2, Defaults){
require('jquery.mousewheel');
if($.fn.select2==null){
var thisMethods=['open', 'close', 'destroy'];
$.fn.select2=function (options){
options=options||{};
if(typeof options==='object'){
this.each(function (){
var instanceOptions=$.extend({}, options, true);
var instance=new Select2($(this), instanceOptions);
}
);
return this;
}else if(typeof options==='string'){
var instance=this.data('select2');
if(instance==null&&window.console&&console.error){
console.error('The select2(\'' + options + '\') method was called on an ' +
'element that is not using Select2.'
);
}
var args=Array.prototype.slice.call(arguments, 1);
var ret=instance[options](args);
if($.inArray(options, thisMethods) > -1){
return this;
}
return ret;
}else{
throw new Error('Invalid arguments for Select2: ' + options);
}};}
if($.fn.select2.defaults==null){
$.fn.select2.defaults=Defaults;
}
return Select2;
}
);
S2.define('jquery.mousewheel',
[
'jquery'
],
function ($){
return $;
}
);
return {
define: S2.define,
require: S2.require
};}());
var select2=S2.require('jquery.select2');
jQuery.fn.select2.amd=S2;
return select2;
}));
jQuery(document).ready(function($){
$('.woocommerce-error li').each(function (){
if($(this).text().includes('PayPal Subscription')){
$(this).remove();
if(!$('.woocommerce-error li').length){
$('.woocommerce-error').remove();
}}
});
$('.woocommerce-error').show();
jQuery(".subscription-details").text("Billed annually");
jQuery('.modal').on('click',function(event){
jQuery('.lg-backdrop.in').css("opacity", "0");
jQuery('.lg-outer.lg-visible').css("opacity", "0");
jQuery('.lg-backdrop.in').fadeOut();
jQuery('.lg-outer.lg-visible').fadeOut();
jQuery("body").removeClass("lg-on");
});
jQuery('.ady-close-btn').on('click',function(event){
jQuery('.lg-backdrop.in').css("opacity", "0");
jQuery('.lg-outer.lg-visible').css("opacity", "0");
});
$('[data-fancybox="gallery"]').fancybox({
});
});
jQuery(document).ready(function($){
$('.ady-cat-item a.add_to_cart_button').text('Buy Now');
$('.ady-search-item a.add_to_cart_button').text('Buy Now');
$('.ady-magento-cat-section .ady-pro-price .from').text('');
});
jQuery(document).ready(function($){
$("#review-sorting").change(function(){
var sortingMethod=$(this).val();
if(sortingMethod==="newest"){
$(".review-and-comment li").sort(function(a, b){
return new Date($(b).attr("data-date")) - new Date($(a).attr("data-date"));
}).appendTo(".review-and-comment");
}else if(sortingMethod==="oldest"){
$(".review-and-comment li").sort(function(a, b){
return new Date($(a).attr("data-date")) - new Date($(b).attr("data-date"));
}).appendTo(".review-and-comment");
}else if(sortingMethod==="rating_high"){
$(".review-and-comment li").sort(function(a, b){
return $(b).attr("data-rating") - $(a).attr("data-rating");
}).appendTo(".review-and-comment");
}else if(sortingMethod==="rating_low"){
$(".review-and-comment li").sort(function(a, b){
return $(a).attr("data-rating") - $(b).attr("data-rating");
}).appendTo(".review-and-comment");
}
$(".reviews .review").show();
});
});
jQuery(document).ready(function($){
function incrementCounter(element, target){
const speed=100;
const increment=target / speed;
let current=0;
const updateCounter=()=> {
current +=increment;
if(current < target){
if(target >=1000){
element.text((Math.ceil(current / 1000)) + 'k+');
}else{
element.text(Math.ceil(current) + '+');
}
requestAnimationFrame(updateCounter);
}else{
if(target >=1000){
element.text((target / 1000) + 'k+');
}else{
element.text(target + '+');
}}
};
updateCounter();
}
function isInViewport(element){
const rect=element[0].getBoundingClientRect();
return (
rect.top >=0 &&
rect.left >=0 &&
rect.bottom <=(window.innerHeight||document.documentElement.clientHeight) &&
rect.right <=(window.innerWidth||document.documentElement.clientWidth)
);
}
function handleScroll(){
$('.counter').each(function(){
const counterElement=$(this);
if(isInViewport(counterElement)&&!counterElement.hasClass('counted')){
const target=parseInt(counterElement.data('target'));
incrementCounter(counterElement, target);
counterElement.addClass('counted');
}});
}
$(window).on('scroll', handleScroll);
handleScroll();
});
jQuery(document).ready(function($){
if(window.location.hash){
var hash=window.location.hash;
var target=$(hash);
if(target.length){
var stickyHeaderHeight=80;
var scrollPosition=target.offset().top - stickyHeaderHeight;
$('html, body').animate({
scrollTop: scrollPosition
}, 1000, function(){
history.replaceState(null, null, window.location.pathname);
location.reload();
});
}}
setTimeout(function(){
if($('#payment_method_stripe').css('display')=='none'){
$('.payment_box.payment_method_stripe').addClass('new-user');
}else{
$('.payment_box.payment_method_stripe').removeClass('new-use');
}}, 3000);
});
jQuery(document).ready(function($){
$(document).on('click', '#adf-tabs-list ul li a', function(event){
event.preventDefault();
$('#adf-tabs-list ul li').removeClass('active');
$(this).parent().addClass('active');
var targetId=$(this).attr('href');
});
var plugin_url=addify_phpvars.admin_url;
var nonce=addify_phpvars.nonce;
function initSelect2(searchCategory){
$('.grouped-product-item .select-product').select2({
placeholder: 'Search for products',
ajax: {
url: plugin_url,
dataType: 'json',
delay: 250,
data: function(params){
return {
q: params.term,
search_category: searchCategory,
action: 'product_search',
nonce: nonce
};},
processResults: function(data){
const selectedProductIds=$('.select-product').map(function(){
return $(this).val();
}).get().filter(val=> val);
const filteredData=data.filter(product=> !selectedProductIds.includes(product.id));
return {
results: filteredData
};},
cache: true
}})
.on('select2:selecting', function(e){
const newId=e.params.args.data.id;
let isDuplicate=false;
$('.select-product').not(this).each(function(){
if($(this).val()==newId){
isDuplicate=true;
return false;
}});
if(isDuplicate){
alert("This product is already selected in the bundle.");
e.preventDefault();
}})
.on('select2:select', function(){
$('.grouped-product-item ').find('.adf-popup-select-wrap').removeClass('active');
});
}
var searchCategory=$('.select_bundle_category select').val();
initSelect2(searchCategory);
$('.select_bundle_category select').on('change', function(){
var $wrapper=$('#selected-products-wrapper');
$wrapper.empty();
searchCategory=$(this).val();
$('.grouped-product-item .select-product').select2('destroy');
initSelect2(searchCategory);
$('.adf-own-bundle-product li .selected-product-details').html(`
<div class="adf-product-empty">
<i class="fa fa-plus" aria-hidden="true"></i>
</div>
<span class="adf-product-add-drag">Add Product</span>
`);
$('.total-price del').text('$' + 0);
$('.adf-product-total-detail .after-discount span').text('$' + 0);
});
});
jQuery(document).ready(function($){
$('.adf-subscription-variable-form #adf_subscribtion_add_to_cart').on('click', function(e){
e.preventDefault();
var button=$(this);
var cartUrl=addify_phpvars.cart_url;
var checkoutUrl=addify_phpvars.checkout_url;
var nonce=addify_phpvars.nonce;
var productID=button.closest('.adf-subscription-variable-form').find('input[name="product_id"]').val();
var variationID=button.closest('.adf-subscription-variable-form').find('input[name="variation_id"]').val();
$.ajax({
type: 'POST',
url: addify_phpvars.admin_url,
data: {
action: 'adf_subscribtion_add_to_cart',
product_id: productID,
variation_id: variationID,
nonce: nonce
},
beforeSend: function(){
button.prop('disabled', true).text('Adding...');
},
success: function(response){
if(response.success){
$('.woocommerce-notices-wrapper').append('<div class="woocommerce-message" role="alert"><a href="'+checkoutUrl+'" tabindex="1" class="button wc-forward">Checkout</a>' + response.data.message + '<a href="'+cartUrl+'" class="button wc-forward">View cart</a></div>');
$(document.body).trigger('wc_add_to_cart');
$('html, body').animate({ scrollTop: 0 }, 'slow');
$('.cart-count').text(response.data.cart_count);
}else{
$('.woocommerce-notices-wrapper').append('<div class="woocommerce-error" role="alert">' + response.data.message + '</div>');
$('html, body').animate({ scrollTop: 0 }, 'slow');
}},
complete: function(){
button.prop('disabled', false).text('BUY NOW');
}});
});
});
jQuery(document).ready(function($){
var defaultVariation=$('form.variations_form select').first();
if(defaultVariation.length){
defaultVariation.val(defaultVariation.find('option:eq(1)').val()).change();
var defaultRadio=$('input[type="radio"][name="attribute_pa_plan"][value="two-year-plan"]');
if(defaultRadio.length){
defaultRadio.prop('checked', true).trigger('change');
$('form.variations_form').trigger('check_variations');
}}
var defaultRadio=$('.ady-product-subscription-plans input[name="adf-plan-button"]:checked');
if(defaultRadio){
defaultRadio.closest('.ady-product-subscription-plans__list').addClass('active');
}
if(!defaultRadio.length){
defaultRadio=$('.ady-product-subscription-plans input[name="adf-plan-button"]').first();
defaultRadio.prop('checked', true);
defaultRadio.closest('.ady-product-subscription-plans__list').addClass('active');
}
defaultRadio.trigger('change');
$('.ady-product-subscription-plans input[name="adf-plan-button"]').on('change', function(){
$(this).prop('checked');
var selectedProductId=$(this).val();
var currentPlan=$(this).closest('.ady-product-subscription-plans__list');
var currentPlanText=$(this).closest('.ady-product-custom-fields').find('ul li');
$('.ady-product-subscription-plans__list').removeClass('active');
currentPlan.addClass('active');
var selectedPlanType=$(this).attr('data-planType');
var selectedPlanFive=$(this).closest('.ady-radio-button').find('label').attr('data-plan');
var pricehtml=$(this).closest('.ady-product-subscription-plans__list').find('.adf-dublicate-product-price').html();
if(selectedPlanType=='two-year'&&selectedPlanFive=='2-year'){
$('.ady-product-custom-fields .price .ady-base-price').html(pricehtml);
$('.ady-product-custom-fields .price .ady-base-price .adf-annualy-label').text('Billed every 2 year at ');
currentPlanText.eq(0).text("2 year free support");
currentPlanText.eq(1).text("2 year extension updates");
}else if(selectedPlanType=='two-year'&&selectedPlanFive=='five-year'){
$('.ady-product-custom-fields .price .ady-base-price').html(pricehtml);
$('.ady-product-custom-fields .price .ady-base-price .adf-annualy-label').text('Billed every 2 year at ');
currentPlanText.eq(0).text("5 year free support");
currentPlanText.eq(1).text("5 year extension updates");
}else{
var defaultPrice=$('.ady-product-subscription-plans__list:first .adf-dublicate-product-price').html();
$('.ady-product-custom-fields .price .ady-base-price').html(defaultPrice);
currentPlanText.eq(0).text("1 year free support");
currentPlanText.eq(1).text("1 year extension updates");
}
var selectedVariationId=$(this).data('variation');
$('.adf-subscription-variable-form input[name="product_id"]').val(selectedProductId);
if(selectedVariationId){
$('.adf-subscription-variable-form input[name="variation_id"]').val(selectedVariationId);
}});
$('.add-to-cart-btn').on('click', function(e){
e.preventDefault();
var selectedPlan=$('input[name="adf-plan-button"]:checked').val();
var bundleId=$(this).data('bundle-id');
if(selectedPlan==bundleId){
var cartUrl='?add-to-cart=' + selectedPlan + '&add-to-cart=' + $(this).data('product-id');
}else{
var cartUrl='?add-to-cart=' + selectedPlan;
}});
var isQuantityChanged=false;
var currentQuantityValue=0;
$(document).on('click', '.quantity-plus, .quantity-minus', function(){
var $quantityInput=$(this).closest('.product-quantity').find('.qty');
var currentQuantity=parseInt($quantityInput.val());
var newQuantity=($(this).hasClass('quantity-plus')) ? currentQuantity + 1:Math.max(0, currentQuantity - 1);
$quantityInput.val(newQuantity);
isQuantityChanged=true;
enableUpdateButton();
});
$(document).on('input', '.qty', function(){
isQuantityChanged=true;
currentQuantityValue=parseInt($(this).val());
enableUpdateButton();
});
$(document).on('change', '.qty', function(){
isQuantityChanged=true;
currentQuantityValue=parseInt($(this).val());
enableUpdateButton();
});
function enableUpdateButton(){
$('button[name="update_cart"]').prop('disabled', !isQuantityChanged);
if(isQuantityChanged){
$('button[name="update_cart"]').trigger('click');
}}
var subscriptionTable=$('.shop_table.subscription_details');
heading=$('#subscription-detail-heading');
if(subscriptionTable.length){
subscriptionTable.before(heading);
subscriptionTable.add(heading).wrapAll('<div class="adf-subs-detail-wrapper"></div>');
}
var subscriptionTotalsHeading=$('h2:contains("Subscription totals")');
var orderDetailsTable=subscriptionTotalsHeading.next('table.shop_table.order_details');
if(subscriptionTotalsHeading.length&&orderDetailsTable.length){
subscriptionTotalsHeading.add(orderDetailsTable).wrapAll('<div class="adf-subs-total-wrap"></div>');
}
$(document).on('click', '.adf-product-empty', function(){
$(this).closest('.grouped-product-item ').find('.adf-popup-select-wrap').addClass('active');
});
$(document).on('click', '.adf-bundle-cross', function(){
$(this).closest('.grouped-product-item ').find('.adf-popup-select-wrap').removeClass('active');
});
$('.product-item').hide();
$('.product-item.cat-woocommerce-bundle').show();
$('.bundle-tabs .tab').on('click', function(){
var selectedCat=$(this).data('cat');
$('.bundle-tabs .tab').removeClass('active');
$(this).addClass('active');
$('.product-item').hide();
$('.product-item.cat-' + selectedCat).fadeIn();
});
$(document).on('click', '.adf-request-close', function(){
$(this).closest('.adf-qoute-request-wrap').removeClass('active');
$('body').removeClass('af-popup-active');
});
$(document).on('click', '.adf-customize-plugin', function(){
$(this).closest('.ady-action-links').find('.adf-qoute-request-wrap').addClass('active');
$('body').addClass('af-popup-active');
});
$(document).on('click', '.adf-demo-close', function(){
$(this).closest('.adf-demo-button-wrap').removeClass('active');
$('body').removeClass('af-popup-active');
});
$(document).on('click', '.adf-demo-button-prestashop', function(e){
e.preventDefault();
$(this).closest('.ady-action-links').find('.adf-demo-button-wrap').addClass('active');
$('body').addClass('af-popup-active');
});
$('#adf-feature-request-form').on('submit', function(e){
e.preventDefault();
var formData=new FormData(this);
formData.append('action', 'submit_custom_feature');
$.ajax({
url: addify_phpvars.admin_url,
type: 'POST',
data: formData,
contentType: false,
processData: false,
success: function(response){
$('.adf-qoute-request-wrap').removeClass('active');
if(response.success){
console.log(response.data.message);
$('.woocommerce-notices-wrapper').append('<div class="woocommerce-message" role="alert">' + response.data.message + '</div>');
$(document.body).trigger('wc_add_to_cart');
$('html, body').animate({ scrollTop: 0 }, 'slow');
$('.cart-count').text(response.data.cart_count);
}else{
$('.woocommerce-notices-wrapper').append('<div class="woocommerce-error" role="alert">' + response.data.message + '</div>');
$('html, body').animate({ scrollTop: 0 }, 'slow');
}},
error: function(){
alert('There was an error submitting the request.');
}});
});
});
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;"undefined"!=typeof window?t=window:"undefined"!=typeof global?t=global:"undefined"!=typeof self&&(t=self),t.sbjs=e()}}(function(){return function e(t,r,n){function a(s,o){if(!r[s]){if(!t[s]){var c="function"==typeof require&&require;if(!o&&c)return c(s,!0);if(i)return i(s,!0);var u=new Error("Cannot find module '"+s+"'");throw u.code="MODULE_NOT_FOUND",u}var p=r[s]={exports:{}};t[s][0].call(p.exports,function(e){var r=t[s][1][e];return a(r||e)},p,p.exports,e,t,r,n)}return r[s].exports}for(var i="function"==typeof require&&require,s=0;s<n.length;s++)a(n[s]);return a}({1:[function(e,t,r){"use strict";var n=e("./init"),a={init:function(e){this.get=n(e),e&&e.callback&&"function"==typeof e.callback&&e.callback(this.get)}};t.exports=a},{"./init":6}],2:[function(e,t,r){"use strict";var n=e("./terms"),a=e("./helpers/utils"),i={containers:{current:"sbjs_current",current_extra:"sbjs_current_add",first:"sbjs_first",first_extra:"sbjs_first_add",session:"sbjs_session",udata:"sbjs_udata",promocode:"sbjs_promo"},service:{migrations:"sbjs_migrations"},delimiter:"|||",aliases:{main:{type:"typ",source:"src",medium:"mdm",campaign:"cmp",content:"cnt",term:"trm",id:"id",platform:"plt",format:"fmt",tactic:"tct"},extra:{fire_date:"fd",entrance_point:"ep",referer:"rf"},session:{pages_seen:"pgs",current_page:"cpg"},udata:{visits:"vst",ip:"uip",agent:"uag"},promo:"code"},pack:{main:function(e){return i.aliases.main.type+"="+e.type+i.delimiter+i.aliases.main.source+"="+e.source+i.delimiter+i.aliases.main.medium+"="+e.medium+i.delimiter+i.aliases.main.campaign+"="+e.campaign+i.delimiter+i.aliases.main.content+"="+e.content+i.delimiter+i.aliases.main.term+"="+e.term+i.delimiter+i.aliases.main.id+"="+e.id+i.delimiter+i.aliases.main.platform+"="+e.platform+i.delimiter+i.aliases.main.format+"="+e.format+i.delimiter+i.aliases.main.tactic+"="+e.tactic},extra:function(e){return i.aliases.extra.fire_date+"="+a.setDate(new Date,e)+i.delimiter+i.aliases.extra.entrance_point+"="+document.location.href+i.delimiter+i.aliases.extra.referer+"="+(document.referrer||n.none)},user:function(e,t){return i.aliases.udata.visits+"="+e+i.delimiter+i.aliases.udata.ip+"="+t+i.delimiter+i.aliases.udata.agent+"="+navigator.userAgent},session:function(e){return i.aliases.session.pages_seen+"="+e+i.delimiter+i.aliases.session.current_page+"="+document.location.href},promo:function(e){return i.aliases.promo+"="+a.setLeadingZeroToInt(a.randomInt(e.min,e.max),e.max.toString().length)}}};t.exports=i},{"./helpers/utils":5,"./terms":9}],3:[function(e,t,r){"use strict";var n=e("../data").delimiter;t.exports={useBase64:!1,setBase64Flag:function(e){this.useBase64=e},encodeData:function(e){return encodeURIComponent(e).replace(/\!/g,"%21").replace(/\~/g,"%7E").replace(/\*/g,"%2A").replace(/\'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29")},decodeData:function(e){try{return decodeURIComponent(e).replace(/\%21/g,"!").replace(/\%7E/g,"~").replace(/\%2A/g,"*").replace(/\%27/g,"'").replace(/\%28/g,"(").replace(/\%29/g,")")}catch(t){try{return unescape(e)}catch(r){return""}}},set:function(e,t,r,n,a){var i,s;if(r){var o=new Date;o.setTime(o.getTime()+60*r*1e3),i="; expires="+o.toGMTString()}else i="";s=n&&!a?";domain=."+n:"";var c=this.encodeData(t);this.useBase64&&(c=btoa(c).replace(/=+$/,"")),document.cookie=this.encodeData(e)+"="+c+i+s+"; path=/"},get:function(e){for(var t=this.encodeData(e)+"=",r=document.cookie.split(";"),n=0;n<r.length;n++){for(var a=r[n];" "===a.charAt(0);)a=a.substring(1,a.length);if(0===a.indexOf(t)){var i=a.substring(t.length,a.length);if(/^[A-Za-z0-9+/]+$/.test(i))try{i=atob(i.padEnd(4*Math.ceil(i.length/4),"="))}catch(s){}return this.decodeData(i)}}return null},destroy:function(e,t,r){this.set(e,"",-1,t,r)},parse:function(e){var t=[],r={};if("string"==typeof e)t.push(e);else for(var a in e)e.hasOwnProperty(a)&&t.push(e[a]);for(var i=0;i<t.length;i++){var s;r[this.unsbjs(t[i])]={},s=this.get(t[i])?this.get(t[i]).split(n):[];for(var o=0;o<s.length;o++){var c=s[o].split("="),u=c.splice(0,1);u.push(c.join("=")),r[this.unsbjs(t[i])][u[0]]=this.decodeData(u[1])}}return r},unsbjs:function(e){return e.replace("sbjs_","")}}},{"../data":2}],4:[function(e,t,r){"use strict";t.exports={parse:function(e){for(var t=this.parseOptions,r=t.parser[t.strictMode?"strict":"loose"].exec(e),n={},a=14;a--;)n[t.key[a]]=r[a]||"";return n[t.q.name]={},n[t.key[12]].replace(t.q.parser,function(e,r,a){r&&(n[t.q.name][r]=a)}),n},parseOptions:{strictMode:!1,key:["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],q:{name:"queryKey",parser:/(?:^|&)([^&=]*)=?([^&]*)/g},parser:{strict:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/}},getParam:function(e){for(var t={},r=(e||window.location.search.substring(1)).split("&"),n=0;n<r.length;n++){var a=r[n].split("=");if("undefined"==typeof t[a[0]])t[a[0]]=a[1];else if("string"==typeof t[a[0]]){var i=[t[a[0]],a[1]];t[a[0]]=i}else t[a[0]].push(a[1])}return t},getHost:function(e){return this.parse(e).host.replace("www.","")}}},{}],5:[function(e,t,r){"use strict";t.exports={escapeRegexp:function(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},setDate:function(e,t){var r=e.getTimezoneOffset()/60,n=e.getHours(),a=t||0===t?t:-r;return e.setHours(n+r+a),e.getFullYear()+"-"+this.setLeadingZeroToInt(e.getMonth()+1,2)+"-"+this.setLeadingZeroToInt(e.getDate(),2)+" "+this.setLeadingZeroToInt(e.getHours(),2)+":"+this.setLeadingZeroToInt(e.getMinutes(),2)+":"+this.setLeadingZeroToInt(e.getSeconds(),2)},setLeadingZeroToInt:function(e,t){for(var r=e+"";r.length<t;)r="0"+r;return r},randomInt:function(e,t){return Math.floor(Math.random()*(t-e+1))+e}}},{}],6:[function(e,t,r){"use strict";var n=e("./data"),a=e("./terms"),i=e("./helpers/cookies"),s=e("./helpers/uri"),o=e("./helpers/utils"),c=e("./params"),u=e("./migrations");t.exports=function(e){var t,r,p,f,m,d,l,g,h,y,_,v,b,x=c.fetch(e),k=s.getParam(),w=x.domain.host,q=x.domain.isolate,I=x.lifetime;function j(e){switch(e){case a.traffic.utm:t=a.traffic.utm,r="undefined"!=typeof k.utm_source?k.utm_source:"undefined"!=typeof k.gclid?"google":"undefined"!=typeof k.yclid?"yandex":a.none,p="undefined"!=typeof k.utm_medium?k.utm_medium:"undefined"!=typeof k.gclid?"cpc":"undefined"!=typeof k.yclid?"cpc":a.none,f="undefined"!=typeof k.utm_campaign?k.utm_campaign:"undefined"!=typeof k[x.campaign_param]?k[x.campaign_param]:"undefined"!=typeof k.gclid?"google_cpc":"undefined"!=typeof k.yclid?"yandex_cpc":a.none,m="undefined"!=typeof k.utm_content?k.utm_content:"undefined"!=typeof k[x.content_param]?k[x.content_param]:a.none,l=k.utm_id||a.none,g=k.utm_source_platform||a.none,h=k.utm_creative_format||a.none,y=k.utm_marketing_tactic||a.none,d="undefined"!=typeof k.utm_term?k.utm_term:"undefined"!=typeof k[x.term_param]?k[x.term_param]:function(){var e=document.referrer;if(k.utm_term)return k.utm_term;if(!(e&&s.parse(e).host&&s.parse(e).host.match(/^(?:.*\.)?yandex\..{2,9}$/i)))return!1;try{return s.getParam(s.parse(document.referrer).query).text}catch(t){return!1}}()||a.none;break;case a.traffic.organic:t=a.traffic.organic,r=r||s.getHost(document.referrer),p=a.referer.organic,f=a.none,m=a.none,d=a.none,l=a.none,g=a.none,h=a.none,y=a.none;break;case a.traffic.referral:t=a.traffic.referral,r=r||s.getHost(document.referrer),p=p||a.referer.referral,f=a.none,m=s.parse(document.referrer).path,d=a.none,l=a.none,g=a.none,h=a.none,y=a.none;break;case a.traffic.typein:t=a.traffic.typein,r=x.typein_attributes.source,p=x.typein_attributes.medium,f=a.none,m=a.none,d=a.none,l=a.none,g=a.none,h=a.none,y=a.none;break;default:t=a.oops,r=a.oops,p=a.oops,f=a.oops,m=a.oops,d=a.oops,l=a.oops,g=a.oops,h=a.oops,y=a.oops}var i={type:t,source:r,medium:p,campaign:f,content:m,term:d,id:l,platform:g,format:h,tactic:y};return n.pack.main(i)}function R(e){var t=document.referrer;switch(e){case a.traffic.organic:return!!t&&H(t)&&function(e){var t=new RegExp("^(?:.*\\.)?"+o.escapeRegexp("yandex")+"\\..{2,9}$"),n=new RegExp(".*"+o.escapeRegexp("text")+"=.*"),a=new RegExp("^(?:www\\.)?"+o.escapeRegexp("google")+"\\..{2,9}$");if(s.parse(e).query&&s.parse(e).host.match(t)&&s.parse(e).query.match(n))return r="yandex",!0;if(s.parse(e).host.match(a))return r="google",!0;if(!s.parse(e).query)return!1;for(var i=0;i<x.organics.length;i++){if(s.parse(e).host.match(new RegExp("^(?:.*\\.)?"+o.escapeRegexp(x.organics[i].host)+"$","i"))&&s.parse(e).query.match(new RegExp(".*"+o.escapeRegexp(x.organics[i].param)+"=.*","i")))return r=x.organics[i].display||x.organics[i].host,!0;if(i+1===x.organics.length)return!1}}(t);case a.traffic.referral:return!!t&&H(t)&&function(e){if(!(x.referrals.length>0))return r=s.getHost(e),!0;for(var t=0;t<x.referrals.length;t++){if(s.parse(e).host.match(new RegExp("^(?:.*\\.)?"+o.escapeRegexp(x.referrals[t].host)+"$","i")))return r=x.referrals[t].display||x.referrals[t].host,p=x.referrals[t].medium||a.referer.referral,!0;if(t+1===x.referrals.length)return r=s.getHost(e),!0}}(t);default:return!1}}function H(e){if(x.domain){if(q)return s.getHost(e)!==s.getHost(w);var t=new RegExp("^(?:.*\\.)?"+o.escapeRegexp(w)+"$","i");return!s.getHost(e).match(t)}return s.getHost(e)!==s.getHost(document.location.href)}function D(){i.set(n.containers.current_extra,n.pack.extra(x.timezone_offset),I,w,q),i.get(n.containers.first_extra)||i.set(n.containers.first_extra,n.pack.extra(x.timezone_offset),I,w,q)}return i.setBase64Flag(x.base64),u.go(I,w,q),i.set(n.containers.current,function(){var e;if("undefined"!=typeof k.utm_source||"undefined"!=typeof k.utm_medium||"undefined"!=typeof k.utm_campaign||"undefined"!=typeof k.utm_content||"undefined"!=typeof k.utm_term||"undefined"!=typeof k.utm_id||"undefined"!=typeof k.utm_source_platform||"undefined"!=typeof k.utm_creative_format||"undefined"!=typeof k.utm_marketing_tactic||"undefined"!=typeof k.gclid||"undefined"!=typeof k.yclid||"undefined"!=typeof k[x.campaign_param]||"undefined"!=typeof k[x.term_param]||"undefined"!=typeof k[x.content_param])D(),e=j(a.traffic.utm);else if(R(a.traffic.organic))D(),e=j(a.traffic.organic);else if(!i.get(n.containers.session)&&R(a.traffic.referral))D(),e=j(a.traffic.referral);else{if(i.get(n.containers.first)||i.get(n.containers.current))return i.get(n.containers.current);D(),e=j(a.traffic.typein)}return e}(),I,w,q),i.get(n.containers.first)||i.set(n.containers.first,i.get(n.containers.current),I,w,q),i.get(n.containers.udata)?(_=parseInt(i.parse(n.containers.udata)[i.unsbjs(n.containers.udata)][n.aliases.udata.visits])||1,_=i.get(n.containers.session)?_:_+1,v=n.pack.user(_,x.user_ip)):(_=1,v=n.pack.user(_,x.user_ip)),i.set(n.containers.udata,v,I,w,q),i.get(n.containers.session)?(b=parseInt(i.parse(n.containers.session)[i.unsbjs(n.containers.session)][n.aliases.session.pages_seen])||1,b+=1):b=1,i.set(n.containers.session,n.pack.session(b),x.session_length,w,q),x.promocode&&!i.get(n.containers.promocode)&&i.set(n.containers.promocode,n.pack.promo(x.promocode),I,w,q),i.parse(n.containers)}},{"./data":2,"./helpers/cookies":3,"./helpers/uri":4,"./helpers/utils":5,"./migrations":7,"./params":8,"./terms":9}],7:[function(e,t,r){"use strict";var n=e("./data"),a=e("./helpers/cookies");t.exports={go:function(e,t,r){var i,s=this.migrations,o={l:e,d:t,i:r};if(a.get(n.containers.first)||a.get(n.service.migrations)){if(!a.get(n.service.migrations))for(i=0;i<s.length;i++)s[i].go(s[i].id,o)}else{var c=[];for(i=0;i<s.length;i++)c.push(s[i].id);var u="";for(i=0;i<c.length;i++)u+=c[i]+"=1",i<c.length-1&&(u+=n.delimiter);a.set(n.service.migrations,u,o.l,o.d,o.i)}},migrations:[{id:"1418474375998",version:"1.0.0-beta",go:function(e,t){var r=e+"=1",i=e+"=0",s=function(e,t,r){return t||r?e:n.delimiter};try{var o=[];for(var c in n.containers)n.containers.hasOwnProperty(c)&&o.push(n.containers[c]);for(var u=0;u<o.length;u++)if(a.get(o[u])){var p=a.get(o[u]).replace(/(\|)?\|(\|)?/g,s);a.destroy(o[u],t.d,t.i),a.destroy(o[u],t.d,!t.i),a.set(o[u],p,t.l,t.d,t.i)}a.get(n.containers.session)&&a.set(n.containers.session,n.pack.session(0),t.l,t.d,t.i),a.set(n.service.migrations,r,t.l,t.d,t.i)}catch(f){a.set(n.service.migrations,i,t.l,t.d,t.i)}}}]}},{"./data":2,"./helpers/cookies":3}],8:[function(e,t,r){"use strict";var n=e("./terms"),a=e("./helpers/uri");t.exports={fetch:function(e){var t=e||{},r={};if(r.lifetime=this.validate.checkFloat(t.lifetime)||6,r.lifetime=parseInt(30*r.lifetime*24*60),r.session_length=this.validate.checkInt(t.session_length)||30,r.timezone_offset=this.validate.checkInt(t.timezone_offset),r.base64=t.base64||!1,r.campaign_param=t.campaign_param||!1,r.term_param=t.term_param||!1,r.content_param=t.content_param||!1,r.user_ip=t.user_ip||n.none,t.promocode?(r.promocode={},r.promocode.min=parseInt(t.promocode.min)||1e5,r.promocode.max=parseInt(t.promocode.max)||999999):r.promocode=!1,t.typein_attributes&&t.typein_attributes.source&&t.typein_attributes.medium?(r.typein_attributes={},r.typein_attributes.source=t.typein_attributes.source,r.typein_attributes.medium=t.typein_attributes.medium):r.typein_attributes={source:"(direct)",medium:"(none)"},t.domain&&this.validate.isString(t.domain)?r.domain={host:t.domain,isolate:!1}:t.domain&&t.domain.host?r.domain=t.domain:r.domain={host:a.getHost(document.location.hostname),isolate:!1},r.referrals=[],t.referrals&&t.referrals.length>0)for(var i=0;i<t.referrals.length;i++)t.referrals[i].host&&r.referrals.push(t.referrals[i]);if(r.organics=[],t.organics&&t.organics.length>0)for(var s=0;s<t.organics.length;s++)t.organics[s].host&&t.organics[s].param&&r.organics.push(t.organics[s]);return r.organics.push({host:"bing.com",param:"q",display:"bing"}),r.organics.push({host:"yahoo.com",param:"p",display:"yahoo"}),r.organics.push({host:"about.com",param:"q",display:"about"}),r.organics.push({host:"aol.com",param:"q",display:"aol"}),r.organics.push({host:"ask.com",param:"q",display:"ask"}),r.organics.push({host:"globososo.com",param:"q",display:"globo"}),r.organics.push({host:"go.mail.ru",param:"q",display:"go.mail.ru"}),r.organics.push({host:"rambler.ru",param:"query",display:"rambler"}),r.organics.push({host:"tut.by",param:"query",display:"tut.by"}),r.referrals.push({host:"t.co",display:"twitter.com"}),r.referrals.push({host:"plus.url.google.com",display:"plus.google.com"}),r},validate:{checkFloat:function(e){return!(!e||!this.isNumeric(parseFloat(e)))&&parseFloat(e)},checkInt:function(e){return!(!e||!this.isNumeric(parseInt(e)))&&parseInt(e)},isNumeric:function(e){return!isNaN(e)},isString:function(e){return"[object String]"===Object.prototype.toString.call(e)}}}},{"./helpers/uri":4,"./terms":9}],9:[function(e,t,r){"use strict";t.exports={traffic:{utm:"utm",organic:"organic",referral:"referral",typein:"typein"},referer:{referral:"referral",organic:"organic",social:"social"},none:"(none)",oops:"(Houston, we have a problem)"}},{}]},{},[1])(1)});
!function(t){"use strict";const e=t.params,n=(document.querySelector.bind(document),(t,e)=>e.split(".").reduce((t,e)=>t&&t[e],t)),i=()=>null,s=t=>null===t||t===undefined?"":t,o="wc/store/checkout";function a(t){document.querySelectorAll("wc-order-attribution-inputs").forEach((t,e)=>{e>0&&t.remove()});for(const e of document.querySelectorAll("wc-order-attribution-inputs"))e.values=t}function r(t){window.wp&&window.wp.data&&window.wp.data.dispatch&&window.wc&&window.wc.wcBlocksData&&window.wp.data.dispatch(window.wc.wcBlocksData.CHECKOUT_STORE_KEY).setExtensionData("woocommerce/order-attribution",t,!0)}function c(){return"undefined"!=typeof sbjs}function d(){if(window.wp&&window.wp.data&&"function"==typeof window.wp.data.subscribe){const e=window.wp.data.subscribe(function(){e(),r(t.getAttributionData())},o)}}t.getAttributionData=function(){const s=e.allowTracking&&c()?n:i,o=c()?sbjs.get:{},a=Object.entries(t.fields).map(([t,e])=>[t,s(o,e)]);return Object.fromEntries(a)},t.setOrderTracking=function(n){if(e.allowTracking=n,n){if(!c())return;sbjs.init({lifetime:Number(e.lifetime),session_length:Number(e.session),base64:Boolean(e.base64),timezone_offset:"0"})}else!function(){const t=window.location.hostname;["sbjs_current","sbjs_current_add","sbjs_first","sbjs_first_add","sbjs_session","sbjs_udata","sbjs_migrations","sbjs_promo"].forEach(e=>{document.cookie=`${e}=; path=/; max-age=-999; domain=.${t};`})}();const i=t.getAttributionData();a(i),r(i)},t.setOrderTracking(e.allowTracking),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",d):d(),window.customElements.define("wc-order-attribution-inputs",class extends HTMLElement{constructor(){if(super(),this._fieldNames=Object.keys(t.fields),this.hasOwnProperty("_values")){let t=this.values;delete this.values,this.values=t||{}}}connectedCallback(){this.innerHTML="";const t=new DocumentFragment;for(const n of this._fieldNames){const i=document.createElement("input");i.type="hidden",i.name=`${e.prefix}${n}`,i.value=s(this.values&&this.values[n]||""),t.appendChild(i)}this.appendChild(t)}set values(t){if(this._values=t,this.isConnected)for(const t of this._fieldNames){const n=this.querySelector(`input[name="${e.prefix}${t}"]`);n?n.value=s(this.values[t]):console.warn(`Field "${t}" not found. `+"Most likely, the '<wc-order-attribution-inputs>' element was manipulated.")}}get values(){return this._values}})}(window.wc_order_attribution);
window.addEventListener("load",function(){function e(){var e=document.querySelector("[fncls='fnparams-dede7cc5-15fd-4c75-a9f4-36c430ee3a99']");e&&e.parentNode&&e.parentNode.removeChild(e),(e=document.createElement("script")).id="fconfig",e.type="application/json",e.setAttribute("fncls","fnparams-dede7cc5-15fd-4c75-a9f4-36c430ee3a99");var t={f:FraudNetConfig.f,s:FraudNetConfig.s};"1"===FraudNetConfig.sandbox&&(t.sandbox=!0),e.text=JSON.stringify(t),document.body.appendChild(e);var n=document.forms.order_review;if(n){var d=document.createElement("input");d.setAttribute("type","hidden"),d.setAttribute("name","pui_pay_for_order_session_id"),d.setAttribute("value",FraudNetConfig.f),n.appendChild(d)}!function(){var e=document.createElement("script");e.src="https://c.paypal.com/da/r/fb.js",document.body.appendChild(e)}()}document.addEventListener("hosted_fields_loaded",function(t){PAYPAL.asyncData&&"function"==typeof PAYPAL.asyncData.initAndCollect&&PAYPAL.asyncData.initAndCollect(),e()}),e()});
jQuery(document).ready(function($){
"use strict";
const collect_all_select_inputs=$(".af_clv_attribute_type");
const collect_all_color_boxes=$(".af-clv-color");
const collect_all_label_boxes=$(".af-clv-label-preview");
const collect_all_image_boxes=$(".af-clv-image-preview");
const collect_all_radio_buttons=$('.af-clv-radio-input');
const reset_variations=$(".reset_variations");
collect_all_select_inputs.each(function(){
var $current_input_type=$(this);
if($current_input_type.val()!='select'){
$current_input_type.prev().hide();
}
$current_input_type.prev().change(function(){
if($(this).val()=='Choose an option'||$(this).val()==''||$(this).val()==null){
$(this).removeClass('af-clv-attribute-select af-clv-attribute-border-style');
return false;
}
$(this).addClass('af-clv-attribute-select af-clv-attribute-border-style');
});
});
$(document).on('click','.af-clv-radio-input', function(){
$(this).closest('.af-clv-preview').find('.af-clv-radio-input').prop('checked', false);
$(this).closest('.af-clv-preview').find('.af-clv-radio-preview').removeClass('af-clv-attribute-radio af-clv-attribute-border-style');
$(this).prop('checked', true);
$(this).closest('.af-clv-radio-preview').addClass('af-clv-attribute-radio af-clv-attribute-border-style');
apply_border_and_update_select_inputs($(this), 'af-clv-attribute-radio');
});
$(document).on('click', '.af-clv-color',function(){
$(this).siblings().removeClass('af-clv-attribute-border-style af-clv-attribute-color');
apply_border_and_update_select_inputs($(this), 'af-clv-attribute-color');
});
$(document).on('click', '.af-clv-image-preview',function(){
$(this).siblings().removeClass('af-clv-attribute-border-style af-clv-attribute-image-border-color');
apply_border_and_update_select_inputs($(this), 'af-clv-attribute-image-border-color');
});
$(document).on('click', '.af-clv-label-preview',function(){
$(this).siblings().removeClass('af-clv-attribute-border-style af-clv-attribute-label');
apply_border_and_update_select_inputs($(this), 'af-clv-attribute-label');
});
function apply_border_and_update_select_inputs(current_element, current_class){
current_element.addClass(current_class + ' af-clv-attribute-border-style');
var label_for=current_element.data('label_for');
var attribute_label=current_element.data('attribute_label');
current_element.closest('table').find('th label[for="' + label_for + '"]').html(attribute_label + '<span>: &nbsp;<strong>' + current_element.attr('title') + '</strong></span>');
const selectedValue=current_element.attr('data-value');
var selectInput=current_element.closest('td').find('select');
selectInput.val(selectedValue);
selectInput.trigger('change');
}
reset_variations.click(function(){
reset_variations.css('visibility', 'hidden');
collect_all_radio_buttons.closest('.af-clv-preview').find('.af-clv-radio-preview').removeClass('af-clv-attribute-radio af-clv-attribute-border-style');
collect_all_radio_buttons.prop('checked', false);
collect_all_color_boxes.removeClass('af-clv-attribute-border-style af-clv-attribute-color');
collect_all_image_boxes.removeClass('af-clv-attribute-border-style af-clv-attribute-image-border-color');
collect_all_label_boxes.removeClass('af-clv-attribute-border-style af-clv-attribute-label');
});
$(document).on('click','.af-clv-shop-select-preview', function(event){
event.preventDefault();
$(document).on('change','.af-clv-shop-select-preview', function(){
if($(this).val()=='Choose an option'||$(this).val()==''||$(this).val()==null){
$(this).removeClass('af-clv-attribute-select  af-clv-attribute-border-style af-clv-selected-attribute');
return false;
}
$(this).attr('data-value', $(this).val());
apply_border_and_bold_font($(this), 'af-clv-attribute-select');
});
});
$(document).on('click', '.af-clv-shop-color',function(event){
event.preventDefault();
$(this).siblings().removeClass('af-clv-attribute-border-style af-clv-selected-attribute af-clv-attribute-color');
apply_border_and_bold_font($(this), 'af-clv-attribute-color');
});
$(document).on('click', '.af-clv-shop-image-preview',function(event){
event.preventDefault();
$(this).siblings().removeClass('af-clv-attribute-border-style af-clv-selected-attribute af-clv-attribute-image-border-color');
apply_border_and_bold_font($(this), 'af-clv-attribute-image-border-color');
});
$(document).on('click', '.af-clv-shop-label-preview',function(event){
event.preventDefault();
$(this).siblings().removeClass('af-clv-attribute-border-style af-clv-attribute-border-width af-clv-selected-attribute af-clv-attribute-label');
apply_border_and_bold_font($(this), 'af-clv-attribute-label');
});
$(document).on('click','.af-clv-shop-radio-input', function(event){
event.preventDefault();
$(this).closest('.af-clv-shop-preview').find('.af-clv-shop-radio-input').prop('checked', false);
$(this).closest('.af-clv-shop-preview').find('.af-clv-shop-radio-preview').removeClass('af-clv-attribute-border-width af-clv-selected-attribute af-clv-attribute-radio af-clv-attribute-border-style');
$(this).prop('checked', true);
$(this).closest('.af-clv-shop-radio-preview').addClass('af-clv-attribute-radio af-clv-attribute-border-style');
apply_border_and_bold_font($(this), 'af-clv-attribute-radio');
});
function apply_border_and_bold_font(current_element, custom_class){
var $current_element_parent=current_element.closest('li');
var $product_id=$current_element_parent.find('a.product_type_variable').attr('data-product_id');
const $get_all_selected_option_elements=$('.af-clv-selected-attribute');
var $get_all_selected_option_elements_parent=$get_all_selected_option_elements.closest('li');
var $get_all_selected_option_elements_product_id=$get_all_selected_option_elements_parent.find('a.product_type_variable').attr('data-product_id');
var $get_add_to_cart_button=$get_all_selected_option_elements_parent.find(".clv_add_to_cart_button");
if($product_id!=$get_all_selected_option_elements_product_id){
$('select.af-clv-selected-attribute').val('').trigger('change');
var $other_selected_elements=$get_all_selected_option_elements_parent.find(".af-clv-selected-attribute");
$other_selected_elements.removeClass("af-clv-attribute-border-style af-clv-selected-attribute " + custom_class);
$get_add_to_cart_button.addClass('af_clv_add_to_cart_button_hide');
$get_add_to_cart_button.next().addClass('af_clv_add_to_cart_button_hide');
$get_all_selected_option_elements_parent.find("a.product_type_variable").css('display', '');
}
if(custom_class!=''){
current_element.addClass('af-clv-attribute-border-style af-clv-selected-attribute ' + custom_class);
if($current_element_parent.find('.af-clv-shop-preview').length==$('.af-clv-selected-attribute').length){
var form_data=new FormData();
$('.af-clv-selected-attribute').each(function(){
form_data.append('attributes[attribute_' + $(this).attr('data-label').toLowerCase() + ']', $(this).attr('data-value') );
});
form_data.append('action', 'af_clv_image_swatch_action');
form_data.append('af_clv_wpnonce', af_clv_link_obj.nonce);
form_data.append('product_id', $product_id);
$.ajax({
type:'POST',
url:af_clv_link_obj.ajax_url,
data:form_data,
processData: false,
contentType: false,
dataType: 'json',
success: function(response){
if(!response.error){
$current_element_parent.find('img.attachment-woocommerce_thumbnail').attr('src',response.data.image_url);
$current_element_parent.find('img.attachment-woocommerce_thumbnail').removeAttr('srcset');
if(response.data.product_found){
$current_element_parent.children('a.product_type_variable').addClass('af_clv_hide');
$current_element_parent.children('a.clv_add_to_cart_button').removeClass('af_clv_add_to_cart_button_hide');
$current_element_parent.find('p').addClass('af_clv_variation_not_found_class');
}else{
$current_element_parent.children('a.product_type_variable').removeClass('af_clv_hide');
$current_element_parent.children('a.clv_add_to_cart_button').addClass('af_clv_add_to_cart_button_hide');
$current_element_parent.find('p').removeClass('af_clv_variation_not_found_class');
}}
},
});
}}else{
$get_add_to_cart_button.addClass('af_clv_add_to_cart_button_hide');
$get_add_to_cart_button.next().addClass('af_clv_add_to_cart_button_hide');
$get_all_selected_option_elements_parent.find("a.product_type_variable").css('display', '');
}}
$('.clv_add_to_cart_button').on('click', function(){
var $this_button=$(this);
var form_data=new FormData();
$('.af-clv-selected-attribute').each(function(){
form_data.append('attributes[attribute_' + $(this).attr('data-label') + ']', $(this).attr('data-value') );
});
form_data.append('action', 'af_clv_front_action');
form_data.append('af_clv_wpnonce', af_clv_link_obj.nonce);
form_data.append('product_id', $this_button.attr('data-product_id') );
form_data.append('quantity', $this_button.attr('data-quantity') );
$(document.body).trigger('adding_to_cart', [$this_button, form_data]);
$.ajax({
type: 'post',
url: af_clv_link_obj.ajax_url,
data: form_data,
delay: 100,
processData: false,
contentType: false,
cache: false,
dataType: 'json',
beforeSend: function(response){
$this_button.removeClass('added').addClass('loading');
},
complete: function(response){
$this_button.addClass('added').removeClass('loading');
},
success: function(response){
if(!response.error){
$this_button.next().removeClass('af_clv_add_to_cart_button_hide');
$(document.body).trigger('added_to_cart', [
response.fragments,
response.cart_hash,
$this_button
]);
}},
});
return false;
});
});
!function(r){"use strict";var t,e,n;t=[function(r,t,e){e(1),e(53),e(81),e(82),e(93),e(94),e(99),e(100),e(110),e(120),e(122),e(123),e(124),r.exports=e(125)},function(r,t,e){var n=e(2),o=e(4),a=e(48),c=ArrayBuffer.prototype;n&&!("detached"in c)&&o(c,"detached",{configurable:!0,get:function(){return a(this)}})},function(r,t,e){var n=e(3);r.exports=!n((function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))},function(r,t,e){r.exports=function(r){try{return!!r()}catch(r){return!0}}},function(r,t,e){var n=e(5),o=e(23);r.exports=function(r,t,e){return e.get&&n(e.get,t,{getter:!0}),e.set&&n(e.set,t,{setter:!0}),o.f(r,t,e)}},function(t,e,n){var o=n(6),a=n(3),c=n(8),i=n(9),u=n(2),s=n(13).CONFIGURABLE,f=n(14),p=n(19),l=p.enforce,y=p.get,v=String,h=Object.defineProperty,g=o("".slice),b=o("".replace),m=o([].join),d=u&&!a((function(){return 8!==h((function(){}),"length",{value:8}).length})),w=String(String).split("String"),E=t.exports=function(t,e,n){"Symbol("===g(v(e),0,7)&&(e="["+b(v(e),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),n&&n.getter&&(e="get "+e),n&&n.setter&&(e="set "+e),(!i(t,"name")||s&&t.name!==e)&&(u?h(t,"name",{value:e,configurable:!0}):t.name=e),d&&n&&i(n,"arity")&&t.length!==n.arity&&h(t,"length",{value:n.arity});try{n&&i(n,"constructor")&&n.constructor?u&&h(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=r)}catch(r){}var o=l(t);return i(o,"source")||(o.source=m(w,"string"==typeof e?e:"")),t};Function.prototype.toString=E((function(){return c(this)&&y(this).source||f(this)}),"toString")},function(r,t,e){var n=e(7),o=Function.prototype,a=o.call,c=n&&o.bind.bind(a,a);r.exports=n?c:function(r){return function(){return a.apply(r,arguments)}}},function(r,t,e){var n=e(3);r.exports=!n((function(){var r=function(){}.bind();return"function"!=typeof r||r.hasOwnProperty("prototype")}))},function(t,e,n){var o="object"==typeof document&&document.all;t.exports=void 0===o&&o!==r?function(r){return"function"==typeof r||r===o}:function(r){return"function"==typeof r}},function(r,t,e){var n=e(6),o=e(10),a=n({}.hasOwnProperty);r.exports=Object.hasOwn||function(r,t){return a(o(r),t)}},function(r,t,e){var n=e(11),o=Object;r.exports=function(r){return o(n(r))}},function(r,t,e){var n=e(12),o=TypeError;r.exports=function(r){if(n(r))throw new o("Can't call method on "+r);return r}},function(t,e,n){t.exports=function(t){return null===t||t===r}},function(r,t,e){var n=e(2),o=e(9),a=Function.prototype,c=n&&Object.getOwnPropertyDescriptor,i=o(a,"name"),u=i&&"something"===function(){}.name,s=i&&(!n||n&&c(a,"name").configurable);r.exports={EXISTS:i,PROPER:u,CONFIGURABLE:s}},function(r,t,e){var n=e(6),o=e(8),a=e(15),c=n(Function.toString);o(a.inspectSource)||(a.inspectSource=function(r){return c(r)}),r.exports=a.inspectSource},function(r,t,e){var n=e(16),o=e(17),a=e(18),c="__core-js_shared__",i=r.exports=o[c]||a(c,{});(i.versions||(i.versions=[])).push({version:"3.39.0",mode:n?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.39.0/LICENSE",source:"https://github.com/zloirock/core-js"})},function(r,t,e){r.exports=!1},function(r,t,e){var n=function(r){return r&&r.Math===Math&&r};r.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||n("object"==typeof this&&this)||function(){return this}()||Function("return this")()},function(r,t,e){var n=e(17),o=Object.defineProperty;r.exports=function(r,t){try{o(n,r,{value:t,configurable:!0,writable:!0})}catch(e){n[r]=t}return t}},function(r,t,e){var n,o,a,c=e(20),i=e(17),u=e(21),s=e(22),f=e(9),p=e(15),l=e(46),y=e(47),v="Object already initialized",h=i.TypeError,g=i.WeakMap;if(c||p.state){var b=p.state||(p.state=new g);b.get=b.get,b.has=b.has,b.set=b.set,n=function(r,t){if(b.has(r))throw new h(v);return t.facade=r,b.set(r,t),t},o=function(r){return b.get(r)||{}},a=function(r){return b.has(r)}}else{var m=l("state");y[m]=!0,n=function(r,t){if(f(r,m))throw new h(v);return t.facade=r,s(r,m,t),t},o=function(r){return f(r,m)?r[m]:{}},a=function(r){return f(r,m)}}r.exports={set:n,get:o,has:a,enforce:function(r){return a(r)?o(r):n(r,{})},getterFor:function(r){return function(t){var e;if(!u(t)||(e=o(t)).type!==r)throw new h("Incompatible receiver, "+r+" required");return e}}}},function(r,t,e){var n=e(17),o=e(8),a=n.WeakMap;r.exports=o(a)&&/native code/.test(String(a))},function(r,t,e){var n=e(8);r.exports=function(r){return"object"==typeof r?null!==r:n(r)}},function(r,t,e){var n=e(2),o=e(23),a=e(45);r.exports=n?function(r,t,e){return o.f(r,t,a(1,e))}:function(r,t,e){return r[t]=e,r}},function(r,t,e){var n=e(2),o=e(24),a=e(26),c=e(27),i=e(28),u=TypeError,s=Object.defineProperty,f=Object.getOwnPropertyDescriptor,p="enumerable",l="configurable",y="writable";t.f=n?a?function(r,t,e){if(c(r),t=i(t),c(e),"function"==typeof r&&"prototype"===t&&"value"in e&&y in e&&!e[y]){var n=f(r,t);n&&n[y]&&(r[t]=e.value,e={configurable:l in e?e[l]:n[l],enumerable:p in e?e[p]:n[p],writable:!1})}return s(r,t,e)}:s:function(r,t,e){if(c(r),t=i(t),c(e),o)try{return s(r,t,e)}catch(r){}if("get"in e||"set"in e)throw new u("Accessors not supported");return"value"in e&&(r[t]=e.value),r}},function(r,t,e){var n=e(2),o=e(3),a=e(25);r.exports=!n&&!o((function(){return 7!==Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},function(r,t,e){var n=e(17),o=e(21),a=n.document,c=o(a)&&o(a.createElement);r.exports=function(r){return c?a.createElement(r):{}}},function(r,t,e){var n=e(2),o=e(3);r.exports=n&&o((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},function(r,t,e){var n=e(21),o=String,a=TypeError;r.exports=function(r){if(n(r))return r;throw new a(o(r)+" is not an object")}},function(r,t,e){var n=e(29),o=e(31);r.exports=function(r){var t=n(r,"string");return o(t)?t:t+""}},function(t,e,n){var o=n(30),a=n(21),c=n(31),i=n(38),u=n(41),s=n(42),f=TypeError,p=s("toPrimitive");t.exports=function(t,e){if(!a(t)||c(t))return t;var n,s=i(t,p);if(s){if(e===r&&(e="default"),n=o(s,t,e),!a(n)||c(n))return n;throw new f("Can't convert object to primitive value")}return e===r&&(e="number"),u(t,e)}},function(r,t,e){var n=e(7),o=Function.prototype.call;r.exports=n?o.bind(o):function(){return o.apply(o,arguments)}},function(r,t,e){var n=e(32),o=e(8),a=e(33),c=e(34),i=Object;r.exports=c?function(r){return"symbol"==typeof r}:function(r){var t=n("Symbol");return o(t)&&a(t.prototype,i(r))}},function(t,e,n){var o=n(17),a=n(8);t.exports=function(t,e){return arguments.length<2?(n=o[t],a(n)?n:r):o[t]&&o[t][e];var n}},function(r,t,e){var n=e(6);r.exports=n({}.isPrototypeOf)},function(r,t,e){var n=e(35);r.exports=n&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(r,t,e){var n=e(36),o=e(3),a=e(17).String;r.exports=!!Object.getOwnPropertySymbols&&!o((function(){var r=Symbol("symbol detection");return!a(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&n&&n<41}))},function(r,t,e){var n,o,a=e(17),c=e(37),i=a.process,u=a.Deno,s=i&&i.versions||u&&u.version,f=s&&s.v8;f&&(o=(n=f.split("."))[0]>0&&n[0]<4?1:+(n[0]+n[1])),!o&&c&&(!(n=c.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=c.match(/Chrome\/(\d+)/))&&(o=+n[1]),r.exports=o},function(r,t,e){var n=e(17).navigator,o=n&&n.userAgent;r.exports=o?String(o):""},function(t,e,n){var o=n(39),a=n(12);t.exports=function(t,e){var n=t[e];return a(n)?r:o(n)}},function(r,t,e){var n=e(8),o=e(40),a=TypeError;r.exports=function(r){if(n(r))return r;throw new a(o(r)+" is not a function")}},function(r,t,e){var n=String;r.exports=function(r){try{return n(r)}catch(r){return"Object"}}},function(r,t,e){var n=e(30),o=e(8),a=e(21),c=TypeError;r.exports=function(r,t){var e,i;if("string"===t&&o(e=r.toString)&&!a(i=n(e,r)))return i;if(o(e=r.valueOf)&&!a(i=n(e,r)))return i;if("string"!==t&&o(e=r.toString)&&!a(i=n(e,r)))return i;throw new c("Can't convert object to primitive value")}},function(r,t,e){var n=e(17),o=e(43),a=e(9),c=e(44),i=e(35),u=e(34),s=n.Symbol,f=o("wks"),p=u?s.for||s:s&&s.withoutSetter||c;r.exports=function(r){return a(f,r)||(f[r]=i&&a(s,r)?s[r]:p("Symbol."+r)),f[r]}},function(r,t,e){var n=e(15);r.exports=function(r,t){return n[r]||(n[r]=t||{})}},function(t,e,n){var o=n(6),a=0,c=Math.random(),i=o(1..toString);t.exports=function(t){return"Symbol("+(t===r?"":t)+")_"+i(++a+c,36)}},function(r,t,e){r.exports=function(r,t){return{enumerable:!(1&r),configurable:!(2&r),writable:!(4&r),value:t}}},function(r,t,e){var n=e(43),o=e(44),a=n("keys");r.exports=function(r){return a[r]||(a[r]=o(r))}},function(r,t,e){r.exports={}},function(r,t,e){var n=e(17),o=e(49),a=e(51),c=n.ArrayBuffer,i=c&&c.prototype,u=i&&o(i.slice);r.exports=function(r){if(0!==a(r))return!1;if(!u)return!1;try{return u(r,0,0),!1}catch(r){return!0}}},function(r,t,e){var n=e(50),o=e(6);r.exports=function(r){if("Function"===n(r))return o(r)}},function(r,t,e){var n=e(6),o=n({}.toString),a=n("".slice);r.exports=function(r){return a(o(r),8,-1)}},function(r,t,e){var n=e(17),o=e(52),a=e(50),c=n.ArrayBuffer,i=n.TypeError;r.exports=c&&o(c.prototype,"byteLength","get")||function(r){if("ArrayBuffer"!==a(r))throw new i("ArrayBuffer expected");return r.byteLength}},function(r,t,e){var n=e(6),o=e(39);r.exports=function(r,t,e){try{return n(o(Object.getOwnPropertyDescriptor(r,t)[e]))}catch(r){}}},function(t,e,n){var o=n(54),a=n(73);a&&o({target:"ArrayBuffer",proto:!0},{transfer:function(){return a(this,arguments.length?arguments[0]:r,!0)}})},function(t,e,n){var o=n(17),a=n(55).f,c=n(22),i=n(59),u=n(18),s=n(60),f=n(72);t.exports=function(t,e){var n,p,l,y,v,h=t.target,g=t.global,b=t.stat;if(n=g?o:b?o[h]||u(h,{}):o[h]&&o[h].prototype)for(p in e){if(y=e[p],l=t.dontCallGetSet?(v=a(n,p))&&v.value:n[p],!f(g?p:h+(b?".":"#")+p,t.forced)&&l!==r){if(typeof y==typeof l)continue;s(y,l)}(t.sham||l&&l.sham)&&c(y,"sham",!0),i(n,p,y,t)}}},function(r,t,e){var n=e(2),o=e(30),a=e(56),c=e(45),i=e(57),u=e(28),s=e(9),f=e(24),p=Object.getOwnPropertyDescriptor;t.f=n?p:function(r,t){if(r=i(r),t=u(t),f)try{return p(r,t)}catch(r){}if(s(r,t))return c(!o(a.f,r,t),r[t])}},function(r,t,e){var n={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,a=o&&!n.call({1:2},1);t.f=a?function(r){var t=o(this,r);return!!t&&t.enumerable}:n},function(r,t,e){var n=e(58),o=e(11);r.exports=function(r){return n(o(r))}},function(r,t,e){var n=e(6),o=e(3),a=e(50),c=Object,i=n("".split);r.exports=o((function(){return!c("z").propertyIsEnumerable(0)}))?function(r){return"String"===a(r)?i(r,""):c(r)}:c},function(t,e,n){var o=n(8),a=n(23),c=n(5),i=n(18);t.exports=function(t,e,n,u){u||(u={});var s=u.enumerable,f=u.name!==r?u.name:e;if(o(n)&&c(n,f,u),u.global)s?t[e]=n:i(e,n);else{try{u.unsafe?t[e]&&(s=!0):delete t[e]}catch(r){}s?t[e]=n:a.f(t,e,{value:n,enumerable:!1,configurable:!u.nonConfigurable,writable:!u.nonWritable})}return t}},function(r,t,e){var n=e(9),o=e(61),a=e(55),c=e(23);r.exports=function(r,t,e){for(var i=o(t),u=c.f,s=a.f,f=0;f<i.length;f++){var p=i[f];n(r,p)||e&&n(e,p)||u(r,p,s(t,p))}}},function(r,t,e){var n=e(32),o=e(6),a=e(62),c=e(71),i=e(27),u=o([].concat);r.exports=n("Reflect","ownKeys")||function(r){var t=a.f(i(r)),e=c.f;return e?u(t,e(r)):t}},function(r,t,e){var n=e(63),o=e(70).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(r){return n(r,o)}},function(r,t,e){var n=e(6),o=e(9),a=e(57),c=e(64).indexOf,i=e(47),u=n([].push);r.exports=function(r,t){var e,n=a(r),s=0,f=[];for(e in n)!o(i,e)&&o(n,e)&&u(f,e);for(;t.length>s;)o(n,e=t[s++])&&(~c(f,e)||u(f,e));return f}},function(r,t,e){var n=e(57),o=e(65),a=e(68),c=function(r){return function(t,e,c){var i=n(t),u=a(i);if(0===u)return!r&&-1;var s,f=o(c,u);if(r&&e!=e){for(;u>f;)if((s=i[f++])!=s)return!0}else for(;u>f;f++)if((r||f in i)&&i[f]===e)return r||f||0;return!r&&-1}};r.exports={includes:c(!0),indexOf:c(!1)}},function(r,t,e){var n=e(66),o=Math.max,a=Math.min;r.exports=function(r,t){var e=n(r);return e<0?o(e+t,0):a(e,t)}},function(r,t,e){var n=e(67);r.exports=function(r){var t=+r;return t!=t||0===t?0:n(t)}},function(r,t,e){var n=Math.ceil,o=Math.floor;r.exports=Math.trunc||function(r){var t=+r;return(t>0?o:n)(t)}},function(r,t,e){var n=e(69);r.exports=function(r){return n(r.length)}},function(r,t,e){var n=e(66),o=Math.min;r.exports=function(r){var t=n(r);return t>0?o(t,9007199254740991):0}},function(r,t,e){r.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(r,t,e){t.f=Object.getOwnPropertySymbols},function(r,t,e){var n=e(3),o=e(8),a=/#|\.prototype\./,c=function(r,t){var e=u[i(r)];return e===f||e!==s&&(o(t)?n(t):!!t)},i=c.normalize=function(r){return String(r).replace(a,".").toLowerCase()},u=c.data={},s=c.NATIVE="N",f=c.POLYFILL="P";r.exports=c},function(t,e,n){var o=n(17),a=n(6),c=n(52),i=n(74),u=n(75),s=n(51),f=n(76),p=n(80),l=o.structuredClone,y=o.ArrayBuffer,v=o.DataView,h=Math.min,g=y.prototype,b=v.prototype,m=a(g.slice),d=c(g,"resizable","get"),w=c(g,"maxByteLength","get"),E=a(b.getInt8),x=a(b.setInt8);t.exports=(p||f)&&function(t,e,n){var o,a=s(t),c=e===r?a:i(e),g=!d||!d(t);if(u(t),p&&(t=l(t,{transfer:[t]}),a===c&&(n||g)))return t;if(a>=c&&(!n||g))o=m(t,0,c);else{var b=n&&!g&&w?{maxByteLength:w(t)}:r;o=new y(c,b);for(var O=new v(t),R=new v(o),S=h(c,a),A=0;A<S;A++)x(R,A,E(O,A))}return p||f(t),o}},function(t,e,n){var o=n(66),a=n(69),c=RangeError;t.exports=function(t){if(t===r)return 0;var e=o(t),n=a(e);if(e!==n)throw new c("Wrong length or index");return n}},function(r,t,e){var n=e(48),o=TypeError;r.exports=function(r){if(n(r))throw new o("ArrayBuffer is detached");return r}},function(r,t,e){var n,o,a,c,i=e(17),u=e(77),s=e(80),f=i.structuredClone,p=i.ArrayBuffer,l=i.MessageChannel,y=!1;if(s)y=function(r){f(r,{transfer:[r]})};else if(p)try{l||(n=u("worker_threads"))&&(l=n.MessageChannel),l&&(o=new l,a=new p(2),c=function(r){o.port1.postMessage(null,[r])},2===a.byteLength&&(c(a),0===a.byteLength&&(y=c)))}catch(r){}r.exports=y},function(r,t,e){var n=e(17),o=e(78);r.exports=function(r){if(o){try{return n.process.getBuiltinModule(r)}catch(r){}try{return Function('return require("'+r+'")')()}catch(r){}}}},function(r,t,e){var n=e(79);r.exports="NODE"===n},function(r,t,e){var n=e(17),o=e(37),a=e(50),c=function(r){return o.slice(0,r.length)===r};r.exports=c("Bun/")?"BUN":c("Cloudflare-Workers")?"CLOUDFLARE":c("Deno/")?"DENO":c("Node.js/")?"NODE":n.Bun&&"string"==typeof Bun.version?"BUN":n.Deno&&"object"==typeof Deno.version?"DENO":"process"===a(n.process)?"NODE":n.window&&n.document?"BROWSER":"REST"},function(r,t,e){var n=e(17),o=e(3),a=e(36),c=e(79),i=n.structuredClone;r.exports=!!i&&!o((function(){if("DENO"===c&&a>92||"NODE"===c&&a>94||"BROWSER"===c&&a>97)return!1;var r=new ArrayBuffer(8),t=i(r,{transfer:[r]});return 0!==r.byteLength||8!==t.byteLength}))},function(t,e,n){var o=n(54),a=n(73);a&&o({target:"ArrayBuffer",proto:!0},{transferToFixedLength:function(){return a(this,arguments.length?arguments[0]:r,!1)}})},function(r,t,e){var n=e(54),o=e(6),a=e(39),c=e(11),i=e(83),u=e(92),s=e(16),f=e(3),p=u.Map,l=u.has,y=u.get,v=u.set,h=o([].push),g=s||f((function(){return 1!==p.groupBy("ab",(function(r){return r})).get("a").length}));n({target:"Map",stat:!0,forced:s||g},{groupBy:function(r,t){c(r),a(t);var e=new p,n=0;return i(r,(function(r){var o=t(r,n++);l(e,o)?h(y(e,o),r):v(e,o,[r])})),e}})},function(r,t,e){var n=e(84),o=e(30),a=e(27),c=e(40),i=e(85),u=e(68),s=e(33),f=e(87),p=e(88),l=e(91),y=TypeError,v=function(r,t){this.stopped=r,this.result=t},h=v.prototype;r.exports=function(r,t,e){var g,b,m,d,w,E,x,O=e&&e.that,R=!(!e||!e.AS_ENTRIES),S=!(!e||!e.IS_RECORD),A=!(!e||!e.IS_ITERATOR),T=!(!e||!e.INTERRUPTED),D=n(t,O),_=function(r){return g&&l(g,"normal",r),new v(!0,r)},I=function(r){return R?(a(r),T?D(r[0],r[1],_):D(r[0],r[1])):T?D(r,_):D(r)};if(S)g=r.iterator;else if(A)g=r;else{if(!(b=p(r)))throw new y(c(r)+" is not iterable");if(i(b)){for(m=0,d=u(r);d>m;m++)if((w=I(r[m]))&&s(h,w))return w;return new v(!1)}g=f(r,b)}for(E=S?r.next:g.next;!(x=o(E,g)).done;){try{w=I(x.value)}catch(r){l(g,"throw",r)}if("object"==typeof w&&w&&s(h,w))return w}return new v(!1)}},function(t,e,n){var o=n(49),a=n(39),c=n(7),i=o(o.bind);t.exports=function(t,e){return a(t),e===r?t:c?i(t,e):function(){return t.apply(e,arguments)}}},function(t,e,n){var o=n(42),a=n(86),c=o("iterator"),i=Array.prototype;t.exports=function(t){return t!==r&&(a.Array===t||i[c]===t)}},function(r,t,e){r.exports={}},function(r,t,e){var n=e(30),o=e(39),a=e(27),c=e(40),i=e(88),u=TypeError;r.exports=function(r,t){var e=arguments.length<2?i(r):t;if(o(e))return a(n(e,r));throw new u(c(r)+" is not iterable")}},function(r,t,e){var n=e(89),o=e(38),a=e(12),c=e(86),i=e(42)("iterator");r.exports=function(r){if(!a(r))return o(r,i)||o(r,"@@iterator")||c[n(r)]}},function(t,e,n){var o=n(90),a=n(8),c=n(50),i=n(42)("toStringTag"),u=Object,s="Arguments"===c(function(){return arguments}());t.exports=o?c:function(t){var e,n,o;return t===r?"Undefined":null===t?"Null":"string"==typeof(n=function(r,t){try{return r[t]}catch(r){}}(e=u(t),i))?n:s?c(e):"Object"===(o=c(e))&&a(e.callee)?"Arguments":o}},function(r,t,e){var n={};n[e(42)("toStringTag")]="z",r.exports="[object z]"===String(n)},function(r,t,e){var n=e(30),o=e(27),a=e(38);r.exports=function(r,t,e){var c,i;o(r);try{if(!(c=a(r,"return"))){if("throw"===t)throw e;return e}c=n(c,r)}catch(r){i=!0,c=r}if("throw"===t)throw e;if(i)throw c;return o(c),e}},function(r,t,e){var n=e(6),o=Map.prototype;r.exports={Map:Map,set:n(o.set),get:n(o.get),has:n(o.has),remove:n(o.delete),proto:o}},function(r,t,e){var n=e(54),o=e(32),a=e(6),c=e(39),i=e(11),u=e(28),s=e(83),f=e(3),p=Object.groupBy,l=o("Object","create"),y=a([].push);n({target:"Object",stat:!0,forced:!p||f((function(){return 1!==p("ab",(function(r){return r})).a.length}))},{groupBy:function(r,t){i(r),c(t);var e=l(null),n=0;return s(r,(function(r){var o=u(t(r,n++));o in e?y(e[o],r):e[o]=[r]})),e}})},function(t,e,n){var o=n(54),a=n(17),c=n(95),i=n(96),u=n(97),s=n(39),f=n(98),p=a.Promise,l=!1;o({target:"Promise",stat:!0,forced:!p||!p.try||f((function(){p.try((function(r){l=8===r}),8)})).error||!l},{try:function(t){var e=arguments.length>1?i(arguments,1):[],n=u.f(this),o=f((function(){return c(s(t),r,e)}));return(o.error?n.reject:n.resolve)(o.value),n.promise}})},function(r,t,e){var n=e(7),o=Function.prototype,a=o.apply,c=o.call;r.exports="object"==typeof Reflect&&Reflect.apply||(n?c.bind(a):function(){return c.apply(a,arguments)})},function(r,t,e){var n=e(6);r.exports=n([].slice)},function(t,e,n){var o=n(39),a=TypeError,c=function(t){var e,n;this.promise=new t((function(t,o){if(e!==r||n!==r)throw new a("Bad Promise constructor");e=t,n=o})),this.resolve=o(e),this.reject=o(n)};t.exports.f=function(r){return new c(r)}},function(r,t,e){r.exports=function(r){try{return{error:!1,value:r()}}catch(r){return{error:!0,value:r}}}},function(r,t,e){var n=e(54),o=e(97);n({target:"Promise",stat:!0},{withResolvers:function(){var r=o.f(this);return{promise:r.promise,resolve:r.resolve,reject:r.reject}}})},function(t,e,n){var o=n(54),a=n(17),c=n(32),i=n(45),u=n(23).f,s=n(9),f=n(101),p=n(102),l=n(106),y=n(108),v=n(109),h=n(2),g=n(16),b="DOMException",m=c("Error"),d=c(b),w=function(){f(this,E);var t=arguments.length,e=l(t<1?r:arguments[0]),n=l(t<2?r:arguments[1],"Error"),o=new d(e,n),a=new m(e);return a.name=b,u(o,"stack",i(1,v(a.stack,1))),p(o,this,w),o},E=w.prototype=d.prototype,x="stack"in new m(b),O="stack"in new d(1,2),R=d&&h&&Object.getOwnPropertyDescriptor(a,b),S=!(!R||R.writable&&R.configurable),A=x&&!S&&!O;o({global:!0,constructor:!0,forced:g||A},{DOMException:A?w:d});var T=c(b),D=T.prototype;if(D.constructor!==T)for(var _ in g||u(D,"constructor",i(1,T)),y)if(s(y,_)){var I=y[_],j=I.s;s(T,j)||u(T,j,i(6,I.c))}},function(r,t,e){var n=e(33),o=TypeError;r.exports=function(r,t){if(n(t,r))return r;throw new o("Incorrect invocation")}},function(r,t,e){var n=e(8),o=e(21),a=e(103);r.exports=function(r,t,e){var c,i;return a&&n(c=t.constructor)&&c!==e&&o(i=c.prototype)&&i!==e.prototype&&a(r,i),r}},function(t,e,n){var o=n(52),a=n(21),c=n(11),i=n(104);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r,t=!1,e={};try{(r=o(Object.prototype,"__proto__","set"))(e,[]),t=e instanceof Array}catch(r){}return function(e,n){return c(e),i(n),a(e)?(t?r(e,n):e.__proto__=n,e):e}}():r)},function(r,t,e){var n=e(105),o=String,a=TypeError;r.exports=function(r){if(n(r))return r;throw new a("Can't set "+o(r)+" as a prototype")}},function(r,t,e){var n=e(21);r.exports=function(r){return n(r)||null===r}},function(t,e,n){var o=n(107);t.exports=function(t,e){return t===r?arguments.length<2?"":e:o(t)}},function(r,t,e){var n=e(89),o=String;r.exports=function(r){if("Symbol"===n(r))throw new TypeError("Cannot convert a Symbol value to a string");return o(r)}},function(r,t,e){r.exports={IndexSizeError:{s:"INDEX_SIZE_ERR",c:1,m:1},DOMStringSizeError:{s:"DOMSTRING_SIZE_ERR",c:2,m:0},HierarchyRequestError:{s:"HIERARCHY_REQUEST_ERR",c:3,m:1},WrongDocumentError:{s:"WRONG_DOCUMENT_ERR",c:4,m:1},InvalidCharacterError:{s:"INVALID_CHARACTER_ERR",c:5,m:1},NoDataAllowedError:{s:"NO_DATA_ALLOWED_ERR",c:6,m:0},NoModificationAllowedError:{s:"NO_MODIFICATION_ALLOWED_ERR",c:7,m:1},NotFoundError:{s:"NOT_FOUND_ERR",c:8,m:1},NotSupportedError:{s:"NOT_SUPPORTED_ERR",c:9,m:1},InUseAttributeError:{s:"INUSE_ATTRIBUTE_ERR",c:10,m:1},InvalidStateError:{s:"INVALID_STATE_ERR",c:11,m:1},SyntaxError:{s:"SYNTAX_ERR",c:12,m:1},InvalidModificationError:{s:"INVALID_MODIFICATION_ERR",c:13,m:1},NamespaceError:{s:"NAMESPACE_ERR",c:14,m:1},InvalidAccessError:{s:"INVALID_ACCESS_ERR",c:15,m:1},ValidationError:{s:"VALIDATION_ERR",c:16,m:0},TypeMismatchError:{s:"TYPE_MISMATCH_ERR",c:17,m:1},SecurityError:{s:"SECURITY_ERR",c:18,m:1},NetworkError:{s:"NETWORK_ERR",c:19,m:1},AbortError:{s:"ABORT_ERR",c:20,m:1},URLMismatchError:{s:"URL_MISMATCH_ERR",c:21,m:1},QuotaExceededError:{s:"QUOTA_EXCEEDED_ERR",c:22,m:1},TimeoutError:{s:"TIMEOUT_ERR",c:23,m:1},InvalidNodeTypeError:{s:"INVALID_NODE_TYPE_ERR",c:24,m:1},DataCloneError:{s:"DATA_CLONE_ERR",c:25,m:1}}},function(r,t,e){var n=e(6),o=Error,a=n("".replace),c=String(new o("zxcasd").stack),i=/\n\s*at [^:]*:[^\n]*/,u=i.test(c);r.exports=function(r,t){if(u&&"string"==typeof r&&!o.prepareStackTrace)for(;t--;)r=a(r,i,"");return r}},function(t,e,n){var o,a=n(16),c=n(54),i=n(17),u=n(32),s=n(6),f=n(3),p=n(44),l=n(8),y=n(111),v=n(12),h=n(21),g=n(31),b=n(83),m=n(27),d=n(89),w=n(9),E=n(112),x=n(22),O=n(68),R=n(113),S=n(114),A=n(92),T=n(116),D=n(117),_=n(76),I=n(119),j=n(80),M=i.Object,k=i.Array,P=i.Date,C=i.Error,L=i.TypeError,B=i.PerformanceMark,N=u("DOMException"),U=A.Map,F=A.has,z=A.get,W=A.set,V=T.Set,H=T.add,G=T.has,Y=u("Object","keys"),Q=s([].push),q=s((!0).valueOf),X=s(1..valueOf),K=s("".valueOf),Z=s(P.prototype.getTime),$=p("structuredClone"),J="DataCloneError",rr="Transferring",tr=function(r){return!f((function(){var t=new i.Set([7]),e=r(t),n=r(M(7));return e===t||!e.has(7)||!h(n)||7!=+n}))&&r},er=function(r,t){return!f((function(){var e=new t,n=r({a:e,b:e});return!(n&&n.a===n.b&&n.a instanceof t&&n.a.stack===e.stack)}))},nr=i.structuredClone,or=a||!er(nr,C)||!er(nr,N)||(o=nr,!!f((function(){var r=o(new i.AggregateError([1],$,{cause:3}));return"AggregateError"!==r.name||1!==r.errors[0]||r.message!==$||3!==r.cause}))),ar=!nr&&tr((function(r){return new B($,{detail:r}).detail})),cr=tr(nr)||ar,ir=function(r){throw new N("Uncloneable type: "+r,J)},ur=function(r,t){throw new N((t||"Cloning")+" of "+r+" cannot be properly polyfilled in this engine",J)},sr=function(r,t){return cr||ur(t),cr(r)},fr=function(t,e,n){if(F(e,t))return z(e,t);var o,a,c,u,s,f;if("SharedArrayBuffer"===(n||d(t)))o=cr?cr(t):t;else{var p=i.DataView;p||l(t.slice)||ur("ArrayBuffer");try{if(l(t.slice)&&!t.resizable)o=t.slice(0);else{a=t.byteLength,c="maxByteLength"in t?{maxByteLength:t.maxByteLength}:r,o=new ArrayBuffer(a,c),u=new p(t),s=new p(o);for(f=0;f<a;f++)s.setUint8(f,u.getUint8(f))}}catch(r){throw new N("ArrayBuffer is detached",J)}}return W(e,t,o),o},pr=function(t,e){if(g(t)&&ir("Symbol"),!h(t))return t;if(e){if(F(e,t))return z(e,t)}else e=new U;var n,o,a,c,s,f,p,y,v=d(t);switch(v){case"Array":a=k(O(t));break;case"Object":a={};break;case"Map":a=new U;break;case"Set":a=new V;break;case"RegExp":a=new RegExp(t.source,S(t));break;case"Error":switch(o=t.name){case"AggregateError":a=new(u(o))([]);break;case"EvalError":case"RangeError":case"ReferenceError":case"SuppressedError":case"SyntaxError":case"TypeError":case"URIError":a=new(u(o));break;case"CompileError":case"LinkError":case"RuntimeError":a=new(u("WebAssembly",o));break;default:a=new C}break;case"DOMException":a=new N(t.message,t.name);break;case"ArrayBuffer":case"SharedArrayBuffer":a=fr(t,e,v);break;case"DataView":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float16Array":case"Float32Array":case"Float64Array":case"BigInt64Array":case"BigUint64Array":f="DataView"===v?t.byteLength:t.length,a=function(r,t,e,n,o){var a=i[t];return h(a)||ur(t),new a(fr(r.buffer,o),e,n)}(t,v,t.byteOffset,f,e);break;case"DOMQuad":try{a=new DOMQuad(pr(t.p1,e),pr(t.p2,e),pr(t.p3,e),pr(t.p4,e))}catch(r){a=sr(t,v)}break;case"File":if(cr)try{a=cr(t),d(a)!==v&&(a=r)}catch(r){}if(!a)try{a=new File([t],t.name,t)}catch(r){}a||ur(v);break;case"FileList":if(c=function(){var r;try{r=new i.DataTransfer}catch(t){try{r=new i.ClipboardEvent("").clipboardData}catch(r){}}return r&&r.items&&r.files?r:null}()){for(s=0,f=O(t);s<f;s++)c.items.add(pr(t[s],e));a=c.files}else a=sr(t,v);break;case"ImageData":try{a=new ImageData(pr(t.data,e),t.width,t.height,{colorSpace:t.colorSpace})}catch(r){a=sr(t,v)}break;default:if(cr)a=cr(t);else switch(v){case"BigInt":a=M(t.valueOf());break;case"Boolean":a=M(q(t));break;case"Number":a=M(X(t));break;case"String":a=M(K(t));break;case"Date":a=new P(Z(t));break;case"Blob":try{a=t.slice(0,t.size,t.type)}catch(r){ur(v)}break;case"DOMPoint":case"DOMPointReadOnly":n=i[v];try{a=n.fromPoint?n.fromPoint(t):new n(t.x,t.y,t.z,t.w)}catch(r){ur(v)}break;case"DOMRect":case"DOMRectReadOnly":n=i[v];try{a=n.fromRect?n.fromRect(t):new n(t.x,t.y,t.width,t.height)}catch(r){ur(v)}break;case"DOMMatrix":case"DOMMatrixReadOnly":n=i[v];try{a=n.fromMatrix?n.fromMatrix(t):new n(t)}catch(r){ur(v)}break;case"AudioData":case"VideoFrame":l(t.clone)||ur(v);try{a=t.clone()}catch(r){ir(v)}break;case"CropTarget":case"CryptoKey":case"FileSystemDirectoryHandle":case"FileSystemFileHandle":case"FileSystemHandle":case"GPUCompilationInfo":case"GPUCompilationMessage":case"ImageBitmap":case"RTCCertificate":case"WebAssembly.Module":ur(v);default:ir(v)}}switch(W(e,t,a),v){case"Array":case"Object":for(p=Y(t),s=0,f=O(p);s<f;s++)y=p[s],E(a,y,pr(t[y],e));break;case"Map":t.forEach((function(r,t){W(a,pr(t,e),pr(r,e))}));break;case"Set":t.forEach((function(r){H(a,pr(r,e))}));break;case"Error":x(a,"message",pr(t.message,e)),w(t,"cause")&&x(a,"cause",pr(t.cause,e)),"AggregateError"===o?a.errors=pr(t.errors,e):"SuppressedError"===o&&(a.error=pr(t.error,e),a.suppressed=pr(t.suppressed,e));case"DOMException":I&&x(a,"stack",pr(t.stack,e))}return a};c({global:!0,enumerable:!0,sham:!j,forced:or},{structuredClone:function(t){var e,n,o=R(arguments.length,1)>1&&!v(arguments[1])?m(arguments[1]):r,a=o?o.transfer:r;a!==r&&(n=function(t,e){if(!h(t))throw new L("Transfer option cannot be converted to a sequence");var n=[];b(t,(function(r){Q(n,m(r))}));for(var o,a,c,u,s,f=0,p=O(n),v=new V;f<p;){if(o=n[f++],"ArrayBuffer"===(a=d(o))?G(v,o):F(e,o))throw new N("Duplicate transferable",J);if("ArrayBuffer"!==a){if(j)u=nr(o,{transfer:[o]});else switch(a){case"ImageBitmap":c=i.OffscreenCanvas,y(c)||ur(a,rr);try{(s=new c(o.width,o.height)).getContext("bitmaprenderer").transferFromImageBitmap(o),u=s.transferToImageBitmap()}catch(r){}break;case"AudioData":case"VideoFrame":l(o.clone)&&l(o.close)||ur(a,rr);try{u=o.clone(),o.close()}catch(r){}break;case"MediaSourceHandle":case"MessagePort":case"MIDIAccess":case"OffscreenCanvas":case"ReadableStream":case"RTCDataChannel":case"TransformStream":case"WebTransportReceiveStream":case"WebTransportSendStream":case"WritableStream":ur(a,rr)}if(u===r)throw new N("This object cannot be transferred: "+a,J);W(e,o,u)}else H(v,o)}return v}(a,e=new U));var c=pr(t,e);return n&&function(r){D(r,(function(r){j?cr(r,{transfer:[r]}):l(r.transfer)?r.transfer():_?_(r):ur("ArrayBuffer",rr)}))}(n),c}})},function(r,t,e){var n=e(6),o=e(3),a=e(8),c=e(89),i=e(32),u=e(14),s=function(){},f=i("Reflect","construct"),p=/^\s*(?:class|function)\b/,l=n(p.exec),y=!p.test(s),v=function(r){if(!a(r))return!1;try{return f(s,[],r),!0}catch(r){return!1}},h=function(r){if(!a(r))return!1;switch(c(r)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return y||!!l(p,u(r))}catch(r){return!0}};h.sham=!0,r.exports=!f||o((function(){var r;return v(v.call)||!v(Object)||!v((function(){r=!0}))||r}))?h:v},function(r,t,e){var n=e(2),o=e(23),a=e(45);r.exports=function(r,t,e){n?o.f(r,t,a(0,e)):r[t]=e}},function(r,t,e){var n=TypeError;r.exports=function(r,t){if(r<t)throw new n("Not enough arguments");return r}},function(t,e,n){var o=n(30),a=n(9),c=n(33),i=n(115),u=RegExp.prototype;t.exports=function(t){var e=t.flags;return e!==r||"flags"in u||a(t,"flags")||!c(u,t)?e:o(i,t)}},function(r,t,e){var n=e(27);r.exports=function(){var r=n(this),t="";return r.hasIndices&&(t+="d"),r.global&&(t+="g"),r.ignoreCase&&(t+="i"),r.multiline&&(t+="m"),r.dotAll&&(t+="s"),r.unicode&&(t+="u"),r.unicodeSets&&(t+="v"),r.sticky&&(t+="y"),t}},function(r,t,e){var n=e(6),o=Set.prototype;r.exports={Set:Set,add:n(o.add),has:n(o.has),remove:n(o.delete),proto:o}},function(r,t,e){var n=e(6),o=e(118),a=e(116),c=a.Set,i=a.proto,u=n(i.forEach),s=n(i.keys),f=s(new c).next;r.exports=function(r,t,e){return e?o({iterator:s(r),next:f},t):u(r,t)}},function(t,e,n){var o=n(30);t.exports=function(t,e,n){for(var a,c,i=n?t:t.iterator,u=t.next;!(a=o(u,i)).done;)if((c=e(a.value))!==r)return c}},function(r,t,e){var n=e(3),o=e(45);r.exports=!n((function(){var r=new Error("a");return!("stack"in r)||(Object.defineProperty(r,"stack",o(1,7)),7!==r.stack)}))},function(t,e,n){var o=n(54),a=n(32),c=n(3),i=n(113),u=n(107),s=n(121),f=a("URL"),p=s&&c((function(){f.canParse()})),l=c((function(){return 1!==f.canParse.length}));o({target:"URL",stat:!0,forced:!p||l},{canParse:function(t){var e=i(arguments.length,1),n=u(t),o=e<2||arguments[1]===r?r:u(arguments[1]);try{return!!new f(n,o)}catch(r){return!1}}})},function(t,e,n){var o=n(3),a=n(42),c=n(2),i=n(16),u=a("iterator");t.exports=!o((function(){var t=new URL("b?a=1&b=2&c=3","https://a"),e=t.searchParams,n=new URLSearchParams("a=1&a=2&b=3"),o="";return t.pathname="c%20d",e.forEach((function(r,t){e.delete("b"),o+=t+r})),n.delete("a",2),n.delete("b",r),i&&(!t.toJSON||!n.has("a",1)||n.has("a",2)||!n.has("a",r)||n.has("b"))||!e.size&&(i||!c)||!e.sort||"https://a/c%20d?a=1&c=3"!==t.href||"3"!==e.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!e[u]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("https://тест").host||"#%D0%B1"!==new URL("https://a#б").hash||"a1c3"!==o||"x"!==new URL("https://x",r).host}))},function(t,e,n){var o=n(54),a=n(32),c=n(113),i=n(107),u=n(121),s=a("URL");o({target:"URL",stat:!0,forced:!u},{parse:function(t){var e=c(arguments.length,1),n=i(t),o=e<2||arguments[1]===r?r:i(arguments[1]);try{return new s(n,o)}catch(r){return null}}})},function(t,e,n){var o=n(59),a=n(6),c=n(107),i=n(113),u=URLSearchParams,s=u.prototype,f=a(s.append),p=a(s.delete),l=a(s.forEach),y=a([].push),v=new u("a=1&a=2&b=3");v.delete("a",1),v.delete("b",r),v+""!="a=2"&&o(s,"delete",(function(t){var e=arguments.length,n=e<2?r:arguments[1];if(e&&n===r)return p(this,t);var o=[];l(this,(function(r,t){y(o,{key:t,value:r})})),i(e,1);for(var a,u=c(t),s=c(n),v=0,h=0,g=!1,b=o.length;v<b;)a=o[v++],g||a.key===u?(g=!0,p(this,a.key)):h++;for(;h<b;)(a=o[h++]).key===u&&a.value===s||f(this,a.key,a.value)}),{enumerable:!0,unsafe:!0})},function(t,e,n){var o=n(59),a=n(6),c=n(107),i=n(113),u=URLSearchParams,s=u.prototype,f=a(s.getAll),p=a(s.has),l=new u("a=1");!l.has("a",2)&&l.has("a",r)||o(s,"has",(function(t){var e=arguments.length,n=e<2?r:arguments[1];if(e&&n===r)return p(this,t);var o=f(this,t);i(e,1);for(var a=c(n),u=0;u<o.length;)if(o[u++]===a)return!0;return!1}),{enumerable:!0,unsafe:!0})},function(r,t,e){var n=e(2),o=e(6),a=e(4),c=URLSearchParams.prototype,i=o(c.forEach);n&&!("size"in c)&&a(c,"size",{get:function(){var r=0;return i(this,(function(){r++})),r},configurable:!0,enumerable:!0})}],e={},(n=function(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}).m=t,n.c=e,n.d=function(r,t,e){n.o(r,t)||Object.defineProperty(r,t,{enumerable:!0,get:e})},n.r=function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},n.t=function(r,t){if(1&t&&(r=n(r)),8&t)return r;if(4&t&&"object"==typeof r&&r&&r.__esModule)return r;var e=Object.create(null);if(n.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:r}),2&t&&"string"!=typeof r)for(var o in r)n.d(e,o,function(t){return r[t]}.bind(null,o));return e},n.n=function(r){var t=r&&r.__esModule?function(){return r.default}:function(){return r};return n.d(t,"a",t),t},n.o=function(r,t){return Object.prototype.hasOwnProperty.call(r,t)},n.p="",n(n.s=0)}();
document.addEventListener("DOMContentLoaded",(e=>{var t;wpcf7_recaptcha={...null!==(t=wpcf7_recaptcha)&&void 0!==t?t:{}};const c=wpcf7_recaptcha.sitekey,{homepage:n,contactform:a}=wpcf7_recaptcha.actions,o=e=>{const{action:t,func:n,params:a}=e;grecaptcha.execute(c,{action:t}).then((e=>{const c=new CustomEvent("wpcf7grecaptchaexecuted",{detail:{action:t,token:e}});document.dispatchEvent(c)})).then((()=>{"function"==typeof n&&n(...a)})).catch((e=>console.error(e)))};if(grecaptcha.ready((()=>{o({action:n})})),document.addEventListener("change",(e=>{o({action:a})})),"undefined"!=typeof wpcf7&&"function"==typeof wpcf7.submit){const e=wpcf7.submit;wpcf7.submit=(t,c={})=>{o({action:a,func:e,params:[t,c]})}}document.addEventListener("wpcf7grecaptchaexecuted",(e=>{const t=document.querySelectorAll('form.wpcf7-form input[name="_wpcf7_recaptcha_response"]');for(let c=0;c<t.length;c++)t[c].setAttribute("value",e.detail.token)}))}));