UNPKG

4.48 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../../src/strategies/VkontakteStrategy.js"],"names":["VkontakteStrategy","Strategy","Vkontakte","type","id","accessToken","then","response","json","toString","settings","config","clientId","clientID","passport","fields","join","token","res","data","firstName","first_name","lastName","last_name","gender","sex","photos","photo_50","photo_100","photo_200","photo_max","photo_max_orig","domain","about","bdate","avatar","city","country","BaseStrategy"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;;;;;;;;;IAEqBA,iB;;;;;;;;;;;;;;;UACnBC,Q,GAAWC,8BAAUD,Q;UACrBE,I,GAAO,W;;;;;;;sGAEP,iBAAiBC,EAAjB,EAAqBC,WAArB;AAAA;AAAA;AAAA;AAAA;AAAA,sBACM,CAACD,EAAD,IAAO,CAACC,WADd;AAAA;AAAA;AAAA;;AAAA,iDAEW,KAFX;;AAAA;AAAA;AAAA,iDAKW,4FAA0DA,WAA1D,cAAgFC,IAAhF,CAAqF,UAACC,QAAD;AAAA,yBAC1FA,QAAQ,CAACC,IAAT,GAAgBF,IAAhB,CAAqB,UAACE,IAAD,EAAU;AAC7B,wBACEA,IAAI,IACJA,IAAI,CAACD,QADL,IAEAC,IAAI,CAACD,QAAL,CAAc,CAAd,CAFA,IAGAC,IAAI,CAACD,QAAL,CAAc,CAAd,EAAiBH,EAHjB,IAIAI,IAAI,CAACD,QAAL,CAAc,CAAd,EAAiBH,EAAjB,CAAoBK,QAApB,OAAmCL,EAAE,CAACK,QAAH,EALrC,EAME;AACA,6BAAO,IAAP;AACD;;AACD,2BAAO,KAAP;AACD,mBAXD,CAD0F;AAAA,iBAArF,CALX;;AAAA;AAAA;AAAA;AAAA,iDAoBW,KApBX;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;WAwBA,mBAAU;AACR;AAEEC,QAAAA,QAAQ,sCAA+B,KAAKC,MAAL,CAAYC,QAAZ,IAAwB,KAAKD,MAAL,CAAYE,QAAnE;AAFV;AAID;;;;sGAED,kBAAiBC,QAAjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAA8B;AAC5B;AAEMC,gBAAAA,MAHR,GAGiB,CACb,KADa,EAEb,OAFa,EAGb,MAHa,EAIb,SAJa,EAKb,UALa,EAMb,WANa,EAOb,WAPa,EAQb,gBARa,EASb,WATa,EAUb,QAVa,EAWb,IAXa,EAYb,OAZa,CAHjB;AAAA;AAAA,uBAiBoB,sFAC8BA,MAAM,CAACC,IAAP,CAAY,GAAZ,CAD9B,2BAC+DF,QAAQ,CAACG,KADxE,aAjBpB;;AAAA;AAiBQC,gBAAAA,GAjBR;AAAA;AAAA,uBAoBqBA,GAAG,CAACV,IAAJ,EApBrB;;AAAA;AAoBQA,gBAAAA,IApBR;AAqBQW,gBAAAA,IArBR,GAqBeX,IAAI,CAACD,QAAL,CAAc,CAAd,CArBf;AAAA,kDAsBS;AACLa,kBAAAA,SAAS,EAAED,IAAI,CAACE,UADX;AAELC,kBAAAA,QAAQ,EAAEH,IAAI,CAACI,SAFV;AAGLC,kBAAAA,MAAM,EAAEL,IAAI,CAACM,GAAL,KAAa,CAAb,GAAiB,QAAjB,GAA4B,MAH/B;AAILC,kBAAAA,MAAM,EAAE,CAACP,IAAI,CAACQ,QAAN,EAAgBR,IAAI,CAACS,SAArB,EAAgCT,IAAI,CAACU,SAArC,EAAgDV,IAAI,CAACW,SAArD,EAAgEX,IAAI,CAACY,cAArE,CAJH;AAKLC,kBAAAA,MAAM,EAAEb,IAAI,CAACa,MALR;AAMLC,kBAAAA,KAAK,EAAEd,IAAI,CAACc,KANP;AAOLC,kBAAAA,KAAK,EAAEf,IAAI,CAACe,KAPP;AAQLC,kBAAAA,MAAM,EAAEhB,IAAI,CAACU,SARR;AASLO,kBAAAA,IAAI,EAAEjB,IAAI,CAACiB,IATN;AAULC,kBAAAA,OAAO,EAAElB,IAAI,CAACkB;AAVT,iBAtBT;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAnC6CC,yB","sourcesContent":["import fetch from 'isomorphic-fetch';\nimport Vkontakte from 'passport-vkontakte';\n\nimport BaseStrategy from './BaseStrategy';\n\nexport default class VkontakteStrategy extends BaseStrategy {\n Strategy = Vkontakte.Strategy;\n type = 'vkontakte';\n\n async checkToken(id, accessToken) {\n if (!id || !accessToken) {\n return false;\n }\n try {\n return fetch(`https://api.vk.com/method/users.get?access_token=${accessToken}&v=5.00`).then((response) =>\n response.json().then((json) => {\n if (\n json &&\n json.response &&\n json.response[0] &&\n json.response[0].id &&\n json.response[0].id.toString() === id.toString()\n ) {\n return true;\n }\n return false;\n }),\n );\n } catch (err) {\n return false;\n }\n }\n\n getInfo() {\n return {\n ...super.getInfo(),\n settings: `https://vk.com/editapp?id=${this.config.clientId || this.config.clientID}`,\n };\n }\n\n async getProfile(passport) { //eslint-disable-line\n // console.log('getProfile', passport);\n\n const fields = [\n 'sex',\n 'bdate',\n 'city',\n 'country',\n 'photo_50',\n 'photo_100',\n 'photo_200',\n 'photo_max_orig',\n 'photo_max',\n 'domain',\n 'id',\n 'about',\n ];\n const res = await fetch(\n `https://api.vk.com/method/users.get?fields=${fields.join(',')}&access_token=${passport.token}&v=5.00`,\n );\n const json = await res.json();\n const data = json.response[0];\n return {\n firstName: data.first_name,\n lastName: data.last_name,\n gender: data.sex === 1 ? 'female' : 'male',\n photos: [data.photo_50, data.photo_100, data.photo_200, data.photo_max, data.photo_max_orig],\n domain: data.domain,\n about: data.about,\n bdate: data.bdate,\n avatar: data.photo_200,\n city: data.city,\n country: data.country,\n };\n }\n}\n"],"file":"VkontakteStrategy.js"}
\No newline at end of file