| 352 | } |
| 353 | |
| 354 | function parseEmailAddress( |
| 355 | addr: { name?: string; address?: string } | { name?: string; address?: string }[] | undefined |
| 356 | ): string { |
| 357 | if (!addr) return '' |
| 358 | if (Array.isArray(addr)) { |
| 359 | return addr |
| 360 | .map((a) => (a.name ? `${a.name} <${a.address}>` : a.address || '')) |
| 361 | .filter(Boolean) |
| 362 | .join(', ') |
| 363 | } |
| 364 | return addr.name ? `${addr.name} <${addr.address}>` : addr.address || '' |
| 365 | } |
| 366 | |
| 367 | function extractTextFromSource(source: Buffer): { text: string; html: string } { |
| 368 | const content = source.toString('utf-8') |