38 lines
1.6 KiB
JavaScript
38 lines
1.6 KiB
JavaScript
"use strict";
|
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
var t = {};
|
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
t[p] = s[p];
|
|
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
t[p[i]] = s[p[i]];
|
|
}
|
|
return t;
|
|
};
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
/* eslint-disable @typescript-eslint/ban-ts-comment */
|
|
/* eslint-disable @typescript-eslint/no-unsafe-call */
|
|
const config_1 = require("../../config");
|
|
const utils_1 = require("../../utils");
|
|
const webpack_1 = __importDefault(require("webpack"));
|
|
const webpack_dev_server_1 = __importDefault(require("webpack-dev-server"));
|
|
function start({ configPath }) {
|
|
var _a;
|
|
const appConfig = ((_a = (0, utils_1.readConfigFile)(configPath)) !== null && _a !== void 0 ? _a : {});
|
|
const _b = (0, config_1.createWebpackConfig)(appConfig), { devServer } = _b, config = __rest(_b, ["devServer"]);
|
|
const compiler = (0, webpack_1.default)(config);
|
|
const developmentServer = new webpack_dev_server_1.default(devServer, compiler);
|
|
developmentServer.startCallback(() => {
|
|
process.stdin.on('end', () => {
|
|
// @ts-ignore
|
|
developmentServer.close();
|
|
process.exit();
|
|
});
|
|
});
|
|
}
|
|
exports.default = start;
|