{"version":3,"sources":["src/address.js"],"names":["Address","componentForm","street_number","route","locality","administrative_area_level_1","country","postal_code","init","$","each","index","input","autocomplete","google","maps","places","Autocomplete","types","addListener","closest","find","fadeIn","fillInAddress","place","getPlace","component","empty","i","address_components","length","fieldType","val"],"mappings":";;AAAA,IAAIA,UAAU;AACZC,iBAAe;AACbC,mBAAe,YADF;AAEbC,WAAO,WAFM;AAGbC,cAAU,WAHG;AAIbC,iCAA6B,YAJhB;AAKbC,aAAS,WALI;AAMbC,iBAAa;AANA,GADH;;AAUZC,QAAM,gBAAW;AACfC,MAAE,iBAAF,EAAqBC,IAArB,CAA0B,UAASC,KAAT,EAAgBC,KAAhB,EAAuB;AAC/C,UAAIC,eAAe,IAAIC,OAAOC,IAAP,CAAYC,MAAZ,CAAmBC,YAAvB,CAAoCL,KAApC,EAA2C,EAACM,OAAO,CAAC,SAAD,CAAR,EAA3C,CAAnB;AACAL,mBAAaM,WAAb,CAAyB,eAAzB,EAA0C,YAAW;AACnDV,UAAEG,KAAF,EAASQ,OAAT,CAAiB,KAAjB,EAAwBC,IAAxB,CAA6B,iBAA7B,EAAgDC,MAAhD;AACAtB,gBAAQuB,aAAR,CAAsBV,YAAtB,EAAoCD,KAApC;AACD,OAHD;AAID,KAND;AAOD,GAlBW;;AAoBZW,iBAAe,uBAASV,YAAT,EAAuBD,KAAvB,EAA8B;AAC3C,QAAIY,QAAQX,aAAaY,QAAb,EAAZ;;AAEAhB,MAAET,QAAQC,aAAV,EAAyBS,IAAzB,CAA8B,UAASC,KAAT,EAAgBe,SAAhB,EAA2B;AACvDjB,QAAEG,KAAF,EAASQ,OAAT,CAAiB,KAAjB,EAAwBC,IAAxB,CAA6B,MAAMrB,QAAQ0B,SAAR,CAAnC,EAAuDC,KAAvD;AACD,KAFD;;AAIA,SAAK,IAAIC,IAAI,CAAb,EAAgBA,IAAIJ,MAAMK,kBAAN,CAAyBC,MAA7C,EAAqDF,GAArD,EAA0D;AACxD,UAAIG,YAAYP,MAAMK,kBAAN,CAAyBD,CAAzB,EAA4BV,KAA5B,CAAkC,CAAlC,CAAhB;AACA,UAAIlB,QAAQC,aAAR,CAAsB8B,SAAtB,CAAJ,EAAsC;AACpC,YAAIC,MAAMR,MAAMK,kBAAN,CAAyBD,CAAzB,EAA4B5B,QAAQC,aAAR,CAAsB8B,SAAtB,CAA5B,CAAV;AACAtB,UAAEG,KAAF,EAASQ,OAAT,CAAiB,KAAjB,EAAwBC,IAAxB,CAA6B,MAAMU,SAAnC,EAA8CC,GAA9C,CAAkDA,GAAlD;AACD;AACF;AACF;AAlCW,CAAd","file":"address.js","sourcesContent":["var Address = {\n componentForm: {\n street_number: 'short_name',\n route: 'long_name',\n locality: 'long_name',\n administrative_area_level_1: 'short_name',\n country: 'long_name',\n postal_code: 'short_name'\n },\n\n init: function() {\n $('.address-search').each(function(index, input) {\n var autocomplete = new google.maps.places.Autocomplete(input, {types: ['geocode']});\n autocomplete.addListener('place_changed', function() {\n $(input).closest('div').find('.address-fields').fadeIn();\n Address.fillInAddress(autocomplete, input)\n });\n })\n },\n\n fillInAddress: function(autocomplete, input) {\n var place = autocomplete.getPlace();\n\n $(Address.componentForm).each(function(index, component) {\n $(input).closest('div').find('.' + Address[component]).empty();\n });\n\n for (var i = 0; i < place.address_components.length; i++) {\n var fieldType = place.address_components[i].types[0];\n if (Address.componentForm[fieldType]) {\n var val = place.address_components[i][Address.componentForm[fieldType]];\n $(input).closest('div').find('.' + fieldType).val(val);\n }\n }\n }\n};\n"]}