UNPKG

@getaddress/autocomplete

Version:

GetAddress.io - Autocomplete plug-in

458 lines (450 loc) 298 kB
var getAddress = (function (exports) { 'use strict'; var _a$2;class Storage{}_a$2=Storage,Storage['key']='getaddress_local_addresses',Storage['save']=(_0xd9b76c,_0x3f5d18)=>{let _0x448b68=localStorage['getItem'](_a$2['key']);if(!_0x448b68||_a$2['isObjectEmpty'](_0x448b68)){const _0x4ce081=new Map(),_0x1e147e=new StoredAddress(_0xd9b76c,_0x3f5d18,new Date()['getTime']());_0x4ce081['set'](_0xd9b76c['id'],_0x1e147e);const _0x4530e8=JSON['stringify']([..._0x4ce081]);localStorage['setItem'](_a$2['key'],_0x4530e8);}else {const _0x5e9bae=new Map(JSON['parse'](_0x448b68));if(!_0x5e9bae['get'](_0xd9b76c['id'])){if(_0x5e9bae['size']>=0x6){const _0xeaf427=[..._0x5e9bae['entries']()]['sort']((_0x3d3fd2,_0xc692a3)=>{const _0x2c48df=_0x3d3fd2[0x1],_0x112e1c=_0xc692a3[0x1];return _0x2c48df['timestamp']-_0x112e1c['timestamp'];});_0x5e9bae['delete'](_0xeaf427[0x0][0x0]);}const _0x52a305=new StoredAddress(_0xd9b76c,_0x3f5d18,new Date()['getTime']());_0x5e9bae['set'](_0xd9b76c['id'],_0x52a305);const _0x3af3f7=JSON['stringify']([..._0x5e9bae]);localStorage['setItem'](_a$2['key'],_0x3af3f7);}}},Storage['list']=()=>{let _0x5f4b2a=localStorage['getItem'](_a$2['key']);if(!_0x5f4b2a||_a$2['isObjectEmpty'](_0x5f4b2a))return [];const _0xe1f5a4=new Map(JSON['parse'](_0x5f4b2a)),_0x5c0346=[..._0xe1f5a4['entries']()]['map'](_0x1b8214=>{const _0x3232de=_0x1b8214[0x1];return _0x3232de;});return _0x5c0346['reverse']();},Storage['isObjectEmpty']=_0x4fea15=>{if(!_0x4fea15)return !![];return _0x4fea15==='{}'||_0x4fea15==='\x22{}\x22';},Storage['clear']=()=>{localStorage['removeItem'](_a$2['key']);},Storage['clearExpired']=()=>{let _0x1acd62=localStorage['getItem'](_a$2['key']);if(!_0x1acd62||_a$2['isObjectEmpty'](_0x1acd62))return;const _0x368fa3=new Map(JSON['parse'](_0x1acd62));let _0x186136=![];_0x368fa3['forEach']((_0x4c55d3,_0x30c4df)=>{const _0x1459e2=_0x4c55d3;let _0x2a14a7=new Date();var _0xebaf42=new Date(new Date()['setDate'](_0x2a14a7['getDate']()-0x7));_0xebaf42['getTime']()>_0x1459e2['timestamp']&&(_0x368fa3['delete'](_0x30c4df),_0x186136=!![]);});if(_0x186136){if(_0x368fa3['size']>0x0){const _0x1ef2c8=JSON['stringify']([..._0x368fa3]);localStorage['setItem'](_a$2['key'],_0x1ef2c8);}else localStorage['removeItem'](_a$2['key']);}},Storage['remove']=_0x2dcd1f=>{let _0x2908e7=localStorage['getItem'](_a$2['key']);if(!_0x2908e7||_a$2['isObjectEmpty'](_0x2908e7))return;const _0xc97a71=new Map(JSON['parse'](_0x2908e7));let _0x5cf6b1=![];_0xc97a71['forEach']((_0x2995b4,_0x17d70f)=>{_0x17d70f===_0x2dcd1f&&(_0xc97a71['delete'](_0x2dcd1f),_0x5cf6b1=!![]);});if(_0x5cf6b1){if(_0xc97a71['size']>0x0){const _0x20aa93=JSON['stringify']([..._0xc97a71]);localStorage['setItem'](_a$2['key'],_0x20aa93);}else localStorage['removeItem'](_a$2['key']);}};class StoredAddress{constructor(_0x5437ed,_0x4786e0,_0x189758){this['suggestion']=_0x5437ed,this['address']=_0x4786e0,this['timestamp']=_0x189758;}} class List{constructor(_0x318dfe,_0x13862d){this['options']=_0x318dfe,this['instance']=_0x13862d,this['list']=document['createElement']('DIV'),this['ul']=document['createElement']('DIV'),this['style']=document['createElement']('style'),this['iconStyle']=document['createElement']('style'),this['element']=this['list'],this['selectedIndex']=-0x1,this['handleKeyDown']=_0x5f58cc=>{switch(_0x5f58cc['key']){case'PageUp':this['handlePageUp'](_0x5f58cc);break;case'PageDown':this['handlePageDown'](_0x5f58cc);break;}},this['handlePageDown']=_0x2fc8fd=>{this['ul']['children']['length']>0x0&&(this['setSelectedIndex'](this['lastIndex']()),_0x2fc8fd['preventDefault']());},this['handlePageUp']=_0x5f02af=>{this['ul']['children']['length']>0x0&&(this['setSelectedIndex'](0x0),_0x5f02af['preventDefault']());},this['populate']=_0x298990=>{this['clear']();_0x298990['length']>0x0&&this['show']();_0x298990['forEach'](_0xa8c555=>{this['ul']['insertBefore'](_0xa8c555,null);});if(this['options']['footer_template']){var _0xae84be=document['createElement']('DIV');_0xae84be['innerHTML']=this['options']['footer_template'](_0x298990),this['list']['insertAdjacentElement']('beforeend',_0xae84be);}},this['show']=()=>{this['list']['style']['visibility']='visible';},this['removeFocusedClassName']=()=>{List['removeFocusedClassName'](this);},this['clear']=()=>{this['ul']['replaceChildren'](...[]),this['hide'](),this['resetSelectedIndex']();},this['hide']=()=>{this['list']['style']['visibility']='hidden';},this['listItemCss']=_0x59f3fa=>{if(_0x59f3fa!==0x0)return '';const _0x2e628a='\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{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background-color:var(--ga-autocomplete-list-item-background-hover-color,rgba(10,\x2010,\x2010,\x20.04));\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cursor:\x20var(--ga-autocomplete-list-item-hover-cursor,pointer);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20outline:var(--ga-autocomplete-list-item-hover-outline,0);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\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-focused-color,rgba(10,\x2010,\x2010,\x20.12));\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20outline:var(--ga-autocomplete-list-item-focused-outline,0);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}';return _0x2e628a;},this['iconCss']=_0xec1f72=>{if(_0xec1f72!==0x0)return '';const _0x1b96e3='\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 _0x1b96e3;},this['list']['id']='ga-autocomplete-list-'+_0x13862d,this['list']['setAttribute']('role','listbox'),this['list']['addEventListener']('keydown',this['handleKeyDown']),this['list']['className']='ga-autocomplete-list',this['ul']['classList']['add']('ga-autocomplete-scroll'),this['list']['appendChild'](this['ul']),Storage['clearExpired']();}['destroy'](){this['list']['removeEventListener']('keydown',this['handleKeyDown']),this['list']['remove'](),this['style']['remove']();}static['setFocus'](_0x3f5a02,_0x2e69b8,_0x3d0f01){if(_0x3f5a02>-0x1&&_0x2e69b8['ul']['children']['length']>0x0){List['removeFocusedClassName'](_0x2e69b8);let _0x50a644=_0x2e69b8['ul']['children'][_0x3f5a02];List['addFocusedClassName'](_0x50a644),_0x50a644['focus']({'focusVisible':!![]});return;}_0x3d0f01['setFocus']();}['resetSelectedIndex'](){this['removeFocusedClassName'](),this['selectedIndex']=-0x1;}static['setSelectedIndex'](_0x3c7f16,_0x333659,_0xbf03bc){if(_0x3c7f16==-0x1){_0xbf03bc['setFocus']();return;}if(_0x3c7f16>_0x333659['lastIndex']()){_0x333659['selectedIndex']=_0x333659['lastIndex']();return;}_0x333659['selectedIndex']=_0x3c7f16,_0x333659['setFocus']();}['lastIndex'](){let _0x30f74b=0x1;return this['options']['footer_template']&&(_0x30f74b=0x2),this['ul']['children']['length']-_0x30f74b;}['getSelectedIndex'](){return this['selectedIndex'];}['containsActiveElment'](){return this['ul']['contains'](document['activeElement']);}['dispatchSelected'](_0x126946,_0x4f2355,_0x27a00d){const _0x1e84c1=_0x4f2355,_0x4564ac=new Event('getaddress-autocomplete-selected',{'bubbles':!![]});_0x4564ac['address']=_0x27a00d,_0x4564ac['data']=_0x1e84c1,_0x4564ac['id']=_0x126946,this['element']['dispatchEvent'](_0x4564ac),this['options']['selected']&&this['options']['selected'](_0x27a00d);}['dispatchSelectedFailed'](_0x216164,_0x3498f2,_0x2af636){const _0x203cf7=new Event('getaddress-autocomplete-selected-failed',{'bubbles':!![]});_0x203cf7['status']=_0x3498f2,_0x203cf7['message']=_0x2af636,_0x203cf7['id']=_0x216164,this['element']['dispatchEvent'](_0x203cf7),this['options']['selected_failed']&&this['options']['selected_failed'](_0x216164,_0x3498f2,_0x2af636);}['dispatchSuggestions'](_0x1c8516,_0x3db604){const _0x1ea645=_0x1c8516,_0x162704=new Event('getaddress-autocomplete-suggestions',{'bubbles':!![]});_0x162704['suggestions']=_0x3db604,_0x162704['data']=_0x1ea645,this['element']['dispatchEvent'](_0x162704),this['options']['suggested']&&this['options']['suggested'](_0x3db604);}['dispatchSuggestionsFailed'](_0x87d4ca,_0x3282d7,_0x3d6187){const _0x20d079=new Event('getaddress-autocomplete-suggestions-failed',{'bubbles':!![]});_0x20d079['status']=_0x3282d7,_0x20d079['message']=_0x3d6187,_0x20d079['data']=_0x87d4ca,this['element']['dispatchEvent'](_0x20d079),this['options']['suggested_failed']&&this['options']['suggested_failed'](_0x87d4ca,_0x3282d7,_0x3d6187);}}List['addFocusedClassName']=_0x59b819=>{_0x59b819['classList']['add']('ga-autocomplete-list-item-focused');},List['removeFocusedClassName']=_0x5181f1=>{const _0x5c9c1b=_0x5181f1['ul']['children'];for(let _0x36be73=0x0;_0x36be73<_0x5c9c1b['length'];_0x36be73++){_0x5c9c1b[_0x36be73]['classList']['remove']('ga-autocomplete-list-item-focused');}}; class ItemContainer{constructor(_0x1455e4,_0x1d02da){this['input']=_0x1455e4,this['index']=_0x1d02da,this['container']=document['createElement']('DIV'),this['element']=this['container'],this['handleFocus']=_0x227c31=>{this['input']['list']['setSelectedIndex'](this['index']);},this['handleKeyDown']=_0x5b7126=>{switch(_0x5b7126['key']){case'ArrowUp':this['handleUpKey'](_0x5b7126);break;case'ArrowDown':this['handleDownKey'](_0x5b7126);break;case'Enter':this['handleEnterKey'](_0x5b7126);break;}},this['handleDownKey']=_0x33823d=>{this['input']['list']['setSelectedIndex'](this['index']+0x1),_0x33823d['preventDefault']();},this['handleUpKey']=_0x199796=>{this['input']['list']['setSelectedIndex'](this['index']-0x1),_0x199796['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']=(_0x1c9ebe,_0x3bf700,_0xa558bd)=>{_0x1c9ebe['dispatchSelected'](_0x3bf700['id'],_0xa558bd),_0x1c9ebe['clearList']();}; var __awaiter$b=undefined&&undefined['__awaiter']||function(_0x20c6be,_0x18f133,_0x4de57c,_0x333e99){function _0x4f6db7(_0xc07aac){return _0xc07aac instanceof _0x4de57c?_0xc07aac:new _0x4de57c(function(_0x1792d3){_0x1792d3(_0xc07aac);});}return new(_0x4de57c||(_0x4de57c=Promise))(function(_0x3f6e7e,_0x5616a1){function _0x1eae34(_0x4188b7){try{_0x36ec4f(_0x333e99['next'](_0x4188b7));}catch(_0x541862){_0x5616a1(_0x541862);}}function _0x4305cd(_0x425db8){try{_0x36ec4f(_0x333e99['throw'](_0x425db8));}catch(_0x5973a1){_0x5616a1(_0x5973a1);}}function _0x36ec4f(_0x55f261){_0x55f261['done']?_0x3f6e7e(_0x55f261['value']):_0x4f6db7(_0x55f261['value'])['then'](_0x1eae34,_0x4305cd);}_0x36ec4f((_0x333e99=_0x333e99['apply'](_0x20c6be,_0x18f133||[]))['next']());});};class AnchoredItemContainer extends ItemContainer{constructor(_0x9d0527,_0x2341d5,_0x3edba4,_0x1aa562,_0x33b164){super(_0x2341d5,_0x33b164),this['client']=_0x9d0527,this['suggestion']=_0x3edba4,this['options']=_0x1aa562,this['handleEnterKey']=_0x89d519=>__awaiter$b(this,void 0x0,void 0x0,function*(){_0x89d519['preventDefault'](),yield this['getAddress'](),this['input']['repopulate']=![],this['input']['setFocus']();}),this['destroy']=()=>{this['container']['removeEventListener']('click',this['handleClick']),super['destroy']();},this['handleClick']=_0x4d23fc=>__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 _0x5b65b1=yield this['client']['get'](this['suggestion']['id']);if(!_0x5b65b1['isSuccess']){const _0x5d9c8a=_0x5b65b1['toFailed']();this['input']['dispatchSelectedFailed'](this['suggestion']['id'],_0x5d9c8a['status'],_0x5d9c8a['message']);return;}let _0x4ed3b8=_0x5b65b1['toSuccess']();this['options']['enable_history']&&Storage['save'](this['suggestion'],_0x4ed3b8['address']),ItemContainer['getAddress'](this['input'],this['suggestion'],_0x4ed3b8['address']);}),this['container']['innerHTML']=_0x1aa562['item_template'](_0x3edba4),this['container']['classList']['add']('ga-autocomplete-anchored-list-item'),_0x1aa562['list_item_style']&&this['container']['setAttribute']('style',_0x1aa562['list_item_style']),this['container']['addEventListener']('click',this['handleClick']);}} var __awaiter$a=undefined&&undefined['__awaiter']||function(_0x2cf110,_0x482fbf,_0x42d8c3,_0x3e8ef0){function _0x5b7269(_0x24e96c){return _0x24e96c instanceof _0x42d8c3?_0x24e96c:new _0x42d8c3(function(_0x2608fa){_0x2608fa(_0x24e96c);});}return new(_0x42d8c3||(_0x42d8c3=Promise))(function(_0x59c7d2,_0x49ddd2){function _0x4a8a37(_0x28976c){try{_0x38a1d6(_0x3e8ef0['next'](_0x28976c));}catch(_0x46d278){_0x49ddd2(_0x46d278);}}function _0x5dae2f(_0x8fbf5e){try{_0x38a1d6(_0x3e8ef0['throw'](_0x8fbf5e));}catch(_0x3c3d89){_0x49ddd2(_0x3c3d89);}}function _0x38a1d6(_0x2be8ed){_0x2be8ed['done']?_0x59c7d2(_0x2be8ed['value']):_0x5b7269(_0x2be8ed['value'])['then'](_0x4a8a37,_0x5dae2f);}_0x38a1d6((_0x3e8ef0=_0x3e8ef0['apply'](_0x2cf110,_0x482fbf||[]))['next']());});};class AnchoredHistoryContainer extends ItemContainer{constructor(_0x10f0a4,_0x364f0e,_0x1200ff,_0x7bc996){var _0x4dac3e;super(_0x10f0a4,_0x7bc996),this['storedAddress']=_0x364f0e,this['options']=_0x1200ff,this['handleEnterKey']=_0xf9863a=>__awaiter$a(this,void 0x0,void 0x0,function*(){_0xf9863a['preventDefault'](),yield this['getAddress'](),this['input']['repopulate']=![],this['input']['setFocus']();}),this['destroy']=()=>{this['container']['removeEventListener']('click',this['handleClick']),super['destroy']();},this['handleClick']=_0x2e6cb2=>__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 _0x550d0e=(_0x4dac3e=_0x1200ff['history_item_template'])!==null&&_0x4dac3e!==void 0x0?_0x4dac3e:_0x1200ff['item_template'];this['container']['innerHTML']=_0x550d0e(_0x364f0e['suggestion']),this['container']['classList']['add']('ga-autocomplete-history-item'),this['container']['classList']['add']('ga-autocomplete-anchored-history-item'),_0x1200ff['history_item_style']&&this['container']['setAttribute']('style',_0x1200ff['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 = 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.getLocationResponse = undefined; this.getLocationAbortController.abort(); this.getLocationAbortController = new AbortController(); } this.getLocationResponse = yield fetch(url, { method: 'get', signal: this.getLocationAbortController.signal, headers: { 'Content-Type': 'application/json', }, }); if (this.getLocationResponse.status === 200) { const json = yield this.getLocationResponse.json(); const loaction = json; return new GetLocationSuccess(loaction); } const json = yield this.getLocationResponse.json(); return new GetLocationFailed(this.getLocationResponse.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.typeaheadAbortController.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(_0x409000,_0x49569a,_0x3cb744,_0x30534e){function _0x93f771(_0x19f67e){return _0x19f67e instanceof _0x3cb744?_0x19f67e:new _0x3cb744(function(_0x1841d1){_0x1841d1(_0x19f67e);});}return new(_0x3cb744||(_0x3cb744=Promise))(function(_0x30e0d1,_0x1a99d0){function _0x10f928(_0x5db91d){try{_0x53c6e6(_0x30534e['next'](_0x5db91d));}catch(_0xce6834){_0x1a99d0(_0xce6834);}}function _0xda8a37(_0x1eec3b){try{_0x53c6e6(_0x30534e['throw'](_0x1eec3b));}catch(_0x3e1e85){_0x1a99d0(_0x3e1e85);}}function _0x53c6e6(_0x178843){_0x178843['done']?_0x30e0d1(_0x178843['value']):_0x93f771(_0x178843['value'])['then'](_0x10f928,_0xda8a37);}_0x53c6e6((_0x30534e=_0x30534e['apply'](_0x409000,_0x49569a||[]))['next']());});};class Suggester{constructor(_0x43a6e0,_0x2fbb9d,_0xa4de5c){this['input']=_0x2fbb9d,this['options']=_0xa4de5c,this['suggestions']=_0xfef38d=>__awaiter$8(this,void 0x0,void 0x0,function*(){return new Promise((_0x14916e,_0x3080fc)=>__awaiter$8(this,void 0x0,void 0x0,function*(){try{let _0x2ced55=_0xfef38d?0x0:this['options']['delay'];clearTimeout(this['filterTimer']),this['filterTimer']=setTimeout(()=>__awaiter$8(this,void 0x0,void 0x0,function*(){const _0xa1b69c=yield this['getElements']();_0x14916e(_0xa1b69c);return;}),_0x2ced55);}catch(_0x51dc87){_0x3080fc(_0x51dc87);}}));}),this['hasMinimumCharacters']=_0x1cd9a0=>{var _0x72a420;!_0x1cd9a0&&(_0x1cd9a0='');var _0x2c1d0f=(_0x72a420=this['options']['minimum_characters'])!==null&&_0x72a420!==void 0x0?_0x72a420:0x2;return _0x1cd9a0['length']>=_0x2c1d0f;},this['getSuggestions']=_0x11d000=>{return new Promise((_0xfcf35d,_0x18e592)=>__awaiter$8(this,void 0x0,void 0x0,function*(){var _0x45cfe2,_0x235c1a,_0x56baa8;try{const _0x533451={'all':!![],'top':this['options']['suggestion_count'],'template':this['options']['suggestion_template']};this['options']['filter']&&(_0x533451['filter']=this['options']['filter']);this['options']['show_postcode']&&(_0x533451['show_postcode']=this['options']['show_postcode']);if(!_0x533451['locatio