diff --git a/libraries/nestjs-libraries/src/integrations/social/bluesky.provider.ts b/libraries/nestjs-libraries/src/integrations/social/bluesky.provider.ts index 621549ad..1803992b 100644 --- a/libraries/nestjs-libraries/src/integrations/social/bluesky.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/bluesky.provider.ts @@ -213,7 +213,7 @@ export class BlueskyProvider extends SocialAbstract implements SocialProvider { accessToken: accessJwt, id: did, name: profile.data.displayName!, - picture: profile.data.avatar!, + picture: profile?.data?.avatar || '', username: profile.data.handle!, }; } catch (e) { diff --git a/libraries/nestjs-libraries/src/integrations/social/dev.to.provider.ts b/libraries/nestjs-libraries/src/integrations/social/dev.to.provider.ts index a8e422b4..53487b3d 100644 --- a/libraries/nestjs-libraries/src/integrations/social/dev.to.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/dev.to.provider.ts @@ -81,7 +81,7 @@ export class DevToProvider extends SocialAbstract implements SocialProvider { accessToken: body.apiKey, id, name, - picture: profile_image, + picture: profile_image || '', username, }; } catch (err) { diff --git a/libraries/nestjs-libraries/src/integrations/social/discord.provider.ts b/libraries/nestjs-libraries/src/integrations/social/discord.provider.ts index 54728649..8796147c 100644 --- a/libraries/nestjs-libraries/src/integrations/social/discord.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/discord.provider.ts @@ -242,7 +242,7 @@ export class DiscordProvider extends SocialAbstract implements SocialProvider { .filter((role: any) => role.name.toLowerCase().includes(data.query.toLowerCase()) ) - .filter((f) => f.name !== '@everyone' && f.name !== '@here'); + .filter((f: any) => f.name !== '@everyone' && f.name !== '@here'); const list = await ( await fetch( diff --git a/libraries/nestjs-libraries/src/integrations/social/dribbble.provider.ts b/libraries/nestjs-libraries/src/integrations/social/dribbble.provider.ts index a8b76758..4e231085 100644 --- a/libraries/nestjs-libraries/src/integrations/social/dribbble.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/dribbble.provider.ts @@ -54,7 +54,7 @@ export class DribbbleProvider extends SocialAbstract implements SocialProvider { accessToken: access_token, refreshToken: refreshToken, expiresIn: expires_in, - picture: profile_image, + picture: profile_image || '', username, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/facebook.provider.ts b/libraries/nestjs-libraries/src/integrations/social/facebook.provider.ts index be62e6d3..c788d5b6 100644 --- a/libraries/nestjs-libraries/src/integrations/social/facebook.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/facebook.provider.ts @@ -236,9 +236,7 @@ export class FacebookProvider extends SocialAbstract implements SocialProvider { const { id, name, - picture: { - data: { url }, - }, + picture } = await ( await fetch( `https://graph.facebook.com/v20.0/me?fields=id,name,picture&access_token=${access_token}` @@ -251,7 +249,7 @@ export class FacebookProvider extends SocialAbstract implements SocialProvider { accessToken: access_token, refreshToken: access_token, expiresIn: dayjs().add(59, 'days').unix() - dayjs().unix(), - picture: url, + picture: picture?.data?.url || '', username: '', }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/farcaster.provider.ts b/libraries/nestjs-libraries/src/integrations/social/farcaster.provider.ts index 4bb81bdd..212b4010 100644 --- a/libraries/nestjs-libraries/src/integrations/social/farcaster.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/farcaster.provider.ts @@ -61,7 +61,7 @@ export class FarcasterProvider accessToken: data.signer_uuid, refreshToken: '', expiresIn: dayjs().add(200, 'year').unix() - dayjs().unix(), - picture: data.pfp_url, + picture: data?.pfp_url || '', username: data.username, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/hashnode.provider.ts b/libraries/nestjs-libraries/src/integrations/social/hashnode.provider.ts index eee8978e..8fdd768e 100644 --- a/libraries/nestjs-libraries/src/integrations/social/hashnode.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/hashnode.provider.ts @@ -91,7 +91,7 @@ export class HashnodeProvider extends SocialAbstract implements SocialProvider { accessToken: body.apiKey, id, name, - picture: profilePicture, + picture: profilePicture || '', username, }; } catch (err) { diff --git a/libraries/nestjs-libraries/src/integrations/social/instagram.provider.ts b/libraries/nestjs-libraries/src/integrations/social/instagram.provider.ts index 5a7edf4a..2bdf2889 100644 --- a/libraries/nestjs-libraries/src/integrations/social/instagram.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/instagram.provider.ts @@ -364,9 +364,7 @@ export class InstagramProvider const { id, name, - picture: { - data: { url }, - }, + picture } = await ( await fetch( `https://graph.facebook.com/v20.0/me?fields=id,name,picture&access_token=${access_token}` @@ -379,7 +377,7 @@ export class InstagramProvider accessToken: access_token, refreshToken: access_token, expiresIn: dayjs().add(59, 'days').unix() - dayjs().unix(), - picture: url, + picture: picture?.data?.url || '', username: '', }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/instagram.standalone.provider.ts b/libraries/nestjs-libraries/src/integrations/social/instagram.standalone.provider.ts index a74ab431..68938b17 100644 --- a/libraries/nestjs-libraries/src/integrations/social/instagram.standalone.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/instagram.standalone.provider.ts @@ -41,7 +41,7 @@ export class InstagramStandaloneProvider ) ).json(); - const { user_id, name, username, profile_picture_url } = await ( + const { user_id, name, username, profile_picture_url = '' } = await ( await fetch( `https://graph.instagram.com/v21.0/me?fields=user_id,username,name,profile_picture_url&access_token=${access_token}` ) @@ -53,7 +53,7 @@ export class InstagramStandaloneProvider accessToken: access_token, refreshToken: access_token, expiresIn: dayjs().add(59, 'days').unix() - dayjs().unix(), - picture: profile_picture_url, + picture: profile_picture_url || '', username, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/lemmy.provider.ts b/libraries/nestjs-libraries/src/integrations/social/lemmy.provider.ts index 5f2e0e6d..6b5a9759 100644 --- a/libraries/nestjs-libraries/src/integrations/social/lemmy.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/lemmy.provider.ts @@ -107,7 +107,7 @@ export class LemmyProvider extends SocialAbstract implements SocialProvider { user.person_view.person.display_name || user.person_view.person.name || '', - picture: user.person_view.person.avatar || '', + picture: user?.person_view?.person?.avatar || '', username: body.identifier || '', }; } catch (e) { diff --git a/libraries/nestjs-libraries/src/integrations/social/linkedin.provider.ts b/libraries/nestjs-libraries/src/integrations/social/linkedin.provider.ts index aac124f7..d4731735 100644 --- a/libraries/nestjs-libraries/src/integrations/social/linkedin.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/linkedin.provider.ts @@ -80,7 +80,7 @@ export class LinkedinProvider extends SocialAbstract implements SocialProvider { refreshToken, expiresIn: expires_in, name, - picture, + picture: picture || '', username: vanityName, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/mastodon.provider.ts b/libraries/nestjs-libraries/src/integrations/social/mastodon.provider.ts index 413f637c..72957765 100644 --- a/libraries/nestjs-libraries/src/integrations/social/mastodon.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/mastodon.provider.ts @@ -91,7 +91,7 @@ export class MastodonProvider extends SocialAbstract implements SocialProvider { accessToken: tokenInformation.access_token, refreshToken: 'null', expiresIn: dayjs().add(100, 'years').unix() - dayjs().unix(), - picture: personalInformation.avatar, + picture: personalInformation?.avatar || '', username: personalInformation.username, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/medium.provider.ts b/libraries/nestjs-libraries/src/integrations/social/medium.provider.ts index db838978..00b91c01 100644 --- a/libraries/nestjs-libraries/src/integrations/social/medium.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/medium.provider.ts @@ -72,7 +72,7 @@ export class MediumProvider extends SocialAbstract implements SocialProvider { accessToken: body.apiKey, id, name, - picture: imageUrl, + picture: imageUrl || '', username, }; } catch (err) { diff --git a/libraries/nestjs-libraries/src/integrations/social/nostr.provider.ts b/libraries/nestjs-libraries/src/integrations/social/nostr.provider.ts index ccfd2871..ec961d60 100644 --- a/libraries/nestjs-libraries/src/integrations/social/nostr.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/nostr.provider.ts @@ -147,7 +147,7 @@ export class NostrProvider extends SocialAbstract implements SocialProvider { accessToken: AuthService.signJWT({ password: body.password }), refreshToken: '', expiresIn: dayjs().add(200, 'year').unix() - dayjs().unix(), - picture: user.picture, + picture: user?.picture || '', username: user.name || 'nousername', }; } catch (e) { diff --git a/libraries/nestjs-libraries/src/integrations/social/pinterest.provider.ts b/libraries/nestjs-libraries/src/integrations/social/pinterest.provider.ts index 1e53ea68..585d188c 100644 --- a/libraries/nestjs-libraries/src/integrations/social/pinterest.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/pinterest.provider.ts @@ -82,7 +82,7 @@ export class PinterestProvider accessToken: access_token, refreshToken: refreshToken, expiresIn: expires_in, - picture: profile_image, + picture: profile_image || '', username, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/reddit.provider.ts b/libraries/nestjs-libraries/src/integrations/social/reddit.provider.ts index c29194c8..f249c023 100644 --- a/libraries/nestjs-libraries/src/integrations/social/reddit.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/reddit.provider.ts @@ -59,7 +59,7 @@ export class RedditProvider extends SocialAbstract implements SocialProvider { accessToken, refreshToken: newRefreshToken, expiresIn, - picture: icon_img.split('?')[0], + picture: icon_img?.split?.('?')?.[0] || '', username: name, }; } @@ -118,7 +118,7 @@ export class RedditProvider extends SocialAbstract implements SocialProvider { accessToken, refreshToken, expiresIn, - picture: icon_img.split('?')[0], + picture: icon_img?.split?.('?')?.[0] || '', username: name, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/slack.provider.ts b/libraries/nestjs-libraries/src/integrations/social/slack.provider.ts index 459acff2..762c2bba 100644 --- a/libraries/nestjs-libraries/src/integrations/social/slack.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/slack.provider.ts @@ -95,7 +95,7 @@ export class SlackProvider extends SocialAbstract implements SocialProvider { accessToken: access_token, refreshToken: 'null', expiresIn: dayjs().add(100, 'years').unix() - dayjs().unix(), - picture: user.profile.image_original, + picture: user?.profile?.image_original || '', username: user.name, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/telegram.provider.ts b/libraries/nestjs-libraries/src/integrations/social/telegram.provider.ts index 0fc8e8c7..ad521f89 100644 --- a/libraries/nestjs-libraries/src/integrations/social/telegram.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/telegram.provider.ts @@ -71,7 +71,7 @@ export class TelegramProvider extends SocialAbstract implements SocialProvider { accessToken: String(chat.id), refreshToken: '', expiresIn: dayjs().add(200, 'year').unix() - dayjs().unix(), - picture: photo, + picture: photo || '', username: chat.username!, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/threads.provider.ts b/libraries/nestjs-libraries/src/integrations/social/threads.provider.ts index 932466b1..e86ac41f 100644 --- a/libraries/nestjs-libraries/src/integrations/social/threads.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/threads.provider.ts @@ -41,9 +41,7 @@ export class ThreadsProvider extends SocialAbstract implements SocialProvider { id, name, username, - picture: { - data: { url }, - }, + picture } = await this.fetchPageInformation(access_token); return { @@ -52,7 +50,7 @@ export class ThreadsProvider extends SocialAbstract implements SocialProvider { accessToken: access_token, refreshToken: access_token, expiresIn: dayjs().add(59, 'days').unix() - dayjs().unix(), - picture: url, + picture: picture?.data?.url || '', username: '', }; } @@ -112,9 +110,7 @@ export class ThreadsProvider extends SocialAbstract implements SocialProvider { id, name, username, - picture: { - data: { url }, - }, + picture, } = await this.fetchPageInformation(access_token); return { @@ -123,7 +119,7 @@ export class ThreadsProvider extends SocialAbstract implements SocialProvider { accessToken: access_token, refreshToken: access_token, expiresIn: dayjs().add(59, 'days').unix() - dayjs().unix(), - picture: url, + picture: picture?.data?.url || '', username: username, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/tiktok.provider.ts b/libraries/nestjs-libraries/src/integrations/social/tiktok.provider.ts index 2de298c6..85b6418e 100644 --- a/libraries/nestjs-libraries/src/integrations/social/tiktok.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/tiktok.provider.ts @@ -250,7 +250,7 @@ export class TiktokProvider extends SocialAbstract implements SocialProvider { accessToken: access_token, id: open_id.replace(/-/g, ''), name: display_name, - picture: avatar_url, + picture: avatar_url || '', username: username, }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/vk.provider.ts b/libraries/nestjs-libraries/src/integrations/social/vk.provider.ts index 12811204..670dd803 100644 --- a/libraries/nestjs-libraries/src/integrations/social/vk.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/vk.provider.ts @@ -65,7 +65,7 @@ export class VkProvider extends SocialAbstract implements SocialProvider { accessToken: access_token, refreshToken: refresh_token + '&&&&' + device_id, expiresIn: dayjs().add(expires_in, 'seconds').unix() - dayjs().unix(), - picture: avatar, + picture: avatar || '', username: first_name.toLowerCase(), }; } @@ -150,7 +150,7 @@ export class VkProvider extends SocialAbstract implements SocialProvider { accessToken: access_token, refreshToken: refresh_token + '&&&&' + device_id, expiresIn: dayjs().add(expires_in, 'seconds').unix() - dayjs().unix(), - picture: avatar, + picture: avatar || '', username: first_name.toLowerCase(), }; } diff --git a/libraries/nestjs-libraries/src/integrations/social/x.provider.ts b/libraries/nestjs-libraries/src/integrations/social/x.provider.ts index c73431e2..ca32f23c 100644 --- a/libraries/nestjs-libraries/src/integrations/social/x.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/x.provider.ts @@ -258,7 +258,7 @@ export class XProvider extends SocialAbstract implements SocialProvider { name, refreshToken: '', expiresIn: 999999999, - picture: profile_image_url, + picture: profile_image_url || '', username, additionalSettings: [ { diff --git a/libraries/nestjs-libraries/src/integrations/social/youtube.provider.ts b/libraries/nestjs-libraries/src/integrations/social/youtube.provider.ts index a9f0c369..7b6e6fcf 100644 --- a/libraries/nestjs-libraries/src/integrations/social/youtube.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/youtube.provider.ts @@ -132,7 +132,7 @@ export class YoutubeProvider extends SocialAbstract implements SocialProvider { refreshToken: credentials.refresh_token!, id: data.id!, name: data.name!, - picture: data.picture!, + picture: data?.picture || '', username: '', }; } @@ -178,7 +178,7 @@ export class YoutubeProvider extends SocialAbstract implements SocialProvider { refreshToken: tokens.refresh_token!, id: data.id!, name: data.name!, - picture: data.picture!, + picture: data?.picture || '', username: '', }; }