(client: any, target: any)
| 612 | const key = peer ? `sender:${stableEntityKey(peer)}` : undefined; |
| 613 | if (key && entityCache.has(key)) return entityCache.get(key); |
| 614 | try { |
| 615 | const sender = await withTimeout((msg as any).getSender?.(), QUOTE_RPC_TIMEOUT_MS, "senderEntity.getSender"); |
| 616 | if (sender) { |
| 617 | if (key) entityCache.set(key, sender); |
| 618 | return sender; |
| 619 | } |
| 620 | } catch (err) { |
| 621 | console.debug("[quote] getSender failed:", err?.message || err); |
| 622 | } |
| 623 | const entity = await getPeerEntity((msg as any).client, peer); |
| 624 | if (key) entityCache.set(key, entity); |
| 625 | return entity; |
| 626 | } |
| 627 | |
| 628 | async function senderName(msg: Api.Message): Promise<string> { |
| 629 | return displayName(await senderEntity(msg)); |
| 630 | } |
| 631 | |
| 632 | function emojiStatusIdFromEntity(entity: any): string | undefined { |
| 633 | const status = entity?.emojiStatus ?? entity?.emoji_status; |
no test coverage detected