import * as React from "react" import { renderToStaticMarkup } from "react-dom/server" import { describe, expect, it } from "vitest" import { AnsiText, resolveAnsiComponent } from "./ansi-text" function TestComponent({ children }: { children?: string }) { return {children} } describe("AnsiText", () => { it("resolves direct, CommonJS, and nested default exports", () => { expect(resolveAnsiComponent(TestComponent)).toBe(TestComponent) expect(resolveAnsiComponent({ default: TestComponent })).toBe(TestComponent) expect(resolveAnsiComponent({ default: { default: TestComponent } })).toBe( TestComponent ) }) it("renders ANSI SGR output during server rendering", () => { const markup = renderToStaticMarkup( {"\u001b[32mDone\u001b[39m"} ) expect(markup).toContain("Done") expect(markup).toContain("color:") expect(markup).not.toContain("\u001b") }) })