/** * Node module customization hook for project-local plugin package names. * * @module @deepseek-ai/dsh-scripts/local-plugin-loader-hooks */ import type { ResolveHookContext, ResolveFnOutput } from 'node:module' interface HookData { mappings: Readonly> } let mappings: Readonly> = {} /** Receive the package-name to source-URL map from the launcher thread. */ export function initialize(data: HookData): void { mappings = { ...data.mappings } } /** Resolve exact local workspace package names to their TypeScript entry source. */ export async function resolve( specifier: string, context: ResolveHookContext, nextResolve: (specifier: string, context: ResolveHookContext) => Promise, ): Promise { return nextResolve(mappings[specifier] ?? specifier, context) }