mirror of
https://github.com/idanoo/GoScrobble.git
synced 2024-11-29 03:45:15 +00:00
56 lines
2.0 KiB
JavaScript
56 lines
2.0 KiB
JavaScript
|
"use strict";
|
||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||
|
var TsConfigLoader = require("./tsconfig-loader");
|
||
|
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) {
|
||
|
var cwd = _a.cwd, explicitParams = _a.explicitParams, _b = _a.tsConfigLoader, tsConfigLoader = _b === void 0 ? TsConfigLoader.tsConfigLoader : _b;
|
||
|
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,
|
||
|
addMatchAll: explicitParams.addMatchAll,
|
||
|
};
|
||
|
}
|
||
|
// Load tsconfig and create path matching function
|
||
|
var loadResult = tsConfigLoader({
|
||
|
cwd: cwd,
|
||
|
getEnv: function (key) { return process.env[key]; },
|
||
|
});
|
||
|
if (!loadResult.tsConfigPath) {
|
||
|
return {
|
||
|
resultType: "failed",
|
||
|
message: "Couldn't find tsconfig.json",
|
||
|
};
|
||
|
}
|
||
|
if (!loadResult.baseUrl) {
|
||
|
return {
|
||
|
resultType: "failed",
|
||
|
message: "Missing baseUrl in compilerOptions",
|
||
|
};
|
||
|
}
|
||
|
var tsConfigDir = path.dirname(loadResult.tsConfigPath);
|
||
|
var absoluteBaseUrl = path.join(tsConfigDir, loadResult.baseUrl);
|
||
|
return {
|
||
|
resultType: "success",
|
||
|
configFileAbsolutePath: loadResult.tsConfigPath,
|
||
|
baseUrl: loadResult.baseUrl,
|
||
|
absoluteBaseUrl: absoluteBaseUrl,
|
||
|
paths: loadResult.paths || {},
|
||
|
};
|
||
|
}
|
||
|
exports.configLoader = configLoader;
|