UNPKG

getaddress-autocomplete

Version:

GetAddress.io - Autocomplete plug-in

457 lines (449 loc) 398 kB
var _a$2;class Storage{}_a$2=Storage,Storage['key']='getaddress_local_addresses',Storage['save']=(_0x1e85b5,_0x5c876f)=>{let _0x613d96=localStorage['getItem'](_a$2['key']);if(!_0x613d96||_a$2['isObjectEmpty'](_0x613d96)){const _0x599577=new Map(),_0x47ab84=new StoredAddress(_0x1e85b5,_0x5c876f,new Date()['getTime']());_0x599577['set'](_0x1e85b5['id'],_0x47ab84);const _0x1511b7=JSON['stringify']([..._0x599577]);localStorage['setItem'](_a$2['key'],_0x1511b7);}else {const _0x5894ce=new Map(JSON['parse'](_0x613d96));if(!_0x5894ce['get'](_0x1e85b5['id'])){if(_0x5894ce['size']>=0x6){const _0x139ed1=[..._0x5894ce['entries']()]['sort']((_0xda9399,_0x2c10c1)=>{const _0x5e375d=_0xda9399[0x1],_0x56387f=_0x2c10c1[0x1];return _0x5e375d['timestamp']-_0x56387f['timestamp'];});_0x5894ce['delete'](_0x139ed1[0x0][0x0]);}const _0x3f56ff=new StoredAddress(_0x1e85b5,_0x5c876f,new Date()['getTime']());_0x5894ce['set'](_0x1e85b5['id'],_0x3f56ff);const _0x5739b4=JSON['stringify']([..._0x5894ce]);localStorage['setItem'](_a$2['key'],_0x5739b4);}}},Storage['list']=()=>{let _0x13ac5d=localStorage['getItem'](_a$2['key']);if(!_0x13ac5d||_a$2['isObjectEmpty'](_0x13ac5d))return [];const _0x552903=new Map(JSON['parse'](_0x13ac5d)),_0x4887a6=[..._0x552903['entries']()]['map'](_0x455d40=>{const _0x35eee4=_0x455d40[0x1];return _0x35eee4;});return _0x4887a6['reverse']();},Storage['isObjectEmpty']=_0x5f4ae4=>{if(!_0x5f4ae4)return !![];return _0x5f4ae4==='{}'||_0x5f4ae4==='\x22{}\x22';},Storage['clear']=()=>{localStorage['removeItem'](_a$2['key']);},Storage['clearExpired']=()=>{let _0x135c82=localStorage['getItem'](_a$2['key']);if(!_0x135c82||_a$2['isObjectEmpty'](_0x135c82))return;const _0x12bae4=new Map(JSON['parse'](_0x135c82));let _0x109638=![];_0x12bae4['forEach']((_0x274df7,_0x21e2f2)=>{const _0x57b81b=_0x274df7;let _0x48b055=new Date();var _0x238dd4=new Date(new Date()['setDate'](_0x48b055['getDate']()-0x7));_0x238dd4['getTime']()>_0x57b81b['timestamp']&&(_0x12bae4['delete'](_0x21e2f2),_0x109638=!![]);});if(_0x109638){if(_0x12bae4['size']>0x0){const _0x5db404=JSON['stringify']([..._0x12bae4]);localStorage['setItem'](_a$2['key'],_0x5db404);}else localStorage['removeItem'](_a$2['key']);}},Storage['remove']=_0x3b3950=>{let _0x490a33=localStorage['getItem'](_a$2['key']);if(!_0x490a33||_a$2['isObjectEmpty'](_0x490a33))return;const _0x3b6cb4=new Map(JSON['parse'](_0x490a33));let _0x15b90e=![];_0x3b6cb4['forEach']((_0xe561c9,_0x52a1e1)=>{_0x52a1e1===_0x3b3950&&(_0x3b6cb4['delete'](_0x3b3950),_0x15b90e=!![]);});if(_0x15b90e){if(_0x3b6cb4['size']>0x0){const _0x476ea9=JSON['stringify']([..._0x3b6cb4]);localStorage['setItem'](_a$2['key'],_0x476ea9);}else localStorage['removeItem'](_a$2['key']);}};class StoredAddress{constructor(_0x301c8d,_0x3d59de,_0xf8743b){this['suggestion']=_0x301c8d,this['address']=_0x3d59de,this['timestamp']=_0xf8743b;}} class List{constructor(options,_0xe26d94){this['options']=options,this['instance']=_0xe26d94,this['list']=document['createElement']('DIV'),this['style']=document['createElement']('style'),this['element']=this['list'],this['selectedIndex']=-0x1,this['handleKeyDown']=_0x1a5d82=>{switch(_0x1a5d82['key']){case'PageUp':this['handlePageUp'](_0x1a5d82);break;case'PageDown':this['handlePageDown'](_0x1a5d82);break;}},this['handlePageDown']=_0x59a111=>{this['element']['children']['length']>0x0&&(this['setSelectedIndex'](this['lastIndex']()),_0x59a111['preventDefault']());},this['handlePageUp']=_0x4940e9=>{this['element']['children']['length']>0x0&&(this['setSelectedIndex'](0x0),_0x4940e9['preventDefault']());},this['populate']=_0x41ff19=>{this['clear']();_0x41ff19['length']>0x0&&this['show']();_0x41ff19['forEach'](_0x334263=>{this['list']['insertBefore'](_0x334263,null);});if(this['options']['footer_template']){var _0x555f60=document['createElement']('DIV');_0x555f60['innerHTML']=this['options']['footer_template'](_0x41ff19),this['list']['insertBefore'](_0x555f60,null);}},this['show']=()=>{this['list']['style']['visibility']='visible';},this['removeFocusedClassName']=()=>{List['removeFocusedClassName'](this);},this['clear']=()=>{this['list']['replaceChildren'](...[]),this['hide'](),this['resetSelectedIndex']();},this['hide']=()=>{this['list']['style']['visibility']='hidden';},this['listItemCss']=_0xa8dcb9=>{if(_0xa8dcb9!==0x0)return '';const _0x5cd9b8='\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x20List\x20Item\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20.ga-autocomplete-list-item:hover,\x0a\x20\x20\x20\x20\x20\x20\x20\x20.ga-autocomplete-list-item-focused\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background-color:var(--ga-autocomplete-list-item-background-color,#f3f3f3);\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cursor:\x20var(--ga-autocomplete-list-item-cursor,pointer);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20outline:var(--ga-autocomplete-list-item-outline,0);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}';return _0x5cd9b8;},this['iconCss']=_0x2a714d=>{if(_0x2a714d!==0x0)return '';const _0x3d7e13='\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20/*icons*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20@font-face\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20\x27getAddress\x27;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20src:\x20url(\x27data:application/octet-stream;base64,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\x27)\x20format(\x27woff\x27),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20url(\x27data:application/octet-stream;base64,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\x27)\x20format(\x27truetype\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.ga-autocomplete-list-item\x20.ga-autocomplete-location-icon:before\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20var(--ga-autocomplete-location-icon-font-familiy,getAddress);\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20content:\x20\x27\x5cf031\x27;\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--ga-autocomplete-location-item-color,#EA4335);\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.ga-autocomplete-history-item\x20.ga-autocomplete-location-icon:before\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20var(--ga-autocomplete-location-icon-font-familiy,getAddress);\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20content:\x20\x27\x5ce802\x27;\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color:\x20var(--ga-autocomplete-location-history-item-color,grey);\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}';return _0x3d7e13;},this['list']['id']='ga-autocomplete-list-'+_0xe26d94,this['list']['setAttribute']('role','listbox'),this['list']['addEventListener']('keydown',this['handleKeyDown']),this['list']['className']='ga-autocomplete-list',Storage['clearExpired']();}['destroy'](){this['list']['removeEventListener']('keydown',this['handleKeyDown']),this['list']['remove'](),this['style']['remove']();}static['setFocus'](_0x2222ce,_0x42606e,_0x65bb2e){if(_0x2222ce>-0x1&&_0x42606e['list']['children']['length']>0x0){List['removeFocusedClassName'](_0x42606e);let _0x7f7d98=_0x42606e['list']['children'][_0x2222ce];List['addFocusedClassName'](_0x7f7d98),_0x7f7d98['focus']({'focusVisible':!![]});return;}_0x65bb2e['setFocus']();}['resetSelectedIndex'](){this['removeFocusedClassName'](),this['selectedIndex']=-0x1;}static['setSelectedIndex'](_0x33286a,_0x2f4977,_0x145bbf){if(_0x33286a==-0x1){_0x145bbf['setFocus']();return;}if(_0x33286a>_0x2f4977['lastIndex']()){_0x2f4977['selectedIndex']=_0x2f4977['lastIndex']();return;}_0x2f4977['selectedIndex']=_0x33286a,_0x2f4977['setFocus']();}['lastIndex'](){let _0x511244=0x1;return this['options']['footer_template']&&(_0x511244=0x2),this['list']['children']['length']-_0x511244;}['getSelectedIndex'](){return this['selectedIndex'];}['containsActiveElment'](){return this['list']['contains'](document['activeElement']);}['dispatchSelected'](_0x4662ce,_0x87b830,_0x29e618){const _0x486748=_0x87b830,_0x6aa0a7=new Event('getaddress-autocomplete-selected',{'bubbles':!![]});_0x6aa0a7['address']=_0x29e618,_0x6aa0a7['data']=_0x486748,_0x6aa0a7['id']=_0x4662ce,this['element']['dispatchEvent'](_0x6aa0a7);}['dispatchSelectedFailed'](_0x1cd665,_0x55617b,_0x544a25){const _0x12ceea=new Event('getaddress-autocomplete-selected-failed',{'bubbles':!![]});_0x12ceea['status']=_0x55617b,_0x12ceea['message']=_0x544a25,_0x12ceea['id']=_0x1cd665,this['element']['dispatchEvent'](_0x12ceea);}['dispatchSuggestions'](_0x2984ff,_0x18a477){const _0x32139f=_0x2984ff,_0x204e5a=new Event('getaddress-autocomplete-suggestions',{'bubbles':!![]});_0x204e5a['suggestions']=_0x18a477,_0x204e5a['data']=_0x32139f,this['element']['dispatchEvent'](_0x204e5a);}['dispatchSuggestionsFailed'](_0xec48f4,_0x514cfc,_0x347ec0){const _0x175496=new Event('getaddress-autocomplete-modal-suggestions-failed',{'bubbles':!![]});_0x175496['status']=_0x514cfc,_0x175496['message']=_0x347ec0,_0x175496['data']=_0xec48f4,this['element']['dispatchEvent'](_0x175496);}}List['addFocusedClassName']=_0x4958b8=>{_0x4958b8['classList']['add']('ga-autocomplete-list-item-focused');},List['removeFocusedClassName']=_0x1c2336=>{const _0x32d8ce=_0x1c2336['list']['children'];for(let _0x10adfe=0x0;_0x10adfe<_0x32d8ce['length'];_0x10adfe++){_0x32d8ce[_0x10adfe]['classList']['remove']('ga-autocomplete-list-item-focused');}}; class ItemContainer{constructor(_0x3df3fe,_0x260e0f){this['input']=_0x3df3fe,this['index']=_0x260e0f,this['container']=document['createElement']('DIV'),this['element']=this['container'],this['handleFocus']=_0x3b3111=>{this['input']['list']['setSelectedIndex'](this['index']);},this['handleKeyDown']=_0x336407=>{switch(_0x336407['key']){case'ArrowUp':this['handleUpKey'](_0x336407);break;case'ArrowDown':this['handleDownKey'](_0x336407);break;case'Enter':this['handleEnterKey'](_0x336407);break;}},this['handleDownKey']=_0x374995=>{this['input']['list']['setSelectedIndex'](this['index']+0x1),_0x374995['preventDefault']();},this['handleUpKey']=_0x2d04dd=>{this['input']['list']['setSelectedIndex'](this['index']-0x1),_0x2d04dd['preventDefault']();},this['container']['addEventListener']('keydown',this['handleKeyDown']),this['container']['addEventListener']('focus',this['handleFocus']),this['container']['tabIndex']=-0x1,this['container']['className']='ga-autocomplete-list-item';}['destroy'](){this['container']['removeEventListener']('keydown',this['handleKeyDown']),this['container']['removeEventListener']('focus',this['handleFocus']),this['container']['remove']();}}ItemContainer['getAddress']=(_0x243b6d,_0x36a5f0,_0x3f1cae)=>{_0x243b6d['dispatchSelected'](_0x36a5f0['id'],_0x3f1cae),_0x243b6d['clearList']();}; var __awaiter$b=undefined&&undefined['__awaiter']||function(_0x5ced45,_0xe5480d,_0x5f1d71,_0x1980da){function _0x49234e(_0xfc38f6){return _0xfc38f6 instanceof _0x5f1d71?_0xfc38f6:new _0x5f1d71(function(_0x1c762c){_0x1c762c(_0xfc38f6);});}return new(_0x5f1d71||(_0x5f1d71=Promise))(function(_0x1992ec,_0x1282a1){function _0x307e39(_0x586caf){try{_0x3b7d66(_0x1980da['next'](_0x586caf));}catch(_0x3d06f8){_0x1282a1(_0x3d06f8);}}function _0x1acdb5(_0xf7cb21){try{_0x3b7d66(_0x1980da['throw'](_0xf7cb21));}catch(_0x28f5ea){_0x1282a1(_0x28f5ea);}}function _0x3b7d66(_0x4eefbb){_0x4eefbb['done']?_0x1992ec(_0x4eefbb['value']):_0x49234e(_0x4eefbb['value'])['then'](_0x307e39,_0x1acdb5);}_0x3b7d66((_0x1980da=_0x1980da['apply'](_0x5ced45,_0xe5480d||[]))['next']());});};class AnchoredItemContainer extends ItemContainer{constructor(_0x35d502,_0x19060f,_0x3febd5,options,_0x4a3598){super(_0x19060f,_0x4a3598),this['client']=_0x35d502,this['suggestion']=_0x3febd5,this['options']=options,this['handleEnterKey']=_0x42c610=>__awaiter$b(this,void 0x0,void 0x0,function*(){_0x42c610['preventDefault'](),yield this['getAddress'](),this['input']['repopulate']=![],this['input']['setFocus']();}),this['destroy']=()=>{this['container']['removeEventListener']('click',this['handleClick']),super['destroy']();},this['handleClick']=_0x39cda4=>__awaiter$b(this,void 0x0,void 0x0,function*(){yield this['getAddress'](),this['input']['repopulate']=![],this['input']['setFocus']();}),this['getAddress']=()=>__awaiter$b(this,void 0x0,void 0x0,function*(){const _0x4c34d5=yield this['client']['get'](this['suggestion']['id']);if(!_0x4c34d5['isSuccess']){const _0x375e4c=_0x4c34d5['toFailed']();this['input']['dispatchSelectedFailed'](this['suggestion']['id'],_0x375e4c['status'],_0x375e4c['message']);return;}let _0x4f9d77=_0x4c34d5['toSuccess']();this['options']['enable_history']&&Storage['save'](this['suggestion'],_0x4f9d77['address']),ItemContainer['getAddress'](this['input'],this['suggestion'],_0x4f9d77['address']);}),this['container']['innerHTML']=options['item_template'](_0x3febd5),this['container']['classList']['add']('ga-autocomplete-anchored-list-item'),options['list_item_style']&&this['container']['setAttribute']('style',options['list_item_style']),this['container']['addEventListener']('click',this['handleClick']);}} var __awaiter$a=undefined&&undefined['__awaiter']||function(_0x544aa8,_0x18e62c,_0x384ef0,_0x33078b){function _0x772a9(_0x3ae1fb){return _0x3ae1fb instanceof _0x384ef0?_0x3ae1fb:new _0x384ef0(function(_0x50ba21){_0x50ba21(_0x3ae1fb);});}return new(_0x384ef0||(_0x384ef0=Promise))(function(_0x1bf25f,_0xf24b77){function _0x229c3d(_0x1ce1dd){try{_0x13da30(_0x33078b['next'](_0x1ce1dd));}catch(_0x36f3e0){_0xf24b77(_0x36f3e0);}}function _0x513724(_0x2274c0){try{_0x13da30(_0x33078b['throw'](_0x2274c0));}catch(_0x275199){_0xf24b77(_0x275199);}}function _0x13da30(_0x11d6c2){_0x11d6c2['done']?_0x1bf25f(_0x11d6c2['value']):_0x772a9(_0x11d6c2['value'])['then'](_0x229c3d,_0x513724);}_0x13da30((_0x33078b=_0x33078b['apply'](_0x544aa8,_0x18e62c||[]))['next']());});};class AnchoredHistoryContainer extends ItemContainer{constructor(_0x5d3664,_0x5ebf31,options,_0x6c89b0){var _0x1cfd5a;super(_0x5d3664,_0x6c89b0),this['storedAddress']=_0x5ebf31,this['options']=options,this['handleEnterKey']=_0x594947=>__awaiter$a(this,void 0x0,void 0x0,function*(){_0x594947['preventDefault'](),yield this['getAddress'](),this['input']['repopulate']=![],this['input']['setFocus']();}),this['destroy']=()=>{this['container']['removeEventListener']('click',this['handleClick']),super['destroy']();},this['handleClick']=_0x408adb=>__awaiter$a(this,void 0x0,void 0x0,function*(){yield this['getAddress'](),this['input']['repopulate']=![],this['input']['setFocus']();}),this['getAddress']=()=>__awaiter$a(this,void 0x0,void 0x0,function*(){yield ItemContainer['getAddress'](this['input'],this['storedAddress']['suggestion'],this['storedAddress']['address']);});const _0x2c4075=(_0x1cfd5a=options['history_item_template'])!==null&&_0x1cfd5a!==void 0x0?_0x1cfd5a:options['item_template'];this['container']['innerHTML']=_0x2c4075(_0x5ebf31['suggestion']),this['container']['classList']['add']('ga-autocomplete-history-item'),this['container']['classList']['add']('ga-autocomplete-anchored-history-item'),options['history_item_style']&&this['container']['setAttribute']('style',options['history_item_style']),this['container']['addEventListener']('click',this['handleClick']);}} /* eslint-disable class-methods-use-this */ class Result { constructor(isSuccess) { this.isSuccess = isSuccess; } } class Success extends Result { constructor() { super(true); } } class AutocompleteSuccess extends Success { constructor(suggestions) { super(); this.suggestions = suggestions; } toSuccess() { return this; } toFailed() { throw new Error('Did not fail'); } } class LocationSuccess extends Success { constructor(suggestions) { super(); this.suggestions = suggestions; } toSuccess() { return this; } toFailed() { throw new Error('Did not fail'); } } class GetSuccess extends Success { constructor(address) { super(); this.address = address; } toSuccess() { return this; } toFailed() { throw new Error('Did not fail'); } } class GetLocationSuccess extends Success { constructor(location) { super(); this.location = location; } toSuccess() { return this; } toFailed() { throw new Error('Did not fail'); } } class GetLocationFailed extends Result { constructor(status, message) { super(false); this.status = status; this.message = message; } toSuccess() { throw new Error('Not a success'); } toFailed() { return this; } } class AutocompleteFailed extends Result { constructor(status, message) { super(false); this.status = status; this.message = message; } toSuccess() { throw new Error('Not a success'); } toFailed() { return this; } } class LocationFailed extends Result { constructor(status, message) { super(false); this.status = status; this.message = message; } toSuccess() { throw new Error('Not a success'); } toFailed() { return this; } } class GetFailed extends Result { constructor(status, message) { super(false); this.status = status; this.message = message; } toSuccess() { throw new Error('Not a success'); } toFailed() { return this; } } class FindSuccess extends Success { constructor(addresses) { super(); this.addresses = addresses; } toSuccess() { return this; } toFailed() { throw new Error('failed'); } } class FindFailed extends Result { constructor(status, message) { super(false); this.status = status; this.message = message; } toSuccess() { throw new Error('failed'); } toFailed() { return this; } } class TypeaheadSuccess extends Success { constructor(results) { super(); this.results = results; } toSuccess() { return this; } toFailed() { throw new Error('failed'); } } class TypeaheadFailed extends Result { constructor(status, message) { super(false); this.status = status; this.message = message; } toSuccess() { throw new Error('failed'); } toFailed() { return this; } } var __awaiter$9 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; class Client { constructor(api_key, autocomplete_url = 'https://api.getaddress.io/autocomplete/{query}', get_url = 'https://api.getaddress.io/get/{id}', location_url = 'https://api.getaddress.io/location/{query}', get_location_url = 'https://api.getaddress.io/get-location/{id}', typeahead_url = 'https://api.getaddress.io/typeahead/{term}') { this.api_key = api_key; this.autocomplete_url = autocomplete_url; this.get_url = get_url; this.location_url = location_url; this.get_location_url = get_location_url; this.typeahead_url = typeahead_url; this.autocompleteResponse = undefined; this.getResponse = undefined; this.locationResponse = undefined; this.getLocationResponse = undefined; this.typeaheadResponse = undefined; this.autocompleteAbortController = new AbortController(); this.getAbortController = new AbortController(); this.typeaheadAbortController = new AbortController(); this.locationAbortController = new AbortController(); this.getLocationAbortController = new AbortController(); } location(query_1) { return __awaiter$9(this, arguments, void 0, function* (query, options = {}) { try { const combinedOptions = Object.assign({ all: true }, options); let url = this.location_url.replace(/{query}/i, query); if (this.api_key) { if (url.includes('?')) { url = `${url}&api-key=${this.api_key}`; } else { url = `${url}?api-key=${this.api_key}`; } } if (this.locationResponse !== undefined) { this.locationResponse = undefined; this.locationAbortController.abort(); this.locationAbortController = new AbortController(); } this.locationResponse = yield fetch(url, { method: 'post', signal: this.locationAbortController.signal, headers: { 'Content-Type': 'application/json', }, body: JSON.stringify(combinedOptions), }); if (this.locationResponse.status === 200) { const json = yield this.locationResponse.json(); const suggestions = json.suggestions; return new LocationSuccess(suggestions); } const json = yield this.locationResponse.json(); return new LocationFailed(this.locationResponse.status, json.Message); } catch (err) { if (err instanceof Error) { if (err.name === 'AbortError') { return new LocationSuccess([]); } return new LocationFailed(401, err.message); } return new LocationFailed(401, 'Unauthorised'); } finally { this.locationResponse = undefined; } }); } getLocation(id) { return __awaiter$9(this, void 0, void 0, function* () { try { let url = this.get_location_url.replace(/{id}/i, id); if (this.api_key) { if (url.includes('?')) { url = `${url}&api-key=${this.api_key}`; } else { url = `${url}?api-key=${this.api_key}`; } } if (this.getLocationResponse !== undefined) { this.getResponse = undefined; this.getLocationAbortController.abort(); this.getLocationAbortController = new AbortController(); } this.getResponse = yield fetch(url, { method: 'get', signal: this.getLocationAbortController.signal, headers: { 'Content-Type': 'application/json', }, }); if (this.getResponse.status === 200) { const json = yield this.getResponse.json(); const loaction = json; return new GetLocationSuccess(loaction); } const json = yield this.getResponse.json(); return new GetLocationFailed(this.getResponse.status, json.Message); } catch (err) { if (err instanceof Error) { return new GetLocationFailed(401, err.message); } return new GetLocationFailed(401, 'Unauthorised'); } finally { this.getResponse = undefined; } }); } autocomplete(query_1) { return __awaiter$9(this, arguments, void 0, function* (query, options = {}) { try { const combinedOptions = Object.assign({ all: true }, options); let url = this.autocomplete_url.replace(/{query}/i, query); if (this.api_key) { if (url.includes('?')) { url = `${url}&api-key=${this.api_key}`; } else { url = `${url}?api-key=${this.api_key}`; } } if (this.autocompleteResponse !== undefined) { this.autocompleteResponse = undefined; this.autocompleteAbortController.abort(); this.autocompleteAbortController = new AbortController(); } this.autocompleteResponse = yield fetch(url, { method: 'post', signal: this.autocompleteAbortController.signal, headers: { 'Content-Type': 'application/json', }, body: JSON.stringify(combinedOptions) }); if (this.autocompleteResponse.status === 200) { const json = yield this.autocompleteResponse.json(); const suggestions = json.suggestions; return new AutocompleteSuccess(suggestions); } const json = yield this.autocompleteResponse.json(); return new AutocompleteFailed(this.autocompleteResponse.status, json.Message); } catch (err) { if (err instanceof Error) { if (err.name === 'AbortError') { return new AutocompleteSuccess([]); } return new AutocompleteFailed(401, err.message); } return new AutocompleteFailed(401, 'Unauthorised'); } finally { this.autocompleteResponse = undefined; } }); } get(id_1) { return __awaiter$9(this, arguments, void 0, function* (id, options = {}) { try { let url = this.get_url.replace(/{id}/i, id); if (this.api_key) { if (url.includes('?')) { url = `${url}&api-key=${this.api_key}`; } else { url = `${url}?api-key=${this.api_key}`; } } if (options.remember === false) { url = `${url}&remember=false`; } if (this.getResponse !== undefined) { this.getResponse = undefined; this.getAbortController.abort(); this.getAbortController = new AbortController(); } this.getResponse = yield fetch(url, { method: 'get', signal: this.getAbortController.signal, headers: { 'Content-Type': 'application/json', }, }); if (this.getResponse.status === 200) { const json = yield this.getResponse.json(); const address = json; return new GetSuccess(address); } const json = yield this.getResponse.json(); return new GetFailed(this.getResponse.status, json.Message); } catch (err) { if (err instanceof Error) { return new GetFailed(401, err.message); } return new GetFailed(401, 'Unauthorised'); } finally { this.getResponse = undefined; } }); } find(postcode) { return __awaiter$9(this, void 0, void 0, function* () { try { const response = yield fetch(`https://api.getaddress.io/find/${postcode}?api-key=${this.api_key}&expand=true`); if (response.status === 200) { const json = yield response.json(); const addresses = json; return new FindSuccess(addresses); } const json = yield response.json(); return new FindFailed(response.status, json.Message); } catch (err) { if (err instanceof Error) { return new FindFailed(401, err.message); } return new FindFailed(401, 'Unauthorised'); } }); } typeahead(term_1) { return __awaiter$9(this, arguments, void 0, function* (term, options = {}) { try { let url = this.typeahead_url.replace(/{term}/i, term); if (this.api_key) { if (url.includes('?')) { url = `${url}&api-key=${this.api_key}`; } else { url = `${url}?api-key=${this.api_key}`; } } if (this.typeaheadResponse !== undefined) { this.typeaheadResponse = undefined; this.typeaheadAbortController.abort(); this.typeaheadAbortController = new AbortController(); } this.typeaheadResponse = yield fetch(url, { method: 'post', signal: this.autocompleteAbortController.signal, headers: { 'Content-Type': 'application/json', }, body: JSON.stringify(options), }); if (this.typeaheadResponse.status === 200) { const json = yield this.typeaheadResponse.json(); const results = json; return new TypeaheadSuccess(results); } const json = yield this.typeaheadResponse.json(); return new TypeaheadFailed(this.typeaheadResponse.status, json.Message); } catch (err) { if (err instanceof Error) { if (err.name === 'AbortError') { return new TypeaheadSuccess([]); } return new TypeaheadFailed(401, err.message); } return new TypeaheadFailed(401, 'Unauthorised'); } finally { this.typeaheadResponse = undefined; } }); } } var __awaiter$8=undefined&&undefined['__awaiter']||function(_0x3b433c,_0xad3c86,_0x3d9f1b,_0x4d1672){function _0x5d4fb9(_0x796771){return _0x796771 instanceof _0x3d9f1b?_0x796771:new _0x3d9f1b(function(_0x24572e){_0x24572e(_0x796771);});}return new(_0x3d9f1b||(_0x3d9f1b=Promise))(function(_0x222a95,_0x2c2f48){function _0x13c5bd(_0x1fc3ef){try{_0x16d210(_0x4d1672['next'](_0x1fc3ef));}catch(_0x1a46d4){_0x2c2f48(_0x1a46d4);}}function _0x3c42ec(_0x31090e){try{_0x16d210(_0x4d1672['throw'](_0x31090e));}catch(_0x202b37){_0x2c2f48(_0x202b37);}}function _0x16d210(_0x4314e3){_0x4314e3['done']?_0x222a95(_0x4314e3['value']):_0x5d4fb9(_0x4314e3['value'])['then'](_0x13c5bd,_0x3c42ec);}_0x16d210((_0x4d1672=_0x4d1672['apply'](_0x3b433c,_0xad3c86||[]))['next']());});};class Suggester{constructor(apiKey,_0x10ec21,options){this['input']=_0x10ec21,this['options']=options,this['suggestions']=_0x3fb99d=>__awaiter$8(this,void 0x0,void 0x0,function*(){return new Promise((_0x3d8a76,_0x2ac2bd)=>__awaiter$8(this,void 0x0,void 0x0,function*(){try{let _0x56e707=_0x3fb99d?0x0:this['options']['delay'];clearTimeout(this['filterTimer']),this['filterTimer']=setTimeout(()=>__awaiter$8(this,void 0x0,void 0x0,function*(){const _0x46bc6e=yield this['getElements']();_0x3d8a76(_0x46bc6e);return;}),_0x56e707);}catch(_0x2b6ae0){_0x2ac2bd(_0x2b6ae0);}}));}),this['hasMinimumCharacters']=_0x222dd2=>{var _0xa2cdc7;!_0x222dd2&&(_0x222dd2='');var _0x3f078b=(_0xa2cdc7=this['options']['minimum_characters'])!==null&&_0xa2cdc7!==void 0x0?_0xa2cdc7:0x2;return _0x222dd2['length']>=_0x3f078b;},this['getSuggestions']=_0x3b9019=>{return new Promise((_0x3e633e,_0x284af3)=>__awaiter$8(this,void 0x0,void 0x0,function*(){var _0x3363ec,_0x1009bd,_0x17a2e6;try{const _0x50fde6={'all':!![],'top':this['options']['suggestion_count'],'template':this['options']['suggestion_template']};this['options']['filter']&&(_0x50fde6['filter']=this['options']['filter']);this['options']['show_postcode']&&(_0x50fde6['show_postcode']=this['options']['show_postcode']);if(!_0x50fde6['location']){const _0x1563a6=Storage['list']();if(_0x1563a6['length']>0x0){const _0x1e3147=_0x1563a6[0x0];_0x50fde6['location']={'latitude':_0x1e3147['address']['latitude'],'longitude':_0x1e3147['address']['longitude']};}}const _0x324c7b=yield this['client']['autocomplete'](_0x3b9019,_0x50fde6);if(!_0x324c7b['isSuccess']){const _0xd6305c=_0x324c7b['toFailed']();_0x284af3(_0xd6305c),(_0x3363ec=this['input']['list'])===null||_0x3363ec===void 0x0?void 0x0:_0x3363ec['dispatchSuggestionsFailed'](_0x3b9019,_0xd6305c['status'],_0xd6305c['message']);return;}const _0x15a8d8=_0x324c7b['toSuccess']()['suggestions'];if(this['options']['highlight_search_text'])for(let _0x3890d1 of _0x15a8d8){_0x3890d1['address']=this['highlightSuggestion'](_0x3b9019,_0x3890d1['address']);}_0x3e633e(_0x15a8d8),(_0x1009bd=this['input']['list'])===null||_0x1009bd===void 0x0?void 0x0:_0x1009bd['dispatchSuggestions'](_0x3b9019,_0x15a8d8);return;}catch(_0x5eb24a){_0x284af3(_0x5eb24a),(_0x17a2e6=this['input']['list'])===null||_0x17a2e6===void 0x0?void 0x0:_0x17a2e6['dispatchSuggestionsFailed'](_0x3b9019,0x190,_0x5eb24a);return;}}));},this['highlightSuggestion']=(_0x5e12cf,_0x438bdb)=>{const _0x4a54e0='<mark>',_0x1b60fd='</mark>';let _0x4cffa9=_0x5e12cf['trim']()['replace'](/ /g,',*\x20+');const _0x56529f=new RegExp('\x5cb('+_0x4cffa9+')','gi');return _0x438bdb=_0x438bdb['replace'](_0x56529f,_0x4a54e0+'$1'+_0x1b60fd),_0x438bdb;},this['client']=new Client(apiKey);}} var __awaiter$7=undefined&&undefined['__awaiter']||function(_0x534b48,_0x28a9db,_0x4a0ba7,_0x3dcdc4){function _0x55c0e5(_0x2220e3){return _0x2220e3 instanceof _0x4a0ba7?_0x2220e3:new _0x4a0ba7(function(_0x536060){_0x536060(_0x2220e3);});}return new(_0x4a0ba7||(_0x4a0ba7=Promise))(function(_0x21a9ee,_0x42c791){function _0x1f3634(_0x19a48b){try{_0x239287(_0x3dcdc4['next'](_0x19a48b));}catch(_0x56c958){_0x42c791(_0x56c958);}}function _0x590bb5(_0x1feb67){try{_0x239287(_0x3dcdc4['throw'](_0x1feb67));}catch(_0x5486f0){_0x42c791(_0x5486f0);}}function _0x239287(_0x12d5af){_0x12d5af['done']?_0x21a9ee(_0x12d5af['value']):_0x55c0e5(_0x12d5af['value'])['then'](_0x1f3634,_0x590bb5);}_0x239287((_0x3dcdc4=_0x3dcdc4['apply'](_0x534b48,_0x28a9db||[]))['next']());});};class AnchoredSuggester extends Suggester{constructor(apiKey,_0x317fd4,options){super(apiKey,_0x317fd4,options),this['getElements']=()=>__awaiter$7(this,void 0x0,void 0x0,function*(){const _0x17e13a=this['input']['textbox']['value'];if(this['options']['enable_history']&&!_0x17e13a){const _0xb2a6fc=Storage['list']();return _0xb2a6fc['map']((_0x436c14,_0x1f25ca)=>{return new AnchoredHistoryContainer(this['input'],_0x436c14,this['options'],_0x1f25ca)['element'];});}if(!this['hasMinimumCharacters'](_0x17e13a))return [];const _0x22b6fd=yield this['getSuggestions'](_0x17e13a);return _0x22b6fd['map']((_0x5ce