1(function(global,factory){typeof exports=="object"&&typeof module!="undefined"?module.exports=factory():typeof define=="function"&&define.amd?define(factory):(global=typeof globalThis!="undefined"?globalThis:global||self,global.autoComplete=factory())})(this,(function(){"use strict";function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);enumerableOnly&&(symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})),keys.push.apply(keys,symbols)}return keys}function _objectSpread2(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};i%2?ownKeys(Object(source),!0).forEach(function(key){_defineProperty(target,key,source[key])}):Object.getOwnPropertyDescriptors?Object.defineProperties(target,Object.getOwnPropertyDescriptors(source)):ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _typeof(obj){"@babel/helpers - typeof";return _typeof=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(obj2){return typeof obj2}:function(obj2){return obj2&&typeof Symbol=="function"&&obj2.constructor===Symbol&&obj2!==Symbol.prototype?"symbol":typeof obj2},_typeof(obj)}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}function _toConsumableArray(arr){return _arrayWithoutHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableSpread()}function _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(arr)}function _iterableToArray(iter){if(typeof Symbol!="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter)}function _unsupportedIterableToArray(o,minLen){if(o){if(typeof o=="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor&&(n=o.constructor.name),n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen)}}function _arrayLikeToArray(arr,len){(len==null||len>arr.length)&&(len=arr.length);for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _createForOfIteratorHelper(o,allowArrayLike){var it=typeof Symbol!="undefined"&&o[Symbol.iterator]||o["@@iterator"];if(!it){if(Array.isArray(o)||(it=_unsupportedIterableToArray(o))||allowArrayLike&&o&&typeof o.length=="number"){it&&(o=it);var i=0,F=function(){};return{s:F,n:function(){return i>=o.length?{done:!0}:{done:!1,value:o[i++]}},e:function(e){throw e},f:F}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var normalCompletion=!0,didErr=!1,err;return{s:function(){it=it.call(o)},n:function(){var step=it.next();return normalCompletion=step.done,step},e:function(e){didErr=!0,err=e},f:function(){try{!normalCompletion&&it.return!=null&&it.return()}finally{if(didErr)throw err}}}}var select$1=function(element){return typeof element=="string"?document.querySelector(element):element()},create=function(tag,options){var el=typeof tag=="string"?document.createElement(tag):tag;for(var key in options){var val=options[key];if(key==="inside")val.append(el);else if(key==="dest")select$1(val[0]).insertAdjacentElement(val[1],el);else if(key==="around"){var ref=val;ref.parentNode.insertBefore(el,ref),el.append(ref),ref.getAttribute("autofocus")!=null&&ref.focus()}else key in el?el[key]=val:el.setAttribute(key,val)}return el},getQuery=function(field){return field instanceof HTMLInputElement||field instanceof HTMLTextAreaElement?field.value:field.innerHTML},format=function(value,diacritics){return value=String(value).toLowerCase(),diacritics?value.normalize("NFD").replace(/[\u0300-\u036f]/g,"").normalize("NFC"):value},debounce=function(callback,duration){var timer;return function(){clearTimeout(timer),timer=setTimeout(function(){return callback()},duration)}},checkTrigger=function(query,condition,threshold){return condition?condition(query):query.length>=threshold}
1,mark=function(value,cls){return create("mark",_objectSpread2({innerHTML:value},typeof cls=="string"&&{class:cls})).outerHTML},configure=(function(ctx){var name=ctx.name,options=ctx.options,resultsList=ctx.resultsList,resultItem=ctx.resultItem;for(var option in options)if(_typeof(options[option])==="object"){ctx[option]||(ctx[option]={});for(var subOption in options[option])ctx[option][subOption]=options[option][subOption]}else ctx[option]=options[option];ctx.selector=ctx.selector||"#"+name,resultsList.destination=resultsList.destination||ctx.selector,resultsList.id=resultsList.id||name+"_list_"+ctx.id,resultItem.id=resultItem.id||name+"_result",ctx.input=select$1(ctx.selector)}),eventEmitter=(function(name,ctx){ctx.input.dispatchEvent(new CustomEvent(name,{bubbles:!0,detail:ctx.feedback,cancelable:!0}))}),search=(function(query,record,options){var _ref=options||{},mode=_ref.mode,diacritics=_ref.diacritics,highlight=_ref.highlight,nRecord=format(record,diacritics);if(record=String(record),query=format(query,diacritics),mode==="loose"){query=query.replace(/ /g,"");var qLength=query.length,cursor=0,match=Array.from(record).map(function(character,index){return cursor<qLength&&nRecord[index]===query[cursor]&&(character=highlight?mark(character,highlight):character,cursor++),character}).join("");if(cursor===qLength)return match}else{var _match=nRecord.indexOf(query);if(~_match)return query=record.substring(_match,_match+query.length),_match=highlight?record.replace(query,mark(query,highlight)):record,_match}}),getData=function(ctx,query){return new Promise(function($return,$error){var data;return data=ctx.data,data.cache&&data.store?$return():new Promise(function($return2,$error2){return typeof data.src=="function"?data.src(query).then($return2,$error2):$return2(data.src)}).then(function($await_4){try{return ctx.feedback=data.store=$await_4,eventEmitter("response",ctx),$return()}catch($boundEx){return $error($boundEx)}},$error)})},findMatches=function(query,ctx){var data=ctx.data,searchEngine=ctx.searchEngine,matches=[];data.store.forEach(function(value,index){var find=function(key2){var record=key2?value[key2]:value,match=typeof searchEngine=="function"?searchEngine(query,record):search(query,record,{mode:searchEngine,diacritics:ctx.diacritics,highlight:ctx.resultItem.highlight});if(match){var result={match:match,value:value};key2&&(result.key=key2),matches.push(result)}};if(data.keys){var _iterator=_createForOfIteratorHelper(data.keys),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var key=_step.value;find(key)}}catch(err){_iterator.e(err)}finally{_iterator.f()}}else find()}),data.filter&&(matches=data.filter(matches));var results=matches.slice(0,ctx.resultsList.maxResults);ctx.feedback={query:query,matches:matches,results:results},eventEmitter("results",ctx)},Expand="aria-expanded",Active="aria-activedescendant",Selected="aria-selected",feedback=function(ctx,index){ctx.feedback.selection=_objectSpread2({index:index},ctx.feedback.results[index])},render=function(ctx){var resultsList=ctx.resultsList,list=ctx.list,resultItem=ctx.resultItem,feedback2=ctx.feedback,matches=feedback2.matches,results=feedback2.results;if(ctx.cursor=-1,list.innerHTML="",matches.length||resultsList.noResults){var fragment=new DocumentFragment;results.forEach(function(result,index){var element=create(resultItem.tag,_objectSpread2({id:"".concat(resultItem.id,"_").concat(index),role:"option",innerHTML:result.match,inside:fragment},resultItem.class&&{class:resultItem.class}));resultItem.element&&resultItem.element(element,result)}),list.append(fragment),resultsList.element&&resultsList.element(list,feedback2),open(ctx)}else close(ctx)},open=function(ctx){ctx.isOpen||((ctx.wrapper||ctx.input).setAttribute(Expand,!0),ctx.list.removeAttribute("hidden"),ctx.isOpen=!0,eventEmitter("open",ctx))},close=function(ctx){ctx.isOpen&&((ctx.wrapper||ctx.input).setAttribute(Expand,!1),ctx.input.setAttribute(Active,""),ctx.list.setAttribute("hidden",""),ctx.isOpen=!1,eventEmitter("close",ctx))},goTo=function(index,ctx){var resultItem=ctx.resultItem,results=ctx.list.getElementsByTagName(resultItem.tag),cls=resultItem.selected?resultItem.selected.split(" "):!1;if(ctx.isOpen&&results.length){var _results$index$classL,state=ctx.cursor;if(index>=results.length&&(index=0),index<0&&(index=results.length-1),ctx.cursor=index,state>-1){var _results$state$classL;results[state].removeAttribute(Selected),cls&&(_results$state$classL=results[state].classList).remove.apply(_results$state$classL,_toConsumableArray(cls))}results[index].setAttribute(Selected,!0),cls&&(_results$index$classL=results[index].classList).add.apply(_results$index$classL,_toConsumableArray(cls)),ctx.input.setAttribute(Active,results[ctx.cursor].id
1),ctx.list.scrollTop=results[index].offsetTop-ctx.list.clientHeight+results[index].clientHeight+5,ctx.feedback.cursor=ctx.cursor,feedback(ctx,index),eventEmitter("navigate",ctx)}},next=function(ctx){goTo(ctx.cursor+1,ctx)},previous=function(ctx){goTo(ctx.cursor-1,ctx)},select=function(ctx,event,index){index=index>=0?index:ctx.cursor,!(index<0)&&(ctx.feedback.event=event,feedback(ctx,index),eventEmitter("selection",ctx),close(ctx))},click=function(event,ctx){var itemTag=ctx.resultItem.tag.toUpperCase(),items=Array.from(ctx.list.querySelectorAll(itemTag)),item=event.target.closest(itemTag);item&&item.nodeName===itemTag&&select(ctx,event,items.indexOf(item))},navigate=function(event,ctx){switch(event.keyCode){case 40:case 38:event.preventDefault(),event.keyCode===40?next(ctx):previous(ctx);break;case 13:ctx.submit||event.preventDefault(),ctx.cursor>=0&&select(ctx,event);break;case 9:ctx.resultsList.tabSelect&&ctx.cursor>=0&&select(ctx,event);break;case 27:ctx.input.value="",close(ctx);break}};function start(ctx,q){var _this=this;return new Promise(function($return,$error){var queryVal,condition;if(queryVal=q||getQuery(ctx.input),queryVal=ctx.query?ctx.query(queryVal):queryVal,condition=checkTrigger(queryVal,ctx.trigger,ctx.threshold),condition)return getData(ctx,queryVal).then(function($await_2){try{return ctx.feedback instanceof Error?$return():(findMatches(queryVal,ctx),ctx.resultsList&&render(ctx),$If_1.call(_this))}catch($boundEx){return $error($boundEx)}},$error);return close(ctx),$If_1.call(_this);function $If_1(){return $return()}})}var eventsManager=function(events,callback){for(var element in events)for(var event in events[element])callback(element,event)},addEvents=function(ctx){var events=ctx.events,run=debounce(function(){return start(ctx)},ctx.debounce),publicEvents=ctx.events=_objectSpread2({input:_objectSpread2({},events&&events.input)},ctx.resultsList&&{list:events?_objectSpread2({},events.list):{}}),privateEvents={input:{input:function(){run()},keydown:function(event){navigate(event,ctx)},blur:function(){close(ctx)}},list:{mousedown:function(event){event.preventDefault()},click:function(event){click(event,ctx)}}};eventsManager(privateEvents,function(element,event){!ctx.resultsList&&event!=="input"||publicEvents[element][event]||(publicEvents[element][event]=privateEvents[element][event])}),eventsManager(publicEvents,function(element,event){ctx[element].addEventListener(event,publicEvents[element][event])})},removeEvents=function(ctx){eventsManager(ctx.events,function(element,event){ctx[element].removeEventListener(event,ctx.events[element][event])})};function init(ctx){var _this=this;return new Promise(function($return,$error){var placeHolder,resultsList,parentAttrs;if(placeHolder=ctx.placeHolder,resultsList=ctx.resultsList,parentAttrs={role:"combobox","aria-owns":resultsList.id,"aria-haspopup":!0,"aria-expanded":!1},create(ctx.input,_objectSpread2(_objectSpread2({"aria-controls":resultsList.id,"aria-autocomplete":"both"},placeHolder&&{placeholder:placeHolder}),!ctx.wrapper&&_objectSpread2({},parentAttrs))),ctx.wrapper&&(ctx.wrapper=create("div",_objectSpread2({around:ctx.input,class:ctx.name+"_wrapper"},parentAttrs))),resultsList&&(ctx.list=create(resultsList.tag,_objectSpread2({dest:[resultsList.destination,resultsList.position],id:resultsList.id,role:"listbox",hidden:"hidden"},resultsList.class&&{class:resultsList.class}))),addEvents(ctx),ctx.data.cache)return getData(ctx).then(function($await_2){try{return $If_1.call(_this)}catch($boundEx){return $error($boundEx)}},$error);function $If_1(){return eventEmitter("init",ctx),$return()}return $If_1.call(_this)})}function extend(autoComplete2){var prototype=autoComplete2.prototype;prototype.init=function(){init(this)},prototype.start=function(query){start(this,query)},prototype.unInit=function(){if(this.wrapper){var parentNode=this.wrapper.parentNode;parentNode.insertBefore(this.input,this.wrapper),parentNode.removeChild(this.wrapper)}removeEvents(this)},prototype.open=function(){open(this)},prototype.close=function(){close(this)},prototype.goTo=function(index){goTo(index,this)},prototype.next=function(){next(this)},prototype.previous=function(){previous(this)},prototype.select=function(index){select(this,null,index)},prototype.search=function(query,record,options){return search(query,record,options)}}function autoComplete(config){this.options=config,this.id=autoComplete.instances=(autoComplete.instances||0)+1,this.name="autoComplete",this.wrapper=1,this.threshold=1,this.debounce=0,this.resultsList={position:"afterend",tag:"ul",maxResults:5},this.resultItem={tag:"li"},configure(this),extend.call(this,autoComplete),init(this)}return autoComplete})); 2//# sourceMappingURL=/cdn/shop/t/29/assets/autocomplete.js.map?v=58099307030307720711784685015
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.