UNPKG

nwb

Version:

A toolkit for React, Preact & Inferno apps, React libraries and other npm modules for the web, with no configuration (until you need it)

53 lines (37 loc) 1.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = serve; var _config = require("../config"); var _constants = require("../constants"); var _errors = require("../errors"); var _serveInfernoApp = _interopRequireDefault(require("./serve-inferno-app")); var _servePreactApp = _interopRequireDefault(require("./serve-preact-app")); var _serveReactApp = _interopRequireDefault(require("./serve-react-app")); var _serveReactDemo = _interopRequireDefault(require("./serve-react-demo")); var _serveWebApp = _interopRequireDefault(require("./serve-web-app")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const SERVE_COMMANDS = { [_constants.INFERNO_APP]: _serveInfernoApp.default, [_constants.PREACT_APP]: _servePreactApp.default, [_constants.REACT_APP]: _serveReactApp.default, [_constants.REACT_COMPONENT]: _serveReactDemo.default, [_constants.WEB_APP]: _serveWebApp.default }; /** * Generic serve command, invokes the appropriate project type-specific command. */ function serve(args, cb) { let projectType; try { projectType = (0, _config.getProjectType)(args); } catch (e) { return cb(e); } if (!SERVE_COMMANDS[projectType]) { return cb(new _errors.UserError(`Unable to serve anything for a ${projectType} project.`)); } SERVE_COMMANDS[projectType](args, cb); } module.exports = exports.default;