File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -4,6 +4,13 @@ import { existsSync } from 'node:fs'
44import { fileURLToPath } from 'node:url'
55import { Worker } from 'node:worker_threads'
66import { dirname , join } from 'pathe'
7+ import { SearchDepsUnavailableError } from './index.ts'
8+
9+ function reconstructError ( message : string , name ?: string ) : Error {
10+ if ( name === 'SearchDepsUnavailableError' )
11+ return new SearchDepsUnavailableError ( undefined , message )
12+ return new Error ( message )
13+ }
714
815interface PendingTask {
916 id : number
@@ -54,7 +61,7 @@ function ensureWorker(): Worker {
5461 }
5562 else if ( msg . type === 'error' ) {
5663 pending . delete ( msg . id )
57- task . reject ( new Error ( msg . message ) )
64+ task . reject ( reconstructError ( msg . message , msg . name ) )
5865 }
5966 } )
6067
Original file line number Diff line number Diff line change @@ -33,6 +33,7 @@ export interface WorkerErrorResponse {
3333 type : 'error'
3434 id : number
3535 message : string
36+ name ?: string
3637}
3738
3839export type WorkerResponse = WorkerProgressResponse | WorkerDoneResponse | WorkerErrorResponse
@@ -68,6 +69,7 @@ if (parentPort) {
6869 type : 'error' ,
6970 id,
7071 message : err instanceof Error ? err . message : String ( err ) ,
72+ name : err instanceof Error ? err . name : undefined ,
7173 } satisfies WorkerErrorResponse )
7274 }
7375 }
You can’t perform that action at this time.
0 commit comments