tsconfig-paths-webpack-plugin
Version:
Load modules according to tsconfig paths in webpack.
68 lines • 2.23 kB
JavaScript
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getOptions = void 0;
var validOptions = [
"configFile",
"extensions",
"baseUrl",
"silent",
"logLevel",
"logInfoToStdOut",
"context",
"mainFields",
"references",
];
/**
* Takes raw options from the webpack config,
* validates them and adds defaults for missing options
*/
function getOptions(rawOptions) {
validateOptions(rawOptions);
var options = makeOptions(rawOptions);
return options;
}
exports.getOptions = getOptions;
/**
* Validate the supplied loader options.
* At present this validates the option names only; in future we may look at validating the values too
*
* @param rawOptions
*/
function validateOptions(rawOptions) {
var loaderOptionKeys = Object.keys(rawOptions);
for (var i = 0; i < loaderOptionKeys.length; i++) {
var option = loaderOptionKeys[i];
var isUnexpectedOption = validOptions.indexOf(option) === -1;
if (isUnexpectedOption) {
throw new Error("tsconfig-paths-webpack-plugin was supplied with an unexpected loader option: " + option + "\nPlease take a look at the options you are supplying; the following are valid options:\n" + validOptions.join(" / ") + "\n");
}
}
}
function makeOptions(rawOptions) {
var options = __assign(__assign({}, {
configFile: "tsconfig.json",
extensions: [".ts", ".tsx"],
baseUrl: undefined,
silent: false,
logLevel: "WARN",
logInfoToStdOut: false,
context: undefined,
colors: true,
mainFields: ["main"],
references: undefined,
}), rawOptions);
var options2 = __assign(__assign({}, options), { logLevel: options.logLevel.toUpperCase() });
return options2;
}
//# sourceMappingURL=options.js.map
;