UNPKG

@platform/react.ssr

Version:

An SSR (server-side-render) system for react apps bundled with ParcelJS and hosted on S3.

75 lines (74 loc) 3.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var bundler_1 = require("../bundler"); var config_1 = require("../config"); var common_1 = require("./common"); function run(args) { if (args === void 0) { args = {}; } return tslib_1.__awaiter(this, void 0, void 0, function () { var silent, config, bundlesDir, promptForVersion, version, _a, _b, _c, _d, _e, endpoint, accessKey, secret, bucket, s3, bucketKey, bundleDir; var _this = this; return tslib_1.__generator(this, function (_f) { switch (_f.label) { case 0: silent = args.silent; return [4, config_1.Config.create()]; case 1: config = _f.sent(); bundlesDir = config.builder.bundles; promptForVersion = function () { return tslib_1.__awaiter(_this, void 0, void 0, function () { var paths, versions, items, res; return tslib_1.__generator(this, function (_a) { switch (_a.label) { case 0: return [4, bundler_1.bundler.dir(bundlesDir).semver()]; case 1: paths = _a.sent(); versions = paths.map(function (path) { return common_1.fs.basename(path); }).reverse(); items = versions.concat(['---']); return [4, common_1.cli.prompt.list({ message: 'bundle version', items: items })]; case 2: res = _a.sent(); return [2, res]; } }); }); }; if (!args.prompt) return [3, 3]; return [4, promptForVersion()]; case 2: _a = _f.sent(); return [3, 6]; case 3: _b = args.version; if (_b) return [3, 5]; _d = (_c = common_1.fs).basename; return [4, bundler_1.bundler.dir(bundlesDir).latest()]; case 4: _b = _d.apply(_c, [_f.sent()]); _f.label = 5; case 5: _a = _b; _f.label = 6; case 6: version = _a; _e = config.s3, endpoint = _e.endpoint, accessKey = _e.accessKey, secret = _e.secret, bucket = _e.bucket; s3 = { endpoint: endpoint, accessKey: accessKey, secret: secret }; bucketKey = common_1.fs.join(config.s3.path.base, config.s3.path.bundles, version); bundleDir = common_1.fs.resolve(common_1.fs.join(bundlesDir, version)); return [4, bundler_1.bundler.push(s3).bundle({ bundleDir: bundleDir, bucket: bucket, bucketKey: bucketKey, silent: silent, })]; case 7: _f.sent(); if (!args.silent) { common_1.log.info(); } return [2, { version: version, bundleDir: bundleDir }]; } }); }); } exports.run = run;