Skip to content

Commit d038351

Browse files
committed
update
1 parent 51b0f1e commit d038351

File tree

41 files changed

+349
-151
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+349
-151
lines changed

lib/Resolver.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ const {
293293
/** @typedef {object} Context */
294294

295295
/**
296-
* @typedef {object} TsconfigFileData
296+
* @typedef {object} TsconfigPathsData
297297
* @property {Array<AliasOption>} alias tsconfig file data
298298
* @property {Array<string>} modules tsconfig file data
299299
* @property {Set<string>} fileDependencies file dependencies
@@ -309,7 +309,7 @@ const {
309309
* @property {string=} relativePath relative path
310310
* @property {boolean=} ignoreSymlinks true when need to ignore symlinks, otherwise false
311311
* @property {boolean=} fullySpecified true when full specified, otherwise false
312-
* @property {TsconfigFileData | null=} tsconfigFileData tsconfig file data
312+
* @property {TsconfigPathsData | null=} tsconfigPathsData tsconfig file data
313313
* @property {string=} __innerRequest inner request for internal usage
314314
* @property {string=} __innerRequest_request inner request for internal usage
315315
* @property {string=} __innerRequest_relativePath inner relative path for internal usage

lib/TsconfigPathsPlugin.js

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,15 @@
77

88
const { aliasResolveHandler } = require("./AliasUtils");
99
const { modulesResolveHandler } = require("./ModulesUtils");
10+
1011
const TsconfigPathsUtils = require("./TsconfigPathsUtils");
1112

1213
/** @typedef {import("./Resolver")} Resolver */
1314
/** @typedef {import("./Resolver").ResolveStepHook} ResolveStepHook */
1415
/** @typedef {import("./AliasUtils").AliasOption} AliasOption */
1516
/** @typedef {import("./Resolver").ResolveRequest} ResolveRequest */
1617
/** @typedef {import("./Resolver").ResolveContext} ResolveContext */
17-
/** @typedef {import("./Resolver").TsconfigFileData} TsconfigFileData */
18+
/** @typedef {import("./Resolver").TsconfigPathsData} TsconfigPathsData */
1819

1920
const DEFAULT_CONFIG_FILE = "tsconfig.json";
2021

@@ -40,17 +41,17 @@ module.exports = class TsconfigPathsPlugin {
4041
"TsconfigPathsPlugin",
4142
async (request, resolveContext, callback) => {
4243
try {
43-
const tsconfigFileData = await this.loadTsconfigFile(
44+
const tsconfigPathsData = await this.loadTsconfigPathsData(
4445
resolver,
4546
request,
4647
resolveContext,
4748
);
4849

49-
if (!tsconfigFileData) return callback();
50+
if (!tsconfigPathsData) return callback();
5051

5152
aliasResolveHandler(
5253
resolver,
53-
tsconfigFileData.alias,
54+
tsconfigPathsData.alias,
5455
aliasTarget,
5556
request,
5657
resolveContext,
@@ -68,17 +69,17 @@ module.exports = class TsconfigPathsPlugin {
6869
"TsconfigPathsPlugin",
6970
async (request, resolveContext, callback) => {
7071
try {
71-
const tsconfigFileData = await this.loadTsconfigFile(
72+
const tsconfigPathsData = await this.loadTsconfigPathsData(
7273
resolver,
7374
request,
7475
resolveContext,
7576
);
7677

77-
if (!tsconfigFileData) return callback();
78+
if (!tsconfigPathsData) return callback();
7879

7980
modulesResolveHandler(
8081
resolver,
81-
tsconfigFileData.modules,
82+
tsconfigPathsData.modules,
8283
moduleTarget,
8384
request,
8485
resolveContext,
@@ -96,27 +97,29 @@ module.exports = class TsconfigPathsPlugin {
9697
* @param {Resolver} resolver the resolver
9798
* @param {ResolveRequest} request the request
9899
* @param {ResolveContext} resolveContext the resolve context
99-
* @returns {Promise<TsconfigFileData | null>} the pre-processed request
100+
* @returns {Promise<TsconfigPathsData | null>} the pre-processed request
100101
*/
101-
async loadTsconfigFile(resolver, request, resolveContext) {
102-
if (typeof request.tsconfigFileData === "undefined") {
103-
request.tsconfigFileData = await TsconfigPathsUtils.loadTsconfigFile(
104-
resolver.fileSystem,
105-
this.configFile,
106-
);
102+
async loadTsconfigPathsData(resolver, request, resolveContext) {
103+
if (typeof request.tsconfigPathsData === "undefined") {
104+
request.tsconfigPathsData =
105+
await TsconfigPathsUtils.loadTsconfigPathsData(
106+
resolver.fileSystem,
107+
this.configFile,
108+
request.path || undefined,
109+
);
107110
}
108111

109-
const { tsconfigFileData } = request;
112+
const { tsconfigPathsData } = request;
110113

111-
if (!tsconfigFileData) {
114+
if (!tsconfigPathsData) {
112115
return null;
113116
}
114117

115-
for (const fileDependency of tsconfigFileData.fileDependencies) {
118+
for (const fileDependency of tsconfigPathsData.fileDependencies) {
116119
if (resolveContext.fileDependencies) {
117120
resolveContext.fileDependencies.add(fileDependency);
118121
}
119122
}
120-
return tsconfigFileData;
123+
return tsconfigPathsData;
121124
}
122125
};

0 commit comments

Comments
 (0)