polymerx-cli
Version:
Unlock the power of Polymer 3, Web Components and modern web tools.
46 lines (31 loc) • 1.47 kB
JavaScript
;
exports.__esModule = true;
exports.default = _default;
var _path = _interopRequireDefault(require("path"));
var _fs = _interopRequireDefault(require("fs"));
var _pify = _interopRequireDefault(require("pify"));
var _WebpackConfigHelpers = _interopRequireDefault(require("./helpers/WebpackConfigHelpers"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
const fs = (0, _pify.default)(_fs.default);
async function _default(env, config) {
const transformerPath = _path.default.resolve(env.cwd, env.config);
try {
await fs.stat(transformerPath);
} catch (error) {
if (env.config) {
throw new Error(`polymerx-cli config could not be loaded!\nFile ${env.config} not found.`);
}
return;
}
require('@babel/register')({
presets: [require.resolve('@babel/preset-env')]
});
const m = require(transformerPath);
const transformer = m && m.default || m;
try {
await transformer(config, _extends({}, env), new _WebpackConfigHelpers.default(env.cwd));
} catch (error) {
throw new Error(`Error at ${transformerPath}: \n` + error);
}
}