diff --git a/src/Client.js b/src/Client.js index 5d5e94f..b8a45a2 100644 --- a/src/Client.js +++ b/src/Client.js @@ -877,19 +877,15 @@ class Client extends EventEmitter { */ async getProfilePicUrl(contactId) { const profilePic = await this.pupPage.evaluate(async contactId => { - let asyncPic; - if (window.Store.Features.features.MD_BACKEND) { + try { const chatWid = window.Store.WidFactory.createWid(contactId); - asyncPic = await window.Store.getProfilePicFull(chatWid).catch(() => { - return undefined; - }); - } else { - asyncPic = await window.Store.Wap.profilePicFind(contactId).catch(() => { - return undefined; - }); + return await window.Store.ProfilePic.profilePicFind(chatWid); + } catch (err) { + if(err.name === 'ServerStatusCodeError') return undefined; + throw err; } - return asyncPic; }, contactId); + return profilePic ? profilePic.eurl : undefined; } diff --git a/src/util/Injected.js b/src/util/Injected.js index 3524e0d..8addf6c 100644 --- a/src/util/Injected.js +++ b/src/util/Injected.js @@ -40,7 +40,7 @@ exports.ExposeStore = (moduleRaidStr) => { window.Store.VCard = window.mR.findModule('vcardFromContactModel')[0]; window.Store.Wap = window.mR.findModule('queryLinkPreview')[0].default; window.Store.WidFactory = window.mR.findModule('createWid')[0]; - window.Store.getProfilePicFull = window.mR.findModule('getProfilePicFull')[0].getProfilePicFull; + window.Store.ProfilePic = window.mR.findModule('profilePicResync')[0]; window.Store.PresenceUtils = window.mR.findModule('sendPresenceAvailable')[0]; window.Store.ChatState = window.mR.findModule('sendChatStateComposing')[0]; window.Store.GroupParticipants = window.mR.findModule('sendPromoteParticipants')[0]; diff --git a/tests/client.js b/tests/client.js index a73a24d..37b7805 100644 --- a/tests/client.js +++ b/tests/client.js @@ -279,7 +279,7 @@ describe('Client', function() { 'Wap', 'WidFactory', 'findCommonGroups', - 'getProfilePicFull', + 'ProfilePic', ]; const loadedModules = await client.pupPage.evaluate((expectedModules) => {