2020-08-25 23:57:08 +00:00
|
|
|
"use strict";
|
|
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
2022-11-10 10:43:16 +00:00
|
|
|
exports.configLoader = exports.loadConfig = void 0;
|
|
|
|
var TsConfigLoader2 = require("./tsconfig-loader");
|
2020-08-25 23:57:08 +00:00
|
|
|
var path = require("path");
|
|
|
|
var options_1 = require("./options");
|
|
|
|
function loadConfig(cwd) {
|
|
|
|
if (cwd === void 0) { cwd = options_1.options.cwd; }
|
|
|
|
return configLoader({ cwd: cwd });
|
|
|
|
}
|
|
|
|
exports.loadConfig = loadConfig;
|
|
|
|
function configLoader(_a) {
|
2022-11-10 10:43:16 +00:00
|
|
|
var cwd = _a.cwd, explicitParams = _a.explicitParams, _b = _a.tsConfigLoader, tsConfigLoader = _b === void 0 ? TsConfigLoader2.tsConfigLoader : _b;
|
2020-08-25 23:57:08 +00:00
|
|
|
if (explicitParams) {
|
|
|
|
// tslint:disable-next-line:no-shadowed-variable
|
|
|
|
var absoluteBaseUrl_1 = path.isAbsolute(explicitParams.baseUrl)
|
|
|
|
? explicitParams.baseUrl
|
|
|
|
: path.join(cwd, explicitParams.baseUrl);
|
|
|
|
return {
|
|
|
|
resultType: "success",
|
|
|
|
configFileAbsolutePath: "",
|
|
|
|
baseUrl: explicitParams.baseUrl,
|
|
|
|
absoluteBaseUrl: absoluteBaseUrl_1,
|
|
|
|
paths: explicitParams.paths,
|
|
|
|
mainFields: explicitParams.mainFields,
|
2022-11-10 10:43:16 +00:00
|
|
|
addMatchAll: explicitParams.addMatchAll,
|
2020-08-25 23:57:08 +00:00
|
|
|
};
|
|
|
|
}
|
|
|
|
// Load tsconfig and create path matching function
|
|
|
|
var loadResult = tsConfigLoader({
|
|
|
|
cwd: cwd,
|
2022-11-10 10:43:16 +00:00
|
|
|
getEnv: function (key) { return process.env[key]; },
|
2020-08-25 23:57:08 +00:00
|
|
|
});
|
|
|
|
if (!loadResult.tsConfigPath) {
|
|
|
|
return {
|
|
|
|
resultType: "failed",
|
2022-11-10 10:43:16 +00:00
|
|
|
message: "Couldn't find tsconfig.json",
|
2020-08-25 23:57:08 +00:00
|
|
|
};
|
|
|
|
}
|
|
|
|
if (!loadResult.baseUrl) {
|
|
|
|
return {
|
|
|
|
resultType: "failed",
|
2022-11-10 10:43:16 +00:00
|
|
|
message: "Missing baseUrl in compilerOptions",
|
2020-08-25 23:57:08 +00:00
|
|
|
};
|
|
|
|
}
|
|
|
|
var tsConfigDir = path.dirname(loadResult.tsConfigPath);
|
|
|
|
var absoluteBaseUrl = path.join(tsConfigDir, loadResult.baseUrl);
|
|
|
|
return {
|
|
|
|
resultType: "success",
|
|
|
|
configFileAbsolutePath: loadResult.tsConfigPath,
|
|
|
|
baseUrl: loadResult.baseUrl,
|
|
|
|
absoluteBaseUrl: absoluteBaseUrl,
|
2022-11-10 10:43:16 +00:00
|
|
|
paths: loadResult.paths || {},
|
2020-08-25 23:57:08 +00:00
|
|
|
};
|
|
|
|
}
|
|
|
|
exports.configLoader = configLoader;
|
2022-11-10 10:43:16 +00:00
|
|
|
//# sourceMappingURL=config-loader.js.map
|