diff --git a/src/checker/runtime.ts b/src/checker/runtime.ts index b84a69a..d918cd3 100644 --- a/src/checker/runtime.ts +++ b/src/checker/runtime.ts @@ -263,8 +263,9 @@ function createChecker(receive: (cb: (msg: Req) => void) => void, send: (msg: Re }); const program = service.getProgram(); - - if (loaderConfig.customTranformersPath !== undefined) { + if (loaderConfig.getCustomTransformers !== undefined) { + host.getCustomTransformers = loaderConfig.getCustomTransformers(program); + } else if (loaderConfig.customTranformersPath !== undefined) { host.getCustomTransformers = require(loaderConfig.customTranformersPath)(program); } diff --git a/src/interfaces.ts b/src/interfaces.ts index e781045..b782d9d 100644 --- a/src/interfaces.ts +++ b/src/interfaces.ts @@ -25,6 +25,7 @@ export interface LoaderConfig { entryFileIsJs?: boolean; debug?: boolean; customTranformersPath?: string; + getCustomTransformers?: (program: ts.Program) => ts.CustomTransformers } export interface OutputFile {