@ngserveio/ws
Version:
This library was generated with [Nx](https://nx.dev).
33 lines • 1.68 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const devkit_1 = require("@nx/devkit");
const nest_1 = require("@nx/nest");
const utilities_1 = require("../utilities");
function apiFeatureGenerator(tree, schema) {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
const directory = (0, utilities_1.domainDirectory)(schema.domain);
const domainProject = (0, utilities_1.getDomainProjectNames)(schema);
const projectName = `${domainProject.name.fileName}-feature`;
const projectImportPath = (0, utilities_1.getDomainProjectImportPath)(schema.domain, 'ng-feature', schema.name);
yield (0, nest_1.libraryGenerator)(tree, {
name: projectName,
directory: `${directory}/api`,
importPath: projectImportPath,
tags: (0, utilities_1.setTags)(domainProject.domain.name, 'nest', 'api-feature'),
standaloneConfig: true,
});
if (schema.parentProject) {
const modulePath = (0, utilities_1.getProjectHighLevelModule)(tree, schema.parentProject);
const featureModule = (0, devkit_1.names)(`${domainProject.domain.fileName}-api-${projectName}-module`).className;
const fileUpdates = Object.assign({}, (0, utilities_1.addImportDeclaration)(modulePath, {
importPath: projectImportPath,
modules: [featureModule],
}));
(0, utilities_1.updateSourceFiles)(tree, fileUpdates);
}
yield (0, devkit_1.formatFiles)(tree);
});
}
exports.default = apiFeatureGenerator;
//# sourceMappingURL=index.js.map