@nguniversal/express-engine
Version:
Express Engine for running Server Angular Apps
79 lines • 9.05 kB
JavaScript
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === "function" && define.amd) {
define("@nguniversal/express-engine/schematics/install/index", ["require", "exports", "@angular-devkit/core", "@angular-devkit/schematics", "@angular-devkit/schematics/tasks", "@nguniversal/common/schematics/add/index", "@nguniversal/common/schematics/utils/index", "@schematics/angular/utility/dependencies"], factory);
}
})(function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
/**
* @license
* Copyright Google LLC All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.io/license
*/
const core_1 = require("@angular-devkit/core");
const schematics_1 = require("@angular-devkit/schematics");
const tasks_1 = require("@angular-devkit/schematics/tasks");
const add_1 = require("@nguniversal/common/schematics/add/index");
const utils_1 = require("@nguniversal/common/schematics/utils/index");
const dependencies_1 = require("@schematics/angular/utility/dependencies");
function addDependencies(options) {
return (host, context) => {
if (!options.skipInstall) {
context.addTask(new tasks_1.NodePackageInstallTask());
}
dependencies_1.addPackageJsonDependency(host, {
type: dependencies_1.NodeDependencyType.Default,
name: '@nguniversal/express-engine',
version: '^11.0.0-next.1',
});
dependencies_1.addPackageJsonDependency(host, {
type: dependencies_1.NodeDependencyType.Default,
name: 'express',
version: '^4.15.2',
});
dependencies_1.addPackageJsonDependency(host, {
type: dependencies_1.NodeDependencyType.Dev,
name: '@types/express',
version: '^4.17.0',
});
return host;
};
}
function addServerFile(options) {
return (host) => __awaiter(this, void 0, void 0, function* () {
const clientProject = yield utils_1.getProject(host, options.clientProject);
const browserDistDirectory = yield utils_1.getOutputPath(host, options.clientProject, 'build');
return schematics_1.mergeWith(schematics_1.apply(schematics_1.url('./files'), [
schematics_1.template(Object.assign(Object.assign(Object.assign({}, core_1.strings), options), { stripTsExtension: utils_1.stripTsExtension,
browserDistDirectory })),
schematics_1.move(clientProject.root)
]));
});
}
function default_1(options) {
return () => {
return schematics_1.chain([
add_1.addUniversalCommonRule(options),
addServerFile(options),
addDependencies(options),
]);
};
}
exports.default = default_1;
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2V4cHJlc3MtZW5naW5lL3NjaGVtYXRpY3MvaW5zdGFsbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUFBOzs7Ozs7T0FNRztJQUNILCtDQUErQztJQUMvQywyREFVb0M7SUFDcEMsNERBQTBFO0lBQzFFLGtFQUE0RTtJQUM1RSxzRUFJOEM7SUFDOUMsMkVBR2tEO0lBR2xELFNBQVMsZUFBZSxDQUFDLE9BQXlCO1FBQ2hELE9BQU8sQ0FBQyxJQUFVLEVBQUUsT0FBeUIsRUFBRSxFQUFFO1lBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFO2dCQUN4QixPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksOEJBQXNCLEVBQUUsQ0FBQyxDQUFDO2FBQy9DO1lBQ0QsdUNBQXdCLENBQUMsSUFBSSxFQUFFO2dCQUM3QixJQUFJLEVBQUUsaUNBQWtCLENBQUMsT0FBTztnQkFDaEMsSUFBSSxFQUFFLDZCQUE2QjtnQkFDbkMsT0FBTyxFQUFFLG9CQUFvQjthQUM5QixDQUFDLENBQUM7WUFDSCx1Q0FBd0IsQ0FBQyxJQUFJLEVBQUU7Z0JBQzdCLElBQUksRUFBRSxpQ0FBa0IsQ0FBQyxPQUFPO2dCQUNoQyxJQUFJLEVBQUUsU0FBUztnQkFDZixPQUFPLEVBQUUsaUJBQWlCO2FBQzNCLENBQUMsQ0FBQztZQUNILHVDQUF3QixDQUFDLElBQUksRUFBRTtnQkFDN0IsSUFBSSxFQUFFLGlDQUFrQixDQUFDLEdBQUc7Z0JBQzVCLElBQUksRUFBRSxnQkFBZ0I7Z0JBQ3RCLE9BQU8sRUFBRSx1QkFBdUI7YUFDakMsQ0FBQyxDQUFDO1lBRUgsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQsU0FBUyxhQUFhLENBQUMsT0FBeUI7UUFDOUMsT0FBTyxDQUFNLElBQUksRUFBQyxFQUFFO1lBQ2xCLE1BQU0sYUFBYSxHQUFHLE1BQU0sa0JBQVUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3BFLE1BQU0sb0JBQW9CLEdBQUcsTUFBTSxxQkFBYSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBRXZGLE9BQU8sc0JBQVMsQ0FDWixrQkFBSyxDQUFDLGdCQUFHLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ3RCLHFCQUFRLCtDQUNILGNBQU8sR0FDUCxPQUFPLEtBQ1YsZ0JBQWdCLEVBQWhCLHdCQUFnQjtvQkFDaEIsb0JBQW9CLElBQ3BCO2dCQUNGLGlCQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQzthQUN6QixDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQSxDQUFDO0lBQ0osQ0FBQztJQUVELG1CQUF5QixPQUF5QjtRQUNoRCxPQUFPLEdBQUcsRUFBRTtZQUNWLE9BQU8sa0JBQUssQ0FBQztnQkFDWCw0QkFBc0IsQ0FBQyxPQUFPLENBQUM7Z0JBQy9CLGFBQWEsQ0FBQyxPQUFPLENBQUM7Z0JBQ3RCLGVBQWUsQ0FBQyxPQUFPLENBQUM7YUFDekIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQVJELDRCQVFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5pbXBvcnQgeyBzdHJpbmdzIH0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2NvcmUnO1xuaW1wb3J0IHtcbiAgUnVsZSxcbiAgU2NoZW1hdGljQ29udGV4dCxcbiAgVHJlZSxcbiAgYXBwbHksXG4gIGNoYWluLFxuICBtZXJnZVdpdGgsXG4gIG1vdmUsXG4gIHRlbXBsYXRlLFxuICB1cmwsXG59IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9zY2hlbWF0aWNzJztcbmltcG9ydCB7IE5vZGVQYWNrYWdlSW5zdGFsbFRhc2sgfSBmcm9tICdAYW5ndWxhci1kZXZraXQvc2NoZW1hdGljcy90YXNrcyc7XG5pbXBvcnQgeyBhZGRVbml2ZXJzYWxDb21tb25SdWxlIH0gZnJvbSAnQG5ndW5pdmVyc2FsL2NvbW1vbi9zY2hlbWF0aWNzL2FkZCc7XG5pbXBvcnQge1xuICBnZXRPdXRwdXRQYXRoLFxuICBnZXRQcm9qZWN0LFxuICBzdHJpcFRzRXh0ZW5zaW9uLFxufSBmcm9tICdAbmd1bml2ZXJzYWwvY29tbW9uL3NjaGVtYXRpY3MvdXRpbHMnO1xuaW1wb3J0IHtcbiAgTm9kZURlcGVuZGVuY3lUeXBlLFxuICBhZGRQYWNrYWdlSnNvbkRlcGVuZGVuY3ksXG59IGZyb20gJ0BzY2hlbWF0aWNzL2FuZ3VsYXIvdXRpbGl0eS9kZXBlbmRlbmNpZXMnO1xuaW1wb3J0IHsgU2NoZW1hIGFzIFVuaXZlcnNhbE9wdGlvbnMgfSBmcm9tICcuL3NjaGVtYSc7XG5cbmZ1bmN0aW9uIGFkZERlcGVuZGVuY2llcyhvcHRpb25zOiBVbml2ZXJzYWxPcHRpb25zKTogUnVsZSB7XG4gIHJldHVybiAoaG9zdDogVHJlZSwgY29udGV4dDogU2NoZW1hdGljQ29udGV4dCkgPT4ge1xuICAgIGlmICghb3B0aW9ucy5za2lwSW5zdGFsbCkge1xuICAgICAgY29udGV4dC5hZGRUYXNrKG5ldyBOb2RlUGFja2FnZUluc3RhbGxUYXNrKCkpO1xuICAgIH1cbiAgICBhZGRQYWNrYWdlSnNvbkRlcGVuZGVuY3koaG9zdCwge1xuICAgICAgdHlwZTogTm9kZURlcGVuZGVuY3lUeXBlLkRlZmF1bHQsXG4gICAgICBuYW1lOiAnQG5ndW5pdmVyc2FsL2V4cHJlc3MtZW5naW5lJyxcbiAgICAgIHZlcnNpb246ICdeMC4wLjAtUExBQ0VIT0xERVInLFxuICAgIH0pO1xuICAgIGFkZFBhY2thZ2VKc29uRGVwZW5kZW5jeShob3N0LCB7XG4gICAgICB0eXBlOiBOb2RlRGVwZW5kZW5jeVR5cGUuRGVmYXVsdCxcbiAgICAgIG5hbWU6ICdleHByZXNzJyxcbiAgICAgIHZlcnNpb246ICdFWFBSRVNTX1ZFUlNJT04nLFxuICAgIH0pO1xuICAgIGFkZFBhY2thZ2VKc29uRGVwZW5kZW5jeShob3N0LCB7XG4gICAgICB0eXBlOiBOb2RlRGVwZW5kZW5jeVR5cGUuRGV2LFxuICAgICAgbmFtZTogJ0B0eXBlcy9leHByZXNzJyxcbiAgICAgIHZlcnNpb246ICdFWFBSRVNTX1RZUEVTX1ZFUlNJT04nLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGhvc3Q7XG4gIH07XG59XG5cbmZ1bmN0aW9uIGFkZFNlcnZlckZpbGUob3B0aW9uczogVW5pdmVyc2FsT3B0aW9ucyk6IFJ1bGUge1xuICByZXR1cm4gYXN5bmMgaG9zdCA9PiB7XG4gICAgY29uc3QgY2xpZW50UHJvamVjdCA9IGF3YWl0IGdldFByb2plY3QoaG9zdCwgb3B0aW9ucy5jbGllbnRQcm9qZWN0KTtcbiAgICBjb25zdCBicm93c2VyRGlzdERpcmVjdG9yeSA9IGF3YWl0IGdldE91dHB1dFBhdGgoaG9zdCwgb3B0aW9ucy5jbGllbnRQcm9qZWN0LCAnYnVpbGQnKTtcblxuICAgIHJldHVybiBtZXJnZVdpdGgoXG4gICAgICAgIGFwcGx5KHVybCgnLi9maWxlcycpLCBbXG4gICAgICAgIHRlbXBsYXRlKHtcbiAgICAgICAgICAuLi5zdHJpbmdzLFxuICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgc3RyaXBUc0V4dGVuc2lvbixcbiAgICAgICAgICBicm93c2VyRGlzdERpcmVjdG9yeSxcbiAgICAgICAgfSksXG4gICAgICAgIG1vdmUoY2xpZW50UHJvamVjdC5yb290KVxuICAgICAgXSlcbiAgICApO1xuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAob3B0aW9uczogVW5pdmVyc2FsT3B0aW9ucyk6IFJ1bGUge1xuICByZXR1cm4gKCkgPT4ge1xuICAgIHJldHVybiBjaGFpbihbXG4gICAgICBhZGRVbml2ZXJzYWxDb21tb25SdWxlKG9wdGlvbnMpLFxuICAgICAgYWRkU2VydmVyRmlsZShvcHRpb25zKSxcbiAgICAgIGFkZERlcGVuZGVuY2llcyhvcHRpb25zKSxcbiAgICBdKTtcbiAgfTtcbn1cbiJdfQ==