5c60a0af63
Bump slice-ansi@9, string-width@8, wrap-ansi@10 and add cli-truncate@6 (both the runtime dep and the pnpm catalog entry for string-width). Rewrite wrapText truncate variants to delegate to cli-truncate, matching Ink's wrap-text.ts: grapheme clusters (ZWJ emoji, combining marks) stay whole and newlines are preserved. Adjust the horizontal-clip left-edge compensation in paint.ts because slice-ansi@9 drops a straddling wide grapheme whole rather than splitting it, so lineX must advance by the actually-dropped width. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>