diff --git a/apps/desktop/src/app/messaging/platform-icon.tsx b/apps/desktop/src/app/messaging/platform-icon.tsx index 68bb6697fc5a..b2d6302bf979 100644 --- a/apps/desktop/src/app/messaging/platform-icon.tsx +++ b/apps/desktop/src/app/messaging/platform-icon.tsx @@ -18,6 +18,22 @@ import { forwardRef } from 'react' import { Globe, Link as LinkIcon, MessageSquareText } from '@/lib/icons' import { cn } from '@/lib/utils' +// --------------------------------------------------------------------------- +// Photon brand icon — three diagonal rounded bars (the Photon logo mark). +// Rendered at ~14 px inside the PlatformAvatar so the bars are kept thick +// enough to stay legible. At small sizes the bars blend into a distinctive +// silhouette; the wide triangular spacing preserves the logo's identity. +// --------------------------------------------------------------------------- +function PhotonIcon(props: React.SVGProps) { + return ( + + + + + + ) +} + // We render simpleicons.org brand glyphs for platforms whose owners publish a // usable mark (telegram, discord, matrix, ...). A few brands — Slack, Dingtalk, // Feishu, WeCom — have been removed from Simple Icons at the brand owner's @@ -45,6 +61,7 @@ const PLATFORM_ICONS: Record = { signal: { Icon: SiSignal, color: '#3A76F0', kind: 'brand' }, whatsapp: { Icon: SiWhatsapp, color: '#25D366', kind: 'brand' }, bluebubbles: { Icon: SiApple, color: '#0BD318', kind: 'brand' }, + photon: { Icon: PhotonIcon, color: '#6366F1', kind: 'brand' }, homeassistant: { Icon: SiHomeassistant, color: '#18BCF2', kind: 'brand' }, email: { Icon: SiGmail, color: '#EA4335', kind: 'brand' }, sms: { Icon: MessageSquareText, color: '#F43F5E', kind: 'generic' }, diff --git a/apps/desktop/src/lib/session-source.ts b/apps/desktop/src/lib/session-source.ts index e0773c232609..6958c62611a3 100644 --- a/apps/desktop/src/lib/session-source.ts +++ b/apps/desktop/src/lib/session-source.ts @@ -12,6 +12,7 @@ const SOURCE_LABELS: Record = { local: 'Local', matrix: 'Matrix', mattermost: 'Mattermost', + photon: 'Photon', qqbot: 'QQ', signal: 'Signal', slack: 'Slack', @@ -26,6 +27,7 @@ const SOURCE_LABELS: Record = { const SOURCE_ALIASES: Record = { bluebubbles: ['apple messages', 'imessage'], + photon: ['imessage', 'messages'], cli: ['terminal'], desktop: ['app', 'gui'], local: ['machine'], @@ -55,6 +57,7 @@ export const MESSAGING_SESSION_SOURCE_IDS = [ 'signal', 'whatsapp', 'bluebubbles', + 'photon', 'homeassistant', 'email', 'sms',