diff --git a/packages/pl-fe/src/actions/circle.ts b/packages/pl-fe/src/actions/circle.ts index fdc999153..a80954a26 100644 --- a/packages/pl-fe/src/actions/circle.ts +++ b/packages/pl-fe/src/actions/circle.ts @@ -48,7 +48,8 @@ const processCircle = (setProgress: (progress: { interaction.reblogs += 1; interaction.acct = status.reblog.account.acct; - interaction.avatar = status.reblog.account.avatar_static || status.reblog.account.avatar; + const avatarUrl = status.reblog.account.avatar_static || status.reblog.account.avatar; + interaction.avatar = avatarUrl?.endsWith('/identicon') ? '' : avatarUrl; interaction.avatar_description = status.reblog.account.avatar_description; } else if (status.in_reply_to_account_id) { if (status.in_reply_to_account_id === me) return; diff --git a/packages/pl-fe/src/normalizers/account.ts b/packages/pl-fe/src/normalizers/account.ts index 85149a07e..8dea8a83d 100644 --- a/packages/pl-fe/src/normalizers/account.ts +++ b/packages/pl-fe/src/normalizers/account.ts @@ -1,8 +1,8 @@ import type { Account as BaseAccount } from 'pl-api'; const normalizeAccount = (account: BaseAccount) => { - const missingAvatar = require('pl-fe/assets/images/avatar-missing.png'); - const missingHeader = require('pl-fe/assets/images/header-missing.png'); + const missingAvatar: string = require('pl-fe/assets/images/avatar-missing.png'); + const missingHeader: string = require('pl-fe/assets/images/header-missing.png'); return { mute_expires_at: null, diff --git a/packages/pl-fe/src/pages/fun/circle.tsx b/packages/pl-fe/src/pages/fun/circle.tsx index e318d9853..8b6ee7781 100644 --- a/packages/pl-fe/src/pages/fun/circle.tsx +++ b/packages/pl-fe/src/pages/fun/circle.tsx @@ -21,7 +21,7 @@ import { useModalsStore } from 'pl-fe/stores/modals'; const toRad = (x: number) => x * (Math.PI / 180); -const avatarMissing = require('pl-fe/assets/images/avatar-missing.png'); +const avatarMissing: string = require('pl-fe/assets/images/avatar-missing.png'); const HEIGHT = 1000; const WIDTH = 1000; @@ -88,11 +88,10 @@ const CirclePage: React.FC = () => { // https://github.com/duiker101/twitter-interaction-circles const ctx = canvasRef.current?.getContext('2d')!; - // ctx.fillStyle = '#C5EDCE'; - // ctx.fillRect(0, 0, 1000, 1000); + const ownAvatar = (account?.avatar && !account.avatar.endsWith('/identicon') && account.avatar) || avatarMissing; for (const layer of [ - { index: 0, off: 0, distance: 0, count: 1, radius: 110, users: [{ avatar: account?.avatar || avatarMissing }] }, + { index: 0, off: 0, distance: 0, count: 1, radius: 110, users: [{ avatar: ownAvatar }] }, { index: 1, off: 1, distance: 200, count: 8, radius: 64, users: users.slice(0, 8) }, { index: 2, off: 9, distance: 330, count: 15, radius: 58, users: users.slice(8, 23) }, { index: 3, off: 24, distance: 450, count: 26, radius: 50, users: users.slice(23, 49) },