(client: TelegramClient, userId: number)
| 387 | if (nameCache.has(userId)) return nameCache.get(userId)!; |
| 388 | const user = await fetchUserInfo(client, userId); |
| 389 | if (user) { |
| 390 | const name = [user.firstName, user.lastName].filter(Boolean).join(" ").trim() || "Unknown"; |
| 391 | return name; |
| 392 | } |
| 393 | return String(userId); |
| 394 | } |
| 395 | |
| 396 | function userLink(id: number, name: string): string { |
| 397 | return `<a href="tg://user?id=${attrEscape(id)}">${htmlEscape(name)} (${htmlEscape(id)})</a>`; |
| 398 | } |
| 399 | |
| 400 | function isBotFromSender(sender: any): boolean { |
no test coverage detected