diff options
| author | Dax <[email protected]> | 2026-04-15 10:26:20 -0400 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-04-15 14:26:20 +0000 |
| commit | be9432a893dd1662c10ff41c7ab552bcba8f3e1b (patch) | |
| tree | f49000b3dd9c3bea5247d319e8fcbd4fb879b7b0 /packages/util/src/error.ts | |
| parent | af20191d1cd60a7f4a421ad81eca5053f7deace1 (diff) | |
| download | opencode-be9432a893dd1662c10ff41c7ab552bcba8f3e1b.tar.gz opencode-be9432a893dd1662c10ff41c7ab552bcba8f3e1b.zip | |
shared package (#22626)
Diffstat (limited to 'packages/util/src/error.ts')
| -rw-r--r-- | packages/util/src/error.ts | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/packages/util/src/error.ts b/packages/util/src/error.ts deleted file mode 100644 index 12c27a0a7..000000000 --- a/packages/util/src/error.ts +++ /dev/null @@ -1,54 +0,0 @@ -import z from "zod" - -export abstract class NamedError extends Error { - abstract schema(): z.core.$ZodType - abstract toObject(): { name: string; data: any } - - static create<Name extends string, Data extends z.core.$ZodType>(name: Name, data: Data) { - const schema = z - .object({ - name: z.literal(name), - data, - }) - .meta({ - ref: name, - }) - const result = class extends NamedError { - public static readonly Schema = schema - - public override readonly name = name as Name - - constructor( - public readonly data: z.input<Data>, - options?: ErrorOptions, - ) { - super(name, options) - this.name = name - } - - static isInstance(input: any): input is InstanceType<typeof result> { - return typeof input === "object" && "name" in input && input.name === name - } - - schema() { - return schema - } - - toObject() { - return { - name: name, - data: this.data, - } - } - } - Object.defineProperty(result, "name", { value: name }) - return result - } - - public static readonly Unknown = NamedError.create( - "UnknownError", - z.object({ - message: z.string(), - }), - ) -} |
