diff --git a/packages/tui/src/util/error.ts b/packages/tui/src/util/error.ts index 757758a205..d420e65ae1 100644 --- a/packages/tui/src/util/error.ts +++ b/packages/tui/src/util/error.ts @@ -143,40 +143,3 @@ export function errorMessage(error: unknown): string { if (formatted) return formatted return "unknown error" } - -export function errorData(error: unknown) { - if (error instanceof Error) { - return { - type: error.name, - message: errorMessage(error), - stack: error.stack, - cause: error.cause === undefined ? undefined : errorFormat(error.cause), - formatted: errorFormat(error), - } - } - - if (!isRecord(error)) { - return { - type: typeof error, - message: errorMessage(error), - formatted: errorFormat(error), - } - } - - const data = Object.getOwnPropertyNames(error).reduce>((acc, key) => { - const value = error[key] - if (value === undefined) return acc - if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") { - acc[key] = value - return acc - } - // oxlint-disable-next-line no-base-to-string -- intentional coercion of arbitrary error properties - acc[key] = value instanceof Error ? value.message : String(value) - return acc - }, {}) - - if (typeof data.message !== "string") data.message = errorMessage(error) - if (typeof data.type !== "string") data.type = error.constructor?.name - data.formatted = errorFormat(error) - return data -} diff --git a/packages/tui/test/util/error.test.ts b/packages/tui/test/util/error.test.ts index 58d6e3c06a..a27c214c1a 100644 --- a/packages/tui/test/util/error.test.ts +++ b/packages/tui/test/util/error.test.ts @@ -1,25 +1,16 @@ import { describe, expect, test } from "bun:test" -import { errorData, errorFormat, errorMessage } from "../../src/util/error" +import { errorFormat, errorMessage } from "../../src/util/error" describe("util.error", () => { test("formats native Error instances", () => { const err = new Error("boom") expect(errorMessage(err)).toBe("boom") expect(errorFormat(err)).toContain("boom") - - const data = errorData(err) - expect(data.type).toBe("Error") - expect(data.message).toBe("boom") - expect(String(data.formatted)).toContain("boom") }) test("extracts message from record-like values", () => { const err = { message: "bad input", code: "E_BAD" } expect(errorMessage(err)).toBe("bad input") - - const data = errorData(err) - expect(data.message).toBe("bad input") - expect(data.code).toBe("E_BAD") }) test("never returns bare {} for opaque object errors", () => { @@ -41,9 +32,5 @@ describe("util.error", () => { } expect(errorMessage(err)).toBe("ResolveMessage: Cannot resolve module") - - const data = errorData(err) - expect(data.message).toBe("ResolveMessage: Cannot resolve module") - expect(String(data.formatted)).toContain("ResolveMessage") }) })