INNER CODE UNIT · TypeScript
loadTransformer
uhyo/nitrogql · packages/jest-transform/src/index.ts:99
async function loadTransformer(
transformer: string | [transformer: string, transformerConfig: unknown],
): Promise<[transformer: SyncTransformer<unknown>, config: unknown]> {
let transformerModule, transformerConfig: unknown;
if (typeof transformer === "string") {
transformerModule = await import(transformer);
} else {
transformerModule = await import(transformer[0]);
transformerConfig = transformer[1];
}
while (transformerModule.default) {
transformerModule = transformerModule.default;
}
if (transformerModule.createTransformer) {
transformerModule =
await transformerModule.createTransformer(transformerConfig);
}
return [transformerModule, transformerConfig];