Skip to content

Commit 62993b0

Browse files
committed
fix: fix dts resolution
1 parent 316d1a0 commit 62993b0

File tree

4 files changed

+18
-10
lines changed

4 files changed

+18
-10
lines changed

examples/angular2/src/app/hello.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { Component } from "@angular/core";
2+
import { Properties } from 'csstype'
23

34
@Component({
45
selector: "app-hello",

packages/karma-typescript/src/bundler/bundle-item.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export class BundleItem {
1515
}
1616

1717
public isScript(): boolean {
18-
return (this.filename && /\.(js|jsx|mjs|ts|tsx)$/.test(this.filename))
18+
return (this.filename && !this.isTypingsFile() && /\.(js|jsx|mjs|ts|tsx)$/.test(this.filename))
1919
|| this.transformedScript;
2020
}
2121

packages/karma-typescript/src/bundler/dependency-walker.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ export class DependencyWalker {
4141

4242
if (lodash.isMap(resolvedModules)) { // Typescript 2.2+
4343
resolvedModules.forEach((resolvedModule: any, moduleName: string) => {
44-
if (resolvedModule.extension === ".d.ts") return
4544
this.addBundleItem(queued, resolvedModule, moduleName, ambientModuleNames);
4645
});
4746
}

packages/karma-typescript/src/bundler/resolve/resolver.ts

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -195,17 +195,25 @@ export class Resolver {
195195
return onFilenameResolved();
196196
}
197197

198-
// This is probably a compiler path module (.d.ts)
199-
if (bundleItem.isNpmModule() && bundleItem.isTypingsFile() &&
200-
bundleItem.filename.indexOf(bundleItem.moduleName) === -1) {
201-
const filepath = PathTool.fixWindowsPath(bundleItem.filename);
202-
const matches = filepath.match(/\/node_modules\/(.*)\//);
203-
if (matches && matches[1]) {
204-
moduleName = matches[1];
205-
this.log.debug("Resolved module name [%s] to [%s]", bundleItem.moduleName, moduleName);
198+
199+
if (bundleItem.isNpmModule() && bundleItem.isTypingsFile()) {
200+
// This is probably a compiler path module (.d.ts)
201+
if (bundleItem.filename.indexOf(bundleItem.moduleName) === -1) {
202+
const filepath = PathTool.fixWindowsPath(bundleItem.filename);
203+
const matches = filepath.match(/\/node_modules\/(.*)\//);
204+
if (matches && matches[1]) {
205+
moduleName = matches[1];
206+
this.log.debug("Resolved module name [%s] to [%s]", bundleItem.moduleName, moduleName);
207+
}
208+
}
209+
// This is probably a type only module import
210+
else {
211+
return onFilenameResolved()
206212
}
207213
}
208214

215+
216+
209217
bopts = {
210218
basedir: bundleItem.filename ? path.dirname(bundleItem.filename) : this.config.karma.basePath,
211219
extensions: this.config.bundlerOptions.resolve.extensions,

0 commit comments

Comments
 (0)