UNPKG

kkt

Version:

Create React apps with no build configuration, Cli tool for creating react apps.

68 lines (67 loc) 3.4 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"]; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = docs; var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _path = _interopRequireDefault(require("path")); var _fsExtra = _interopRequireDefault(require("fs-extra")); var _express = _interopRequireDefault(require("express")); var _staticDoc = require("../plugins/staticDoc"); var _WebpackDevServerUtils = require("react-dev-utils/WebpackDevServerUtils"); var _excluded = ["route", "docRoot", "dirPath"]; var app = (0, _express["default"])(); var HOST = process.env.DOC_HOST || '0.0.0.0'; var protocol = process.env.DOC_HTTPS === 'true' ? 'https' : 'http'; function docs(_x) { return _docs.apply(this, arguments); } function _docs() { _docs = (0, _asyncToGenerator2["default"])( /*#__PURE__*/(0, _regeneratorRuntime2["default"])().mark(function _callee(argv) { var _getDocsData, route, docRoot, dirPath, other, DEFAULT_PORT, port, message; return (0, _regeneratorRuntime2["default"])().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: _context.prev = 0; _getDocsData = (0, _staticDoc.getDocsData)(argv.path, '/'), route = _getDocsData.route, docRoot = _getDocsData.docRoot, dirPath = _getDocsData.dirPath, other = (0, _objectWithoutProperties2["default"])(_getDocsData, _excluded); if (route && docRoot) { app.use(route, _express["default"]["static"](docRoot), function (req, res, next) { var content = _fsExtra["default"].readFileSync(_path["default"].resolve(docRoot, './index.html')); res.send(content.toString()); next(); }); } DEFAULT_PORT = process.env.DOC_PORT && parseInt(process.env.DOC_PORT, 10) || argv.port || 3002; _context.next = 6; return (0, _WebpackDevServerUtils.choosePort)(HOST, DEFAULT_PORT); case 6: port = _context.sent; app.listen(port, function () { var urls = (0, _WebpackDevServerUtils.prepareUrls)(protocol, HOST, port, // @ts-ignore route); console.log("You can now view \x1B[37;1m".concat(dirPath, "\x1B[0m in the browser.")); console.log(" Local: ".concat(urls.lanUrlForTerminal)); console.log(" On Your Network: ".concat(urls.localUrlForTerminal)); }); _context.next = 16; break; case 10: _context.prev = 10; _context.t0 = _context["catch"](0); message = _context.t0 && _context.t0 instanceof Error && _context.t0.message ? _context.t0.message : ''; console.log('\x1b[31;1m KKT:DOC:ERROR: \x1b[0m\n', _context.t0); new Error("KKT:BUILD:ERROR: \n ".concat(message)); process.exit(1); case 16: case "end": return _context.stop(); } }, _callee, null, [[0, 10]]); })); return _docs.apply(this, arguments); } module.exports = exports.default;