UNPKG

@getaddress/autocomplete

Version:

GetAddress.io - Autocomplete plug-in

457 lines (449 loc) 270 kB
var _a$2;class Storage{}_a$2=Storage,Storage['key']='getaddress_local_addresses',Storage['save']=(_0x2887e2,_0x29e22d)=>{let _0x2020a0=localStorage['getItem'](_a$2['key']);if(!_0x2020a0||_a$2['isObjectEmpty'](_0x2020a0)){const _0x50bfef=new Map(),_0xe5148f=new StoredAddress(_0x2887e2,_0x29e22d,new Date()['getTime']());_0x50bfef['set'](_0x2887e2['id'],_0xe5148f);const _0x24f5b8=JSON['stringify']([..._0x50bfef]);localStorage['setItem'](_a$2['key'],_0x24f5b8);}else {const _0x9bafc7=new Map(JSON['parse'](_0x2020a0));if(!_0x9bafc7['get'](_0x2887e2['id'])){if(_0x9bafc7['size']>=0x6){const _0x9eb43d=[..._0x9bafc7['entries']()]['sort']((_0x2cd2c5,_0x2bb920)=>{const _0x51c92f=_0x2cd2c5[0x1],_0x25c9a9=_0x2bb920[0x1];return _0x51c92f['timestamp']-_0x25c9a9['timestamp'];});_0x9bafc7['delete'](_0x9eb43d[0x0][0x0]);}const _0x3adb1f=new StoredAddress(_0x2887e2,_0x29e22d,new Date()['getTime']());_0x9bafc7['set'](_0x2887e2['id'],_0x3adb1f);const _0x38981b=JSON['stringify']([..._0x9bafc7]);localStorage['setItem'](_a$2['key'],_0x38981b);}}},Storage['list']=()=>{let _0x87f222=localStorage['getItem'](_a$2['key']);if(!_0x87f222||_a$2['isObjectEmpty'](_0x87f222))return [];const _0x36841a=new Map(JSON['parse'](_0x87f222)),_0x2cd0d1=[..._0x36841a['entries']()]['map'](_0x3eae12=>{const _0xa2b2ea=_0x3eae12[0x1];return _0xa2b2ea;});return _0x2cd0d1['reverse']();},Storage['isObjectEmpty']=_0x3f0dc9=>{if(!_0x3f0dc9)return !![];return _0x3f0dc9==='{}'||_0x3f0dc9==='\x22{}\x22';},Storage['clear']=()=>{localStorage['removeItem'](_a$2['key']);},Storage['clearExpired']=()=>{let _0x1b86b0=localStorage['getItem'](_a$2['key']);if(!_0x1b86b0||_a$2['isObjectEmpty'](_0x1b86b0))return;const _0x50ca9a=new Map(JSON['parse'](_0x1b86b0));let _0x86237b=![];_0x50ca9a['forEach']((_0x45e69f,_0x5069f3)=>{const _0x223ccf=_0x45e69f;let _0x273ed4=new Date();var _0x28c316=new Date(new Date()['setDate'](_0x273ed4['getDate']()-0x7));_0x28c316['getTime']()>_0x223ccf['timestamp']&&(_0x50ca9a['delete'](_0x5069f3),_0x86237b=!![]);});if(_0x86237b){if(_0x50ca9a['size']>0x0){const _0x30ea6d=JSON['stringify']([..._0x50ca9a]);localStorage['setItem'](_a$2['key'],_0x30ea6d);}else localStorage['removeItem'](_a$2['key']);}},Storage['remove']=_0x257b7b=>{let _0x1be590=localStorage['getItem'](_a$2['key']);if(!_0x1be590||_a$2['isObjectEmpty'](_0x1be590))return;const _0x34d258=new Map(JSON['parse'](_0x1be590));let _0x506ee9=![];_0x34d258['forEach']((_0x2bd8ac,_0x2a029c)=>{_0x2a029c===_0x257b7b&&(_0x34d258['delete'](_0x257b7b),_0x506ee9=!![]);});if(_0x506ee9){if(_0x34d258['size']>0x0){const _0x126fa1=JSON['stringify']([..._0x34d258]);localStorage['setItem'](_a$2['key'],_0x126fa1);}else localStorage['removeItem'](_a$2['key']);}};class StoredAddress{constructor(_0x561eba,_0x1f8edd,_0x237bf7){this['suggestion']=_0x561eba,this['address']=_0x1f8edd,this['timestamp']=_0x237bf7;}} class List{constructor(_0x4424a9,_0x40ddd0){this['options']=_0x4424a9,this['instance']=_0x40ddd0,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']=_0x428de8=>{switch(_0x428de8['key']){case'PageUp':this['handlePageUp'](_0x428de8);break;case'PageDown':this['handlePageDown'](_0x428de8);break;}},this['handlePageDown']=_0x5c65ff=>{this['ul']['children']['length']>0x0&&(this['setSelectedIndex'](this['lastIndex']()),_0x5c65ff['preventDefault']());},this['handlePageUp']=_0x2b34f7=>{this['ul']['children']['length']>0x0&&(this['setSelectedIndex'](0x0),_0x2b34f7['preventDefault']());},this['populate']=_0xd8506d=>{this['clear']();_0xd8506d['length']>0x0&&this['show']();_0xd8506d['forEach'](_0x1d0201=>{this['ul']['insertBefore'](_0x1d0201,null);});if(this['options']['footer_template']){var _0x2d784e=document['createElement']('DIV');_0x2d784e['innerHTML']=this['options']['footer_template'](_0xd8506d),this['list']['insertAdjacentElement']('beforeend',_0x2d784e);}},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']=_0x381d2e=>{if(_0x381d2e!==0x0)return '';const _0x43a78b='\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 _0x43a78b;},this['iconCss']=_0x5b022e=>{if(_0x5b022e!==0x0)return '';const _0x197273='\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,AAEAAAAPAIAAAwBwR1NVQiCLJXoAAAD8AAAAVE9TLzI+I1IfAAABUAAAAGBjbWFw4af0qQAAAbAAAAGwY3Z0IAAAAAAAAApIAAAADmZwZ21iLvl6AAAKWAAADgxnYXNwAAAAEAAACkAAAAAIZ2x5ZjlmWUQAAANgAAADGGhlYWQrAaynAAAGeAAAADZoaGVhB90D+gAABrAAAAAkaG10eBUUAAAAAAbUAAAAGGxvY2EClgG4AAAG7AAAAA5tYXhwARgOcQAABvwAAAAgbmFtZc2dHB0AAAccAAACzXBvc3QSDgC1AAAJ7AAAAFNwcmVwfrY7tgAAGGQAAACcAAEAAAAKADAAPgACREZMVAAObGF0bgAaAAQAAAAAAAAAAQAAAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAQDgwGQAAUAAAJ6ArwAAACMAnoCvAAAAeAAMQECAAACAAUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBmRWQAwOgA8DEDUv9qAFoDrACWAAAAAQAAAAAAAAAAAAAAAAACAAAABQAAAAMAAAAsAAAABAAAAWQAAQAAAAAAXgADAAEAAAAsAAMACgAAAWQABAAyAAAABgAEAAEAAugD8DH//wAA6ADwMf//AAAAAAABAAYADAAAAAEAAgADAAQABQAAAQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAATAAAAAAAAAAFAADoAAAA6AAAAAABAADoAQAA6AEAAAACAADoAgAA6AIAAAADAADoAwAA6AMAAAAEAADwMQAA8DEAAAAFAAEAAAAAAq4CsgAcAB5AGxgRCgMEAgABTAEBAAIAhQMBAgJ2FBgUFwQGGis1ND8BJyY0NjIfATc2MhYUDwEXFhQGIi8BBwYiJhrDwxo0RhrEwxlIMhnDwxkySBnDxBlIM1okGsPEGUgyGcTEGTJIGcTDGkgyGcPDGTMAAAABAAD/xwOpAvoAFAAkQCEAAAEAhQADAgOGAAECAgFXAAEBAl8AAgECTxQjJBIEBhorEQE2MhYUDwEhMhYUBiMhFxYUDgEnAYYTMiQS8wKCGSQkGf1+8xIkMhMBYQGHEiQ0EfMkMiTzEjQiAhMAAAAAAwAA/5IDmAMqAAgAEQAXAElARhYVFBMEAgQBTAcBBAMCAwQCgAUBAAADBAADaQYBAgEBAlkGAQICAWEAAQIBURISCgkBABIXEhcODQkRChEFBAAIAQgIBhYrATIAEAAgABAAEzI2ECYgBhAWExUXBycRAcy+AQ7+8v6E/vIBDr6W0tL+1tTUuJYyqgMq/vL+hP7yAQ4BfAEO/MzUASrS0v7W1AJs9JYyqgESAAQAAP/QBIkC7AAHAA8AEwAXAJNLsAtQWEA1AAMAA4UABggJCAZyAgEAAAEEAAFnAAQKAQgGBAhnDQsMAwkFBQlXDQsMAwkJBV8HAQUJBU8bQDYAAwADhQAGCAkIBgmAAgEAAAEEAAFnAAQKAQgGBAhnDQsMAwkFBQlXDQsMAwkJBV8HAQUJBU9ZQBoUFBAQFBcUFxYVEBMQExIREREREREREA4GHysBIRUhNSE1IQEhESERIxEjJTUjFSE1IxUDdQEU+3cCJAFR/PcDr/3Iqs0Cn5IBUZICP1parf7N/hcBLf7T9LGxsbEAAAAAAgAA/5QCswMyABcAIAAmQCMAAgMBAwIBgAABAYQAAAMDAFkAAAADYQADAANRExgaFgQGGisRNDc2Nz4BMh4BFxYUBwYHAwYiJwMmJyY3FBYyNjQmIgYbGTEvfo99YBobGxIS5RY+GOQWDhvZS2tLS2tLAdlGQD0yLzU1YD5AjEAoGf6lIyMBWx8iQEY1TEtrTEwAAAEAAAABAACwqP5WXw889QAPA+gAAAAA46q0fwAAAADjqrR/AAD/kgSJAzIAAAAIAAIAAAAAAAAAAQAAA1L/agAABIkAAAAABIkAAQAAAAAAAAAAAAAAAAAAAAYD6AAAAq4AAAOqAAADmAAABIkAAAKzAAAAAAAAAD4AdgDMAUIBjAAAAAEAAAAGACEABAAAAAAAAgAcAEIAjQAAAGQODAAAAAAAAAASAN4AAQAAAAAAAAA1AAAAAQAAAAAAAQAIADUAAQAAAAAAAgAHAD0AAQAAAAAAAwAIAEQAAQAAAAAABAAIAEwAAQAAAAAABQALAFQAAQAAAAAABgAIAF8AAQAAAAAACgArAGcAAQAAAAAACwATAJIAAwABBAkAAABqAKUAAwABBAkAAQAQAQ8AAwABBAkAAgAOAR8AAwABBAkAAwAQAS0AAwABBAkABAAQAT0AAwABBAkABQAWAU0AAwABBAkABgAQAWMAAwABBAkACgBWAXMAAwABBAkACwAmAclDb3B5cmlnaHQgKEMpIDIwMjUgYnkgb3JpZ2luYWwgYXV0aG9ycyBAIGZvbnRlbGxvLmNvbWZvbnRlbGxvUmVndWxhcmZvbnRlbGxvZm9udGVsbG9WZXJzaW9uIDEuMGZvbnRlbGxvR2VuZXJhdGVkIGJ5IHN2ZzJ0dGYgZnJvbSBGb250ZWxsbyBwcm9qZWN0Lmh0dHA6Ly9mb250ZWxsby5jb20AQwBvAHAAeQByAGkAZwBoAHQAIAAoAEMAKQAgADIAMAAyADUAIABiAHkAIABvAHIAaQBnAGkAbgBhAGwAIABhAHUAdABoAG8AcgBzACAAQAAgAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAGYAbwBuAHQAZQBsAGwAbwBSAGUAZwB1AGwAYQByAGYAbwBuAHQAZQBsAGwAbwBmAG8AbgB0AGUAbABsAG8AVgBlAHIAcwBpAG8AbgAgADEALgAwAGYAbwBuAHQAZQBsAGwAbwBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAAAAgAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAQIBAwEEAQUBBgEHAAZjYW5jZWwGbGVmdC0xBWNsb2NrBGhvbWUIbG9jYXRpb24AAAAAAQAB//8ADwAAAAAAAAAAAAAAAAAAAACwACwgsABVWEVZICBLuAAOUUuwBlNaWLA0G7AoWWBmIIpVWLACJWG5CAAIAGNjI2IbISGwAFmwAEMjRLIAAQBDYEItsAEssCBgZi2wAiwjISMhLbADLCBkswMUFQBCQ7ATQyBgYEKxAhRDQrElA0OwAkNUeCCwDCOwAkNDYWSwBFB4sgICAkNgQrAhZRwhsAJDQ7IOFQFCHCCwAkMjQrITARNDYEIjsABQWGVZshYBAkNgQi2wBCywAyuwFUNYIyEjIbAWQ0MjsABQWGVZGyBkILDAULAEJlqyKAENQ0VjRbAGRVghsAMlWVJbWCEjIRuKWCCwUFBYIbBAWRsgsDhQWCGwOFlZILEBDUNFY0VhZLAoUFghsQENQ0VjRSCwMFBYIbAwWRsgsMBQWCBmIIqKYSCwClBYYBsgsCBQWCGwCmAbILA2UFghsDZgG2BZWVkbsAIlsAxDY7AAUliwAEuwClBYIbAMQxtLsB5QWCGwHkthuBAAY7AMQ2O4BQBiWVlkYVmwAStZWSOwAFBYZVlZIGSwFkMjQlktsAUsIEUgsAQlYWQgsAdDUFiwByNCsAgjQhshIVmwAWAtsAYsIyEjIbADKyBksQdiQiCwCCNCsAZFWBuxAQ1DRWOxAQ1DsABgRWOwBSohILAIQyCKIIqwASuxMAUlsAQmUVhgUBthUllYI1khWSCwQFNYsAErGyGwQFkjsABQWGVZLbAHLLAJQyuyAAIAQ2BCLbAILLAJI0IjILAAI0JhsAJiZrABY7ABYLAHKi2wCSwgIEUgsA5DY7gEAGIgsABQWLBAYFlmsAFjYESwAWAtsAossgkOAENFQiohsgABAENgQi2wCyywAEMjRLIAAQBDYEItsAwsICBFILABKyOwAEOwBCVgIEWKI2EgZCCwIFBYIbAAG7AwUFiwIBuwQFlZI7AAUFhlWbADJSNhRESwAWAtsA0sICBFILABKyOwAEOwBCVgIEWKI2EgZLAkUFiwABuwQFkjsABQWGVZsAMlI2FERLABYC2wDiwgsAAjQrMNDAADRVBYIRsjIVkqIS2wDyyxAgJFsGRhRC2wECywAWAgILAPQ0qwAFBYILAPI0JZsBBDSrAAUlggsBAjQlktsBEsILAQYmawAWMguAQAY4ojYbARQ2AgimAgsBEjQiMtsBIsS1RYsQRkRFkksA1lI3gtsBMsS1FYS1NYsQRkRFkbIVkksBNlI3gtsBQssQASQ1VYsRISQ7ABYUKwEStZsABDsAIlQrEPAiVCsRACJUKwARYjILADJVBYsQEAQ2CwBCVCioogiiNhsBAqISOwAWEgiiNhsBAqIRuxAQBDYLACJUKwAiVhsBAqIVmwD0NHsBBDR2CwAmIgsABQWLBAYFlmsAFjILAOQ2O4BABiILAAUFiwQGBZZrABY2CxAAATI0SwAUOwAD6yAQEBQ2BCLbAVLACxAAJFVFiwEiNCIEWwDiNCsA0jsABgQiBgtxgYAQARABMAQkJCimAgsBQjQrABYbEUCCuwiysbIlktsBYssQAVKy2wFyyxARUrLbAYLLECFSstsBkssQMVKy2wGiyxBBUrLbAbLLEFFSstsBwssQYVKy2wHSyxBxUrLbAeLLEIFSstsB8ssQkVKy2wKywjILAQYmawAWOwBmBLVFgjIC6wAV0bISFZLbAsLCMgsBBiZrABY7AWYEtUWCMgLrABcRshIVktsC0sIyCwEGJmsAFjsCZgS1RYIyAusAFyGyEhWS2wICwAsA8rsQACRVRYsBIjQiBFsA4jQrANI7AAYEIgYLABYbUYGAEAEQBCQopgsRQIK7CLKxsiWS2wISyxACArLbAiLLEBICstsCMssQIgKy2wJCyxAyArLbAlLLEEICstsCYssQUgKy2wJyyxBiArLbAoLLEHICstsCkssQggKy2wKiyxCSArLbAuLCA8sAFgLbAvLCBgsBhgIEMjsAFgQ7ACJWGwAWCwLiohLbAwLLAvK7AvKi2wMSwgIEcgILAOQ2O4BABiILAAUFiwQGBZZrABY2AjYTgjIIpVWCBHICCwDkNjuAQAYiCwAFBYsEBgWWawAWNgI2E4GyFZLbAyLACxAAJFVFixDgZFQrABFrAxKrEFARVFWDBZGyJZLbAzLACwDyuxAAJFVFixDgZFQrABFrAxKrEFARVFWDBZGyJZLbA0LCA1sAFgLbA1LACxDgZFQrABRWO4BABiILAAUFiwQGBZZrABY7ABK7AOQ2O4BABiILAAUFiwQGBZZrABY7ABK7AAFrQAAAAAAEQ+IzixNAEVKiEtsDYsIDwgRyCwDkNjuAQAYiCwAFBYsEBgWWawAWNgsABDYTgtsDcsLhc8LbA4LCA8IEcgsA5DY7gEAGIgsABQWLBAYFlmsAFjYLAAQ2GwAUNjOC2wOSyxAgAWJSAuIEewACNCsAIlSYqKRyNHI2EgWGIbIVmwASNCsjgBARUUKi2wOiywABawFyNCsAQlsAQlRyNHI2GxDABCsAtDK2WKLiMgIDyKOC2wOyywABawFyNCsAQlsAQlIC5HI0cjYSCwBiNCsQwAQrALQysgsGBQWCCwQFFYswQgBSAbswQmBRpZQkIjILAKQyCKI0cjRyNhI0ZgsAZDsAJiILAAUFiwQGBZZrABY2AgsAErIIqKYSCwBENgZCOwBUNhZFBYsARDYRuwBUNgWbADJbACYiCwAFBYsEBgWWawAWNhIyAgsAQmI0ZhOBsjsApDRrACJbAKQ0cjRyNhYCCwBkOwAmIgsABQWLBAYFlmsAFjYCMgsAErI7AGQ2CwASuwBSVhsAUlsAJiILAAUFiwQGBZZrABY7AEJmEgsAQlYGQjsAMlYGRQWCEbIyFZIyAgsAQmI0ZhOFktsDwssAAWsBcjQiAgILAFJiAuRyNHI2EjPDgtsD0ssAAWsBcjQiCwCiNCICAgRiNHsAErI2E4LbA+LLAAFrAXI0KwAyWwAiVHI0cjYbAAVFguIDwjIRuwAiWwAiVHI0cjYSCwBSWwBCVHI0cjYbAGJbAFJUmwAiVhuQgACABjYyMgWGIbIVljuAQAYiCwAFBYsEBgWWawAWNgIy4jICA8ijgjIVktsD8ssAAWsBcjQiCwCkMgLkcjRyNhIGCwIGBmsAJiILAAUFiwQGBZZrABYyMgIDyKOC2wQCwjIC5GsAIlRrAXQ1hQG1JZWCA8WS6xMAEUKy2wQSwjIC5GsAIlRrAXQ1hSG1BZWCA8WS6xMAEUKy2wQiwjIC5GsAIlRrAXQ1hQG1JZWCA8WSMgLkawAiVGsBdDWFIbUFlYIDxZLrEwARQrLbBDLLA6KyMgLkawAiVGsBdDWFAbUllYIDxZLrEwARQrLbBELLA7K4ogIDywBiNCijgjIC5GsAIlRrAXQ1hQG1JZWCA8WS6xMAEUK7AGQy6wMCstsEUssAAWsAQlsAQmICAgRiNHYbAMI0IuRyNHI2GwC0MrIyA8IC4jOLEwARQrLbBGLLEKBCVCsAAWsAQlsAQlIC5HI0cjYSCwBiNCsQwAQrALQysgsGBQWCCwQFFYswQgBSAbswQmBRpZQkIjIEewBkOwAmIgsABQWLBAYFlmsAFjYCCwASsgiophILAEQ2BkI7AFQ2FkUFiwBENhG7AFQ2BZsAMlsAJiILAAUFiwQGBZZrABY2GwAiVGYTgjIDwjOBshICBGI0ewASsjYTghWbEwARQrLbBHLLEAOisusTABFCstsEgssQA7KyEjICA8sAYjQiM4sTABFCuwBkMusDArLbBJLLAAFSBHsAAjQrIAAQEVFBMusDYqLbBKLLAAFSBHsAAjQrIAAQEVFBMusDYqLbBLLLEAARQTsDcqLbBMLLA5Ki2wTSywABZFIyAuIEaKI2E4sTABFCstsE4ssAojQrBNKy2wTyyyAABGKy2wUCyyAAFGKy2wUSyyAQBGKy2wUiyyAQFGKy2wUyyyAABHKy2wVCyyAAFHKy2wVSyyAQBHKy2wViyyAQFHKy2wVyyzAAAAQystsFgsswABAEMrLbBZLLMBAABDKy2wWiyzAQEAQystsFssswAAAUMrLbBcLLMAAQFDKy2wXSyzAQABQystsF4sswEBAUMrLbBfLLIAAEUrLbBgLLIAAUUrLbBhLLIBAEUrLbBiLLIBAUUrLbBjLLIAAEgrLbBkLLIAAUgrLbBlLLIBAEgrLbBmLLIBAUgrLbBnLLMAAABEKy2waCyzAAEARCstsGksswEAAEQrLbBqLLMBAQBEKy2wayyzAAABRCstsGwsswABAUQrLbBtLLMBAAFEKy2wbiyzAQEBRCstsG8ssQA8Ky6xMAEUKy2wcCyxADwrsEArLbBxLLEAPCuwQSstsHIssAAWsQA8K7BCKy2wcyyxATwrsEArLbB0LLEBPCuwQSstsHUssAAWsQE8K7BCKy2wdiyxAD0rLrEwARQrLbB3LLEAPSuwQCstsHgssQA9K7BBKy2weSyxAD0rsEIrLbB6LLEBPSuwQCstsHsssQE9K7BBKy2wfCyxAT0rsEIrLbB9LLEAPisusTABFCstsH4ssQA+K7BAKy2wfyyxAD4rsEErLbCALLEAPiuwQistsIEssQE+K7BAKy2wgiyxAT4rsEErLbCDLLEBPiuwQistsIQssQA/Ky6xMAEUKy2whSyxAD8rsEArLbCGLLEAPyuwQSstsIcssQA/K7BCKy2wiCyxAT8rsEArLbCJLLEBPyuwQSstsIossQE/K7BCKy2wiyyyCwADRVBYsAYbsgQCA0VYIyEbIVlZQiuwCGWwAyRQeLEFARVFWDBZLQBLuADIUlixAQGOWbABuQgACABjcLEAB0KxAAAqsQAHQrEACiqxAAdCsQAKKrEAB0K5AAAACyqxAAdCuQAAAAsquQADAABEsSQBiFFYsECIWLkAAwBkRLEoAYhRWLgIAIhYuQADAABEWRuxJwGIUVi6CIAAAQRAiGNUWLkAAwAARFlZWVlZsQAOKrgB/4WwBI2xAgBEswVkBgBERA==\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 _0x197273;},this['list']['id']='ga-autocomplete-list-'+_0x40ddd0,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'](_0x5b879c,_0x4da327,_0x7792e5){if(_0x5b879c>-0x1&&_0x4da327['ul']['children']['length']>0x0){List['removeFocusedClassName'](_0x4da327);let _0x1e5579=_0x4da327['ul']['children'][_0x5b879c];List['addFocusedClassName'](_0x1e5579),_0x1e5579['focus']({'focusVisible':!![]});return;}_0x7792e5['setFocus']();}['resetSelectedIndex'](){this['removeFocusedClassName'](),this['selectedIndex']=-0x1;}static['setSelectedIndex'](_0x29b886,_0x46e9e3,_0x1e1f17){if(_0x29b886==-0x1){_0x1e1f17['setFocus']();return;}if(_0x29b886>_0x46e9e3['lastIndex']()){_0x46e9e3['selectedIndex']=_0x46e9e3['lastIndex']();return;}_0x46e9e3['selectedIndex']=_0x29b886,_0x46e9e3['setFocus']();}['lastIndex'](){let _0x517d99=0x1;return this['options']['footer_template']&&(_0x517d99=0x2),this['ul']['children']['length']-_0x517d99;}['getSelectedIndex'](){return this['selectedIndex'];}['containsActiveElment'](){return this['ul']['contains'](document['activeElement']);}['dispatchSelected'](_0x71ee35,_0x511d04,_0x464882){const _0x2c8d9=_0x511d04,_0x12d121=new Event('getaddress-autocomplete-selected',{'bubbles':!![]});_0x12d121['address']=_0x464882,_0x12d121['data']=_0x2c8d9,_0x12d121['id']=_0x71ee35,this['element']['dispatchEvent'](_0x12d121),this['options']['selected']&&this['options']['selected'](_0x464882);}['dispatchSelectedFailed'](_0x19af80,_0x28039c,_0x178974){const _0x503b29=new Event('getaddress-autocomplete-selected-failed',{'bubbles':!![]});_0x503b29['status']=_0x28039c,_0x503b29['message']=_0x178974,_0x503b29['id']=_0x19af80,this['element']['dispatchEvent'](_0x503b29),this['options']['selected_failed']&&this['options']['selected_failed'](_0x19af80,_0x28039c,_0x178974);}['dispatchSuggestions'](_0x5128d7,_0x5ec156){const _0x245733=_0x5128d7,_0x4d5eef=new Event('getaddress-autocomplete-suggestions',{'bubbles':!![]});_0x4d5eef['suggestions']=_0x5ec156,_0x4d5eef['data']=_0x245733,this['element']['dispatchEvent'](_0x4d5eef),this['options']['suggested']&&this['options']['suggested'](_0x5ec156);}['dispatchSuggestionsFailed'](_0x2776f7,_0x3445a1,_0x31fa8d){const _0x35a148=new Event('getaddress-autocomplete-suggestions-failed',{'bubbles':!![]});_0x35a148['status']=_0x3445a1,_0x35a148['message']=_0x31fa8d,_0x35a148['data']=_0x2776f7,this['element']['dispatchEvent'](_0x35a148),this['options']['suggested_failed']&&this['options']['suggested_failed'](_0x2776f7,_0x3445a1,_0x31fa8d);}}List['addFocusedClassName']=_0x5860d0=>{_0x5860d0['classList']['add']('ga-autocomplete-list-item-focused');},List['removeFocusedClassName']=_0x38d6c7=>{const _0x50a203=_0x38d6c7['ul']['children'];for(let _0xfbf4a0=0x0;_0xfbf4a0<_0x50a203['length'];_0xfbf4a0++){_0x50a203[_0xfbf4a0]['classList']['remove']('ga-autocomplete-list-item-focused');}}; class ItemContainer{constructor(_0x67def6,_0x5dbf65){this['input']=_0x67def6,this['index']=_0x5dbf65,this['container']=document['createElement']('DIV'),this['element']=this['container'],this['handleFocus']=_0x23481e=>{this['input']['list']['setSelectedIndex'](this['index']);},this['handleKeyDown']=_0x3836e7=>{switch(_0x3836e7['key']){case'ArrowUp':this['handleUpKey'](_0x3836e7);break;case'ArrowDown':this['handleDownKey'](_0x3836e7);break;case'Enter':this['handleEnterKey'](_0x3836e7);break;}},this['handleDownKey']=_0x3e90fe=>{this['input']['list']['setSelectedIndex'](this['index']+0x1),_0x3e90fe['preventDefault']();},this['handleUpKey']=_0x1dd2e1=>{this['input']['list']['setSelectedIndex'](this['index']-0x1),_0x1dd2e1['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']=(_0x3578a7,_0x30ae3e,_0x2c6f64)=>{_0x3578a7['dispatchSelected'](_0x30ae3e['id'],_0x2c6f64),_0x3578a7['clearList']();}; var __awaiter$b=undefined&&undefined['__awaiter']||function(_0x14210f,_0x58d9e9,_0x1af651,_0x5aafed){function _0x5e4539(_0x2a8afa){return _0x2a8afa instanceof _0x1af651?_0x2a8afa:new _0x1af651(function(_0x182aa7){_0x182aa7(_0x2a8afa);});}return new(_0x1af651||(_0x1af651=Promise))(function(_0x3e0eac,_0x200b46){function _0x263761(_0x2b025f){try{_0x3bc0c1(_0x5aafed['next'](_0x2b025f));}catch(_0x49ecaf){_0x200b46(_0x49ecaf);}}function _0x46e1d3(_0x3f8c57){try{_0x3bc0c1(_0x5aafed['throw'](_0x3f8c57));}catch(_0x153e7f){_0x200b46(_0x153e7f);}}function _0x3bc0c1(_0x3ba71d){_0x3ba71d['done']?_0x3e0eac(_0x3ba71d['value']):_0x5e4539(_0x3ba71d['value'])['then'](_0x263761,_0x46e1d3);}_0x3bc0c1((_0x5aafed=_0x5aafed['apply'](_0x14210f,_0x58d9e9||[]))['next']());});};class AnchoredItemContainer extends ItemContainer{constructor(_0x4a86ed,_0x223206,_0x57e727,_0x4a913d,_0x4a8543){super(_0x223206,_0x4a8543),this['client']=_0x4a86ed,this['suggestion']=_0x57e727,this['options']=_0x4a913d,this['handleEnterKey']=_0x1a89fd=>__awaiter$b(this,void 0x0,void 0x0,function*(){_0x1a89fd['preventDefault'](),yield this['getAddress'](),this['input']['repopulate']=![],this['input']['setFocus']();}),this['destroy']=()=>{this['container']['removeEventListener']('click',this['handleClick']),super['destroy']();},this['handleClick']=_0x418299=>__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 _0x6125c=yield this['client']['get'](this['suggestion']['id']);if(!_0x6125c['isSuccess']){const _0x5c1b4f=_0x6125c['toFailed']();this['input']['dispatchSelectedFailed'](this['suggestion']['id'],_0x5c1b4f['status'],_0x5c1b4f['message']);return;}let _0x5f2245=_0x6125c['toSuccess']();this['options']['enable_history']&&Storage['save'](this['suggestion'],_0x5f2245['address']),ItemContainer['getAddress'](this['input'],this['suggestion'],_0x5f2245['address']);}),this['container']['innerHTML']=_0x4a913d['item_template'](_0x57e727),this['container']['classList']['add']('ga-autocomplete-anchored-list-item'),_0x4a913d['list_item_style']&&this['container']['setAttribute']('style',_0x4a913d['list_item_style']),this['container']['addEventListener']('click',this['handleClick']);}} var __awaiter$a=undefined&&undefined['__awaiter']||function(_0x59d62c,_0x1187f5,_0xbaaf58,_0x213da6){function _0x4b1601(_0x410e8f){return _0x410e8f instanceof _0xbaaf58?_0x410e8f:new _0xbaaf58(function(_0x14b9ec){_0x14b9ec(_0x410e8f);});}return new(_0xbaaf58||(_0xbaaf58=Promise))(function(_0x2c7faa,_0x35d412){function _0x2eb68c(_0x240a9d){try{_0x1bc020(_0x213da6['next'](_0x240a9d));}catch(_0x17ba9f){_0x35d412(_0x17ba9f);}}function _0x414269(_0x57939d){try{_0x1bc020(_0x213da6['throw'](_0x57939d));}catch(_0x2dac99){_0x35d412(_0x2dac99);}}function _0x1bc020(_0x2327c6){_0x2327c6['done']?_0x2c7faa(_0x2327c6['value']):_0x4b1601(_0x2327c6['value'])['then'](_0x2eb68c,_0x414269);}_0x1bc020((_0x213da6=_0x213da6['apply'](_0x59d62c,_0x1187f5||[]))['next']());});};class AnchoredHistoryContainer extends ItemContainer{constructor(_0x38ea21,_0x52222a,_0x41dc80,_0x382896){var _0x19b7d4;super(_0x38ea21,_0x382896),this['storedAddress']=_0x52222a,this['options']=_0x41dc80,this['handleEnterKey']=_0x5e9ad6=>__awaiter$a(this,void 0x0,void 0x0,function*(){_0x5e9ad6['preventDefault'](),yield this['getAddress'](),this['input']['repopulate']=![],this['input']['setFocus']();}),this['destroy']=()=>{this['container']['removeEventListener']('click',this['handleClick']),super['destroy']();},this['handleClick']=_0x3b0e43=>__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 _0x2ef38b=(_0x19b7d4=_0x41dc80['history_item_template'])!==null&&_0x19b7d4!==void 0x0?_0x19b7d4:_0x41dc80['item_template'];this['container']['innerHTML']=_0x2ef38b(_0x52222a['suggestion']),this['container']['classList']['add']('ga-autocomplete-history-item'),this['container']['classList']['add']('ga-autocomplete-anchored-history-item'),_0x41dc80['history_item_style']&&this['container']['setAttribute']('style',_0x41dc80['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(_0x286c7d,_0xe070db,_0xc0bdba,_0x59c428){function _0x5c3747(_0x327724){return _0x327724 instanceof _0xc0bdba?_0x327724:new _0xc0bdba(function(_0x38af64){_0x38af64(_0x327724);});}return new(_0xc0bdba||(_0xc0bdba=Promise))(function(_0x2ac1a8,_0x39a4dc){function _0x7afac5(_0x100ee7){try{_0x3dd220(_0x59c428['next'](_0x100ee7));}catch(_0x4b8e7e){_0x39a4dc(_0x4b8e7e);}}function _0x1f6f5f(_0x214cf9){try{_0x3dd220(_0x59c428['throw'](_0x214cf9));}catch(_0x576d9f){_0x39a4dc(_0x576d9f);}}function _0x3dd220(_0x25d7bd){_0x25d7bd['done']?_0x2ac1a8(_0x25d7bd['value']):_0x5c3747(_0x25d7bd['value'])['then'](_0x7afac5,_0x1f6f5f);}_0x3dd220((_0x59c428=_0x59c428['apply'](_0x286c7d,_0xe070db||[]))['next']());});};class Suggester{constructor(_0x49e68a,_0x571a49,_0x57bc83){this['input']=_0x571a49,this['options']=_0x57bc83,this['suggestions']=_0x288f62=>__awaiter$8(this,void 0x0,void 0x0,function*(){return new Promise((_0x29a558,_0xb2b0be)=>__awaiter$8(this,void 0x0,void 0x0,function*(){try{let _0xe2ac25=_0x288f62?0x0:this['options']['delay'];clearTimeout(this['filterTimer']),this['filterTimer']=setTimeout(()=>__awaiter$8(this,void 0x0,void 0x0,function*(){const _0xc823fd=yield this['getElements']();_0x29a558(_0xc823fd);return;}),_0xe2ac25);}catch(_0x4f6360){_0xb2b0be(_0x4f6360);}}));}),this['hasMinimumCharacters']=_0x20cd35=>{var _0x1c25ba;!_0x20cd35&&(_0x20cd35='');var _0x2616c7=(_0x1c25ba=this['options']['minimum_characters'])!==null&&_0x1c25ba!==void 0x0?_0x1c25ba:0x2;return _0x20cd35['length']>=_0x2616c7;},this['getSuggestions']=_0x47bad6=>{return new Promise((_0x2e11e8,_0x26b767)=>__awaiter$8(this,void 0x0,void 0x0,function*(){var _0x91e306,_0x523cc0,_0x322932;try{const _0x1c697c={'all':!![],'top':this['options']['suggestion_count'],'template':this['options']['suggestion_template']};this['options']['filter']&&(_0x1c697c['filter']=this['options']['filter']);this['options']['show_postcode']&&(_0x1c697c['show_postcode']=this['options']['show_postcode']);if(!_0x1c697c['location']){const _0x26d3b5=Storage['list']();if(_0x26d3b5['length']>0x0){const _0x538c73=_0x26d3b5[0x0];_0x1c697c['location']={'latitude':_0x538c73['address']['latitude'],'longitude':_0x538c73['address']['longitude']};}}const _0x9dcb08=yield this['client']['autocomplete'](_0x47bad6,_0x1c697c);if(!_0x9dcb08['isSuccess']){const _0x56c9d4=_0x9dcb08['toFailed']();_0x26b767(_0x56c9d4),(_0x91e306=this['input']['list'])===null||_0x91e306===void 0x0?void 0x0:_0x91e306['dispatchSuggestionsFailed'](_0x47bad6,_0x56c9d4['status'],_0x56c9d4['message']);return;}const _0x52ae0a=_0x9dcb08['toSuccess']()['suggestions'];if(this['options']['highlight_search_text'])for(let _0x2388ac of _0x52ae0a){_0x2388ac['address']=this['highlightSuggestion'](_0x47bad6,_0x2388ac['address']);}_0x2e11e8(_0x52ae0a),(_0x523cc0=this['input']['list'])===null||_0x523cc0===void 0x0?void 0x0:_0x523cc0['dispatchSuggestions'](_0x47bad6,_0x52ae0a);return;}catch(_0x2a9a00){_0x26b767(_0x2a9a00),(_0x322932=this['input']['list'])===null||_0x322932===void 0x0?void 0x0:_0x322932['dispatchSuggestionsFailed'](_0x47bad6,0x190,_0x2a9a00);return;}}));},this['highlightSuggestion']=(_0x202ece,_0x98dcf1)=>{const _0x42759e='<mark>',_0x5e3a8e='</mark>';let _0x2b514f=_0x202ece['trim']()['replace'](/ /g,',*\x20+');const _0x3bb9a8=new RegExp('\x5cb('+_0x2b514f+')','gi');return _0x98dcf1=_0x98dcf1['replace'](_0x3bb9a8,_0x42759e+'$1'+_0x5e3a8e),_0x98dcf1;},this['client']=new Client(_0x49e68a);}} var __awaiter$7=undefined&&undefined['__awaiter']||function(_0x51ea47,_0x19d79d,_0x4174e5,_0xde9196){function _0x4018ab(_0x2c1221){return _0x2c1221 instanceof _0x4174e5?_0x2c1221:new _0x4174e5(function(_0xb4cc6a){_0xb4cc6a(_0x2c1221);});}return new(_0x4174e5||(_0x4174e5=Promise))(function(_0x22a2ea,_0x2b1266){function _0x556071(_0x165082){try{_0x2d03df(_0xde9196['next'](_0x165082));}catch(_0x319209){_0x2b