UNPKG

reacthtmlpack

Version:

Added the missing piece of treating `index.html` as entry point in webpack bundles.

722 lines (582 loc) 28.8 kB
"use strict"; var _keys = require("babel-runtime/core-js/object/keys"); var _keys2 = _interopRequireDefault(_keys); var _stringify = require("babel-runtime/core-js/json/stringify"); var _stringify2 = _interopRequireDefault(_stringify); var _defineProperty2 = require("babel-runtime/helpers/defineProperty"); var _defineProperty3 = _interopRequireDefault(_defineProperty2); var _extends4 = require("babel-runtime/helpers/extends"); var _extends5 = _interopRequireDefault(_extends4); var _toConsumableArray2 = require("babel-runtime/helpers/toConsumableArray"); var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2); var _promise = require("babel-runtime/core-js/promise"); var _promise2 = _interopRequireDefault(_promise); var _slicedToArray2 = require("babel-runtime/helpers/slicedToArray"); var _slicedToArray3 = _interopRequireDefault(_slicedToArray2); var _regenerator = require("babel-runtime/regenerator"); var _regenerator2 = _interopRequireDefault(_regenerator); var _asyncToGenerator2 = require("babel-runtime/helpers/asyncToGenerator"); var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2); Object.defineProperty(exports, "__esModule", { value: true }); exports.PORT = undefined; exports.srcFileToSrcWithWorkspace = srcFileToSrcWithWorkspace; exports.srcWithWorkspaceAddWatcher = srcWithWorkspaceAddWatcher; exports.srcWithWorkspaceToSource = srcWithWorkspaceToSource; exports.sourceToWebpackMultiCompilerWithHMR = sourceToWebpackMultiCompilerWithHMR; exports.sourceToWebpackMultiCompiler = sourceToWebpackMultiCompiler; exports.runWebpackMultiCompilerToMultiStats = runWebpackMultiCompilerToMultiStats; exports.watchWebpackMultiCompilerWithConnectAppToMultiStats = watchWebpackMultiCompilerWithConnectAppToMultiStats; exports.joinStatsWithArgumentListToFinalBundle = joinStatsWithArgumentListToFinalBundle; exports.finalBundleToOutputSideEffect = finalBundleToOutputSideEffect; var _fs = require("mz/fs"); var _fs2 = _interopRequireDefault(_fs); var _path = require("path"); var _debug = require("debug"); var _debug2 = _interopRequireDefault(_debug); var _chokidar = require("chokidar"); var _chokidar2 = _interopRequireDefault(_chokidar); var _cheerio = require("cheerio"); var _cheerio2 = _interopRequireDefault(_cheerio); var _webpack = require("webpack"); var _webpack2 = _interopRequireDefault(_webpack); var _mkdirp = require("mkdirp"); var _mkdirp2 = _interopRequireDefault(_mkdirp); var _thenify = require("thenify"); var _thenify2 = _interopRequireDefault(_thenify); var _connect = require("connect"); var _connect2 = _interopRequireDefault(_connect); var _serveStatic = require("serve-static"); var _serveStatic2 = _interopRequireDefault(_serveStatic); var _webpackDevMiddleware = require("webpack-dev-middleware"); var _webpackDevMiddleware2 = _interopRequireDefault(_webpackDevMiddleware); var _webpackHotMiddleware = require("webpack-hot-middleware"); var _webpackHotMiddleware2 = _interopRequireDefault(_webpackHotMiddleware); var _transformRelativePath = require("../babel/transformRelativePath"); var _transformRelativePath2 = _interopRequireDefault(_transformRelativePath); var _elementProcessor = require("../html/elementProcessor"); var _createWebpackConfig = require("../webpack/createWebpackConfig"); var _createJoinStats = require("../webpack/createJoinStats"); var _createJoinStats2 = _interopRequireDefault(_createJoinStats); var _thenifyMemoryFS = require("./thenifyMemoryFS"); var _thenifyMemoryFS2 = _interopRequireDefault(_thenifyMemoryFS); var _rx = require("rx"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } // import { // default as serveFaviconMiddleware, // } from "serve-favicon"; // import { // default as serveIndexMiddleware, // } from "serve-index"; var debugCore = (0, _debug2.default)("reacthtmlpack:core"); var mkdirp = (0, _thenify2.default)(_mkdirp2.default); var copy = function () { var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee(srcFS, src, dest) { var encoding; return _regenerator2.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: // Weird bug. Can't accept arguments.length > 3 encoding = "utf8"; debugCore("srcFS.readFile", !!srcFS.readFile); debugCore("args", { src: !!src, dest: !!dest, srcFS: !!srcFS }); _context.t0 = _fs2.default; _context.t1 = dest; _context.next = 7; return srcFS.readFile(src, encoding); case 7: _context.t2 = _context.sent; _context.t3 = encoding; _context.next = 11; return _context.t0.writeFile.call(_context.t0, _context.t1, _context.t2, _context.t3); case 11: case "end": return _context.stop(); } } }, _callee, this); })); return function copy(_x, _x2, _x3) { return ref.apply(this, arguments); }; }(); function srcFileToSrcWithWorkspace(__srcFile__) { return __srcFile__.selectMany(function () { var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee2(srcFile /*: string*/) { var _ref, _ref2, clientWorkspacePath, serverWorkspacePath; return _regenerator2.default.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return _promise2.default.all([(0, _createWebpackConfig.createWebpackWorkspaceDir)((0, _path.dirname)(srcFile), "client"), (0, _createWebpackConfig.createWebpackWorkspaceDir)((0, _path.dirname)(srcFile), "server")]); case 2: _ref = _context2.sent; _ref2 = (0, _slicedToArray3.default)(_ref, 2); clientWorkspacePath = _ref2[0]; serverWorkspacePath = _ref2[1]; return _context2.abrupt("return", { srcFile: srcFile, clientWorkspacePath: clientWorkspacePath, serverWorkspacePath: serverWorkspacePath }); case 7: case "end": return _context2.stop(); } } }, _callee2, this); })); return function selectSrcFileWithWorkspacePath(_x4) { return ref.apply(this, arguments); }; }()); } function srcWithWorkspaceAddWatcher(__srcWithWorkspace__) { return __srcWithWorkspace__.selectMany(function (srcFileWithWorkspacePath /*: Object*/) { return _rx.Observable.create(function (observer) { var emitChange = function emitChange() { return observer.onNext(srcFileWithWorkspacePath); }; emitChange(); var watcher = _chokidar2.default.watch(srcFileWithWorkspacePath.srcFile); watcher.on("change", emitChange); return function () { watcher.close(); }; }); }); } function srcWithWorkspaceToSource(__srcWithWorkspace__) { return __srcWithWorkspace__.selectMany(function () { var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee3(_ref3) { var srcFile = _ref3.srcFile; var clientWorkspacePath = _ref3.clientWorkspacePath; var serverWorkspacePath = _ref3.serverWorkspacePath; var html, $, clientEntryList, serverEntryList, moduleList, moduleExcludeList, _clientEntryList$redu, clientEntry, clientWriteFilePromiseList, _serverEntryList$redu, serverEntry, serverWriteFilePromiseList, moduleWriteFilePromiseList; return _regenerator2.default.wrap(function _callee3$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: debugCore({ srcFile: !!srcFile, clientWorkspacePath: !!clientWorkspacePath, serverWorkspacePath: !!serverWorkspacePath }); _context3.next = 3; return _fs2.default.readFile((0, _path.resolve)(process.cwd(), srcFile), "utf8"); case 3: html = _context3.sent; $ = _cheerio2.default.load(html); clientEntryList = (0, _elementProcessor.extractClientEntryList)($); serverEntryList = (0, _elementProcessor.extractServerEntryList)($); moduleList = (0, _elementProcessor.extractModuleList)($); moduleExcludeList = moduleList.map(function (_ref4) { var moduleName = _ref4.moduleName; return( // FIXME: normalize module resolution from path moduleName.replace((0, _path.extname)(moduleName), "") ); }); debugCore(moduleExcludeList); _clientEntryList$redu = clientEntryList.reduce(function (acc, _ref6) { var moduleName = _ref6.moduleName; var chunkName = _ref6.chunkName; var text = _ref6.text; var clientFilepath = (0, _path.resolve)(clientWorkspacePath, moduleName); var code = (0, _transformRelativePath2.default)(text, moduleExcludeList); return { clientEntry: (0, _extends5.default)({}, acc.clientEntry, (0, _defineProperty3.default)({}, chunkName, [clientFilepath])), clientWriteFilePromiseList: [].concat((0, _toConsumableArray3.default)(acc), [_fs2.default.writeFile(clientFilepath, code, "utf8")]) }; }, { clientEntry: {}, clientWriteFilePromiseList: [] }); clientEntry = _clientEntryList$redu.clientEntry; clientWriteFilePromiseList = _clientEntryList$redu.clientWriteFilePromiseList; _serverEntryList$redu = serverEntryList.reduce(function (acc, _ref7) { var moduleName = _ref7.moduleName; var chunkName = _ref7.chunkName; var text = _ref7.text; var serverFilepath = (0, _path.resolve)(serverWorkspacePath, moduleName); var code = (0, _transformRelativePath2.default)(text, moduleExcludeList); return { serverEntry: (0, _extends5.default)({}, acc.serverEntry, (0, _defineProperty3.default)({}, chunkName, [serverFilepath])), serverWriteFilePromiseList: [].concat((0, _toConsumableArray3.default)(acc), [_fs2.default.writeFile(serverFilepath, code, "utf8")]) }; }, { serverEntry: {}, serverWriteFilePromiseList: [] }); serverEntry = _serverEntryList$redu.serverEntry; serverWriteFilePromiseList = _serverEntryList$redu.serverWriteFilePromiseList; moduleWriteFilePromiseList = moduleList.reduce(function (acc, _ref5) { var moduleName = _ref5.moduleName; var text = _ref5.text; var clientFilepath = (0, _path.resolve)(clientWorkspacePath, moduleName); var serverFilepath = (0, _path.resolve)(serverWorkspacePath, moduleName); var code = (0, _transformRelativePath2.default)(text, moduleExcludeList); return [].concat((0, _toConsumableArray3.default)(acc), [_fs2.default.writeFile(clientFilepath, code, "utf8"), _fs2.default.writeFile(serverFilepath, code, "utf8")]); }, []); _context3.next = 19; return _promise2.default.all([].concat((0, _toConsumableArray3.default)(clientWriteFilePromiseList), (0, _toConsumableArray3.default)(serverWriteFilePromiseList), (0, _toConsumableArray3.default)(moduleWriteFilePromiseList))); case 19: return _context3.abrupt("return", { srcFile: srcFile, html: html, clientEntryList: clientEntryList, serverEntryList: serverEntryList, // customClientConfig: { clientWorkspacePath: clientWorkspacePath, entry: clientEntry, output: { path: (0, _path.resolve)(clientWorkspacePath, "./public") }, plugins: [] }, customServerConfig: { serverWorkspacePath: serverWorkspacePath, entry: serverEntry, output: { libraryTarget: "commonjs2", path: (0, _path.resolve)(serverWorkspacePath, "./public") }, plugins: [] } }); case 20: case "end": return _context3.stop(); } } }, _callee3, this); })); return function selectSource(_x5) { return ref.apply(this, arguments); }; }()); } function distinctClientWebpackConfigInSource(__source__) { return __source__.distinctUntilChanged(function (_ref8) { var customClientConfig = _ref8.customClientConfig; return (0, _stringify2.default)(customClientConfig); }); } function distinctServerWebpackConfigInSource(__source__) { return __source__.distinctUntilChanged(function (_ref9) { var customServerConfig = _ref9.customServerConfig; return (0, _stringify2.default)(customServerConfig); }); } function addWebpackHMRStuffToClientEntry(__source__) { return __source__.map(function (source) { var customClientConfig = source.customClientConfig; var entry = customClientConfig.entry; var extraEntry = require.resolve("webpack-hot-middleware/client"); (0, _keys2.default)(entry).forEach(function (chunkName) { entry[chunkName].unshift(extraEntry); }); customClientConfig.plugins = [].concat((0, _toConsumableArray3.default)(customClientConfig.plugins), [new _webpack2.default.HotModuleReplacementPlugin()]); return source; }); } function sourceToClientWebpackConfig(__source__) { return __source__.map(function (_ref10) { var srcFile = _ref10.srcFile; var customClientConfig = _ref10.customClientConfig; return (0, _createWebpackConfig.createClientWebpackConfig)(customClientConfig); }); } function sourceToServerWebpackConfig(__source__) { return __source__.map(function (_ref11) { var srcFile = _ref11.srcFile; var customServerConfig = _ref11.customServerConfig; return (0, _createWebpackConfig.createServerWebpackConfig)(customServerConfig); }); } function sourceToWebpackMultiCompilerWithHMR(__source__) { var __client__ = __source__.let(distinctClientWebpackConfigInSource).let(addWebpackHMRStuffToClientEntry).let(sourceToClientWebpackConfig); var __server__ = __source__.let(distinctServerWebpackConfigInSource).let(sourceToServerWebpackConfig); return _rx.Observable.combineLatest(__client__, __server__, function (clientWebpackConfig, serverWebpackConfig) { return [clientWebpackConfig, serverWebpackConfig]; }).scan(function (webpackMultiCompiler, webpackConfigList) { return (0, _webpack2.default)(webpackConfigList); }, null); } function sourceToWebpackMultiCompiler(__source__) { var __client__ = __source__.let(distinctClientWebpackConfigInSource).let(sourceToClientWebpackConfig); var __server__ = __source__.let(distinctServerWebpackConfigInSource).let(sourceToServerWebpackConfig); return _rx.Observable.combineLatest(__client__, __server__, function (clientWebpackConfig, serverWebpackConfig) { return [clientWebpackConfig, serverWebpackConfig]; }).scan(function (webpackMultiCompiler, webpackConfigList) { return (0, _webpack2.default)(webpackConfigList); }, null); } function runWebpackMultiCompilerToMultiStats(__webpackMultiCompiler__) { return __webpackMultiCompiler__.selectMany(function () { var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee4(webpackMultiCompiler) { var _webpackMultiCompiler, clientWebpackConfig, serverWebpackConfig, webpackMultiStats, _webpackMultiStats$st, client, server; return _regenerator2.default.wrap(function _callee4$(_context4) { while (1) { switch (_context4.prev = _context4.next) { case 0: _webpackMultiCompiler = (0, _slicedToArray3.default)(webpackMultiCompiler.compilers, 2); clientWebpackConfig = _webpackMultiCompiler[0].options; serverWebpackConfig = _webpackMultiCompiler[1].options; debugCore("clientWebpackConfig", !!clientWebpackConfig); debugCore("serverWebpackConfig", !!serverWebpackConfig); _context4.next = 7; return (0, _thenify2.default)(webpackMultiCompiler.run.bind(webpackMultiCompiler))(); case 7: webpackMultiStats = _context4.sent; _webpackMultiStats$st = (0, _slicedToArray3.default)(webpackMultiStats.stats, 2); client = _webpackMultiStats$st[0]; server = _webpackMultiStats$st[1]; debugCore("webpack client errors", client.toJson().errors); debugCore("webpack server errors", server.toJson().errors); return _context4.abrupt("return", { clientSrcFS: _fs2.default, clientWorkspacePath: clientWebpackConfig.clientWorkspacePath, clientOutputPublicPath: clientWebpackConfig.output.publicPath, clientOutputPath: clientWebpackConfig.output.path, serverWorkspacePath: serverWebpackConfig.serverWorkspacePath, client: (0, _createJoinStats2.default)(client), server: (0, _createJoinStats2.default)(server) }); case 14: case "end": return _context4.stop(); } } }, _callee4, this); })); return function selectWebpackMultiCompiler(_x6) { return ref.apply(this, arguments); }; }()); } var PORT = exports.PORT = 8080; function watchWebpackMultiCompilerWithConnectAppToMultiStats(__webpackMultiCompiler__) { return __webpackMultiCompiler__.selectMany(function (_ref12) { var _ref13 = (0, _slicedToArray3.default)(_ref12, 2); var webpackMultiCompiler = _ref13[0]; var publicDir = _ref13[1]; var _webpackMultiCompiler2 = (0, _slicedToArray3.default)(webpackMultiCompiler.compilers, 1); var webpackClientCompiler = _webpackMultiCompiler2[0]; var _webpackMultiCompiler3 = (0, _slicedToArray3.default)(webpackMultiCompiler.compilers, 2); var clientWebpackConfig = _webpackMultiCompiler3[0].options; var serverWebpackConfig = _webpackMultiCompiler3[1].options; debugCore("clientWebpackConfig", !!clientWebpackConfig); debugCore("serverWebpackConfig", !!serverWebpackConfig); return _rx.Observable.create(function (observer) { // Because we only pass in webpackClientCompiler to webpackDevMiddleware // , we have to watch ourselves var watcher = webpackMultiCompiler.watch({ aggregateTimeout: 200 }, function (error) { if (error) { observer.onNext(error); } }); var app = (0, _connect2.default)(); // We only pass in webpackClientCompiler to middlewares // so that the publicPath will be correct app.use((0, _webpackDevMiddleware2.default)(webpackClientCompiler, { publicPath: "/" + clientWebpackConfig.output.publicPath, noInfo: true, quiet: true })); app.use((0, _webpackHotMiddleware2.default)(webpackClientCompiler)); // app.use((0, _serveStatic2.default)(publicDir)); // webpackMultiCompiler.plugin("done", function (webpackMultiStats) { var _webpackMultiStats$st2 = (0, _slicedToArray3.default)(webpackMultiStats.stats, 2); var client = _webpackMultiStats$st2[0]; var server = _webpackMultiStats$st2[1]; debugCore("webpack client errors", client.toJson().errors); debugCore("webpack server errors", server.toJson().errors); var clientSrcFS = (0, _thenifyMemoryFS2.default)(webpackClientCompiler.outputFileSystem); observer.onNext({ clientSrcFS: clientSrcFS, clientWorkspacePath: clientWebpackConfig.clientWorkspacePath, clientOutputPublicPath: clientWebpackConfig.output.publicPath, clientOutputPath: clientWebpackConfig.output.path, serverWorkspacePath: serverWebpackConfig.serverWorkspacePath, client: (0, _createJoinStats2.default)(client), server: (0, _createJoinStats2.default)(server) }); }); var server = app.listen(PORT); return function () { debugCore("Close connect server!!"); watcher.close(); server.close(); }; }); }).shareReplay(); } function joinStatsWithArgumentListToFinalBundle(__joinStatsWithArgList__) { return __joinStatsWithArgList__.selectMany(function () { var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee6(_ref14) { var _ref15 = (0, _slicedToArray3.default)(_ref14, 4); var webpackJoinStatsMap = _ref15[0]; var outDir = _ref15[1]; var prerenderPropsList = _ref15[2]; var source = _ref15[3]; var srcFile, html, serverEntryList, srcExtname, htmlFileList; return _regenerator2.default.wrap(function _callee6$(_context6) { while (1) { switch (_context6.prev = _context6.next) { case 0: srcFile = source.srcFile; html = source.html; serverEntryList = source.serverEntryList; srcExtname = (0, _path.extname)(srcFile); _context6.next = 6; return _promise2.default.all(prerenderPropsList.map(function () { var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee5(prerenderProps) { var $, injectPropsByProvideName, destFile; return _regenerator2.default.wrap(function _callee5$(_context5) { while (1) { switch (_context5.prev = _context5.next) { case 0: $ = _cheerio2.default.load(html); _context5.next = 3; return (0, _elementProcessor.renderServerEntryList)(prerenderProps, serverEntryList, webpackJoinStatsMap.server); case 3: injectPropsByProvideName = _context5.sent; debugCore("combineLatestToBundle", { clientSrcFS: !!webpackJoinStatsMap.clientSrcFS, prerenderProps: !!prerenderProps, outDir: !!outDir }); (0, _elementProcessor.alterInjectEntryList)($, injectPropsByProvideName); (0, _elementProcessor.alterServerEntryList)($); // (0, _elementProcessor.alterClientEntryList)($, webpackJoinStatsMap.client); // (0, _elementProcessor.alterModuleEntryList)($); destFile = prerenderProps.location; if (destFile.match(/\/$/)) { destFile = destFile + "index"; } destFile = "" + destFile + srcExtname; return _context5.abrupt("return", { destFile: destFile, html: $.html() }); case 13: case "end": return _context5.stop(); } } }, _callee5, this); })); return function prerenderPropsToHTMLFile(_x8) { return ref.apply(this, arguments); }; }())); case 6: htmlFileList = _context6.sent; return _context6.abrupt("return", { htmlFileList: htmlFileList, outDir: outDir, clientSrcFS: webpackJoinStatsMap.clientSrcFS, clientWorkspacePath: webpackJoinStatsMap.clientWorkspacePath, clientOutputPublicPath: webpackJoinStatsMap.clientOutputPublicPath, clientOutputPath: webpackJoinStatsMap.clientOutputPath, serverWorkspacePath: webpackJoinStatsMap.serverWorkspacePath }); case 8: case "end": return _context6.stop(); } } }, _callee6, this); })); return function selectArgsToFinalBundle(_x7) { return ref.apply(this, arguments); }; }()); } function finalBundleToOutputSideEffect(__finalBundle__) { return __finalBundle__.selectMany(function () { var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee8(options) { var htmlFileList, outDir, clientSrcFS, clientOutputPublicPath, clientOutputPath, outDirWithPublicPath, _ref16, _ref17, rawClientAssetList, clientAssetList, firstAsset, isFile; return _regenerator2.default.wrap(function _callee8$(_context8) { while (1) { switch (_context8.prev = _context8.next) { case 0: htmlFileList = options.htmlFileList; outDir = options.outDir; clientSrcFS = options.clientSrcFS; clientOutputPublicPath = options.clientOutputPublicPath; clientOutputPath = options.clientOutputPath; debugCore("finalBundleToOutputSideEffect", htmlFileList.length); outDirWithPublicPath = (0, _path.resolve)(outDir, clientOutputPublicPath); _context8.next = 9; return _promise2.default.all([clientSrcFS.readdir(clientOutputPath), mkdirp(outDirWithPublicPath)]); case 9: _ref16 = _context8.sent; _ref17 = (0, _slicedToArray3.default)(_ref16, 1); rawClientAssetList = _ref17[0]; clientAssetList = rawClientAssetList.filter(function (it) { return !it.match(/hot-update/); }); firstAsset = (0, _path.resolve)(clientOutputPath, clientAssetList[0]); _context8.next = 16; return clientSrcFS.stat(firstAsset); case 16: isFile = _context8.sent.isFile(); debugCore("clientAssetList", !!clientAssetList); debugCore("exists?", isFile); _context8.next = 21; return _promise2.default.all([].concat((0, _toConsumableArray3.default)(clientAssetList.map(function (name) { return copy(clientSrcFS, (0, _path.resolve)(clientOutputPath, name), (0, _path.resolve)(outDirWithPublicPath, name)); })), (0, _toConsumableArray3.default)(htmlFileList.map(function () { var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee7(_ref18) { var destFile = _ref18.destFile; var html = _ref18.html; var filename, dirname; return _regenerator2.default.wrap(function _callee7$(_context7) { while (1) { switch (_context7.prev = _context7.next) { case 0: filename = (0, _path.resolve)(outDir, "." + destFile); dirname = (0, _path.dirname)(filename); _context7.next = 4; return mkdirp(dirname); case 4: _context7.next = 6; return _fs2.default.writeFile(filename, html, "utf8"); case 6: case "end": return _context7.stop(); } } }, _callee7, this); })); return function htmlFileWithMkdirp(_x10) { return ref.apply(this, arguments); }; }())))); case 21: return _context8.abrupt("return", { clientWorkspacePath: options.clientWorkspacePath, serverWorkspacePath: options.serverWorkspacePath }); case 22: case "end": return _context8.stop(); } } }, _callee8, this); })); return function selectOptionsIntoBundle(_x9) { return ref.apply(this, arguments); }; }()); }