@nest-extended/cli 0.0.2-beta-12 → 0.0.2-beta-14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nest-extended/cli",
3
- "version": "0.0.2-beta-12",
3
+ "version": "0.0.2-beta-14",
4
4
  "private": false,
5
5
  "contributors": [
6
6
  {
@@ -16,23 +16,32 @@ const schema_template_1 = require("../templates/schema.template");
16
16
  const service_spec_template_1 = require("../templates/service.spec.template");
17
17
  const controller_spec_template_1 = require("../templates/controller.spec.template");
18
18
  const generateServiceAction = (rawName) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
19
+ const parts = rawName.split('/');
20
+ const rawBasename = parts.pop() || '';
21
+ const dirPath = parts.join('/');
19
22
  // if arg have '-' change to camelCase (Logic from original index.js)
20
- const argArray = rawName.split('-');
23
+ const argArray = rawBasename.split('-');
21
24
  argArray.forEach((arg, index) => {
22
25
  argArray[index] = arg[0].toUpperCase() + arg.slice(1).toLowerCase();
23
26
  });
24
27
  const Name = argArray.join(''); // PascalCase
25
28
  const name = Name[0].toLowerCase() + Name.slice(1); // camelCase
26
- console.log(`Generating service for: ${Name} (${name})`);
29
+ const fullPath = dirPath ? `${dirPath}/${name}` : name;
30
+ const targetDir = `src/services/${fullPath}`;
31
+ console.log(`Generating service for: ${Name} (${fullPath})`);
27
32
  const isAuthGenerated = fs.existsSync(path.join(process.cwd(), 'src/services/auth'));
28
- (0, create_file_1.createFileWithContent)(`src/schemas/${name}.schema.ts`, (0, schema_template_1.getSchema)(Name, 'Users', isAuthGenerated));
29
- (0, create_file_1.createFileWithContent)(`src/services/${name}/${name}.module.ts`, (0, module_template_1.getModule)(Name, name));
30
- (0, create_file_1.createFileWithContent)(`src/services/${name}/${name}.service.ts`, (0, service_template_1.getService)(Name, name));
31
- (0, create_file_1.createFileWithContent)(`src/services/${name}/${name}.controller.ts`, (0, controller_template_1.getController)(Name, name, rawName));
32
- (0, create_file_1.createFileWithContent)(`src/services/${name}/dto/${name}.dto.ts`, (0, dto_template_1.getDto)(Name));
33
- (0, create_file_1.createFileWithContent)(`src/services/${name}/${name}.service.spec.ts`, (0, service_spec_template_1.getServiceSpec)(Name, name));
34
- (0, create_file_1.createFileWithContent)(`src/services/${name}/${name}.controller.spec.ts`, (0, controller_spec_template_1.getControllerSpec)(Name, name));
35
- yield (0, update_app_module_1.updateAppModule)(Name, name);
33
+ // To compute depth for relative imports to src/schemas
34
+ // targetDir is `src/services/qna/category`
35
+ // from targetDir to src is `../../` for `src/services/category`, so `../../` + dirPath depth
36
+ const depth = dirPath ? dirPath.split('/').map(() => '../').join('') + '../../' : '../../';
37
+ (0, create_file_1.createFileWithContent)(`src/schemas/${fullPath}.schema.ts`, (0, schema_template_1.getSchema)(Name, 'Users', isAuthGenerated, dirPath));
38
+ (0, create_file_1.createFileWithContent)(`${targetDir}/${name}.module.ts`, (0, module_template_1.getModule)(Name, name, fullPath, depth));
39
+ (0, create_file_1.createFileWithContent)(`${targetDir}/${name}.service.ts`, (0, service_template_1.getService)(Name, name, fullPath));
40
+ (0, create_file_1.createFileWithContent)(`${targetDir}/${name}.controller.ts`, (0, controller_template_1.getController)(Name, name, rawName, depth, fullPath));
41
+ (0, create_file_1.createFileWithContent)(`${targetDir}/dto/${name}.dto.ts`, (0, dto_template_1.getDto)(Name));
42
+ (0, create_file_1.createFileWithContent)(`${targetDir}/${name}.service.spec.ts`, (0, service_spec_template_1.getServiceSpec)(Name, name));
43
+ (0, create_file_1.createFileWithContent)(`${targetDir}/${name}.controller.spec.ts`, (0, controller_spec_template_1.getControllerSpec)(Name, name));
44
+ yield (0, update_app_module_1.updateAppModule)(Name, name, fullPath);
36
45
  console.log(chalk.blue('Running lint...'));
37
46
  const projectDir = process.cwd();
38
47
  const pkgManager = fs.existsSync(path.join(projectDir, 'yarn.lock')) ? 'yarn' : 'npm';
@@ -1 +1 @@
1
- {"version":3,"file":"generate-service.js","sourceRoot":"","sources":["../../../../../packages/cli/src/commands/generate-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-service.js","sourceRoot":"","sources":["../../../../../packages/cli/src/commands/generate-service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare function updateAppModule(Name: string, name: string): Promise<void>;
1
+ export declare function updateAppModule(Name: string, name: string, fullPath?: string): Promise<void>;
@@ -5,8 +5,8 @@ const tslib_1 = require("tslib");
5
5
  const fs = require("fs-extra");
6
6
  const path = require("path");
7
7
  const chalk = require("chalk");
8
- function updateAppModule(Name, name) {
9
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
8
+ function updateAppModule(Name_1, name_1) {
9
+ return tslib_1.__awaiter(this, arguments, void 0, function* (Name, name, fullPath = name) {
10
10
  const appModulePath = path.join(process.cwd(), 'src/app.module.ts');
11
11
  try {
12
12
  if (!fs.existsSync(appModulePath)) {
@@ -28,7 +28,7 @@ function updateAppModule(Name, name) {
28
28
  lastImportMatch = match;
29
29
  }
30
30
  // Create the new import statement
31
- const newImport = `import { ${Name}Module } from './services/${name}/${name}.module';`;
31
+ const newImport = `import { ${Name}Module } from './services/${fullPath}/${name}.module';`;
32
32
  if (lastImportMatch) {
33
33
  // Insert after the last service module import
34
34
  const insertPosition = lastImportMatch.index + lastImportMatch[0].length;
@@ -1 +1 @@
1
- {"version":3,"file":"update-app-module.js","sourceRoot":"","sources":["../../../../../packages/cli/src/lib/update-app-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-app-module.js","sourceRoot":"","sources":["../../../../../packages/cli/src/lib/update-app-module.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const getController: (Name: string, name: string, url: string) => string;
1
+ export declare const getController: (Name: string, name: string, url: string, depth?: string, fullPath?: string) => string;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getController = void 0;
4
- const getController = (Name, name, url) => `import {
4
+ const getController = (Name, name, url, depth = '../../', fullPath = name) => `import {
5
5
  Controller,
6
6
  Delete,
7
7
  Get,
@@ -12,7 +12,7 @@ const getController = (Name, name, url) => `import {
12
12
  } from '@nestjs/common';
13
13
  import { ${Name}Service } from './${name}.service';
14
14
  import { User, ModifyBody, setCreatedBy } from '@nest-extended/decorators';
15
- import { ${Name} } from '../../schemas/${name}.schema';
15
+ import { ${Name} } from '${depth}schemas/${fullPath}.schema';
16
16
 
17
17
  @Controller('${url}')
18
18
  export class ${Name}Controller {
@@ -1 +1 @@
1
- {"version":3,"file":"controller.template.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/controller.template.ts"],"names":[],"mappings":";;;AACO,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAU,EAAE,CAAC;;;;;;;;;WASvE,IAAI,qBAAqB,IAAI;;WAE7B,IAAI,0BAA0B,IAAI;;eAE9B,GAAG;eACH,IAAI;iCACc,IAAI,YAAY,IAAI;;;;wBAI7B,IAAI;;;;;wBAKJ,IAAI;;;;;wCAKY,IAAI,QAAQ,IAAI;;wBAEhC,IAAI,yBAAyB,IAAI;;;;;;kDAMP,IAAI,gBAAgB,IAAI;;;wBAGlD,IAAI,2BAA2B,IAAI;;;;;wBAKnC,IAAI;;;CAG3B,CAAC;AAhDW,QAAA,aAAa,iBAgDxB"}
1
+ {"version":3,"file":"controller.template.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/controller.template.ts"],"names":[],"mappings":";;;AACO,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAE,QAAgB,QAAQ,EAAE,WAAmB,IAAI,EAAU,EAAE,CAAC;;;;;;;;;WAS1H,IAAI,qBAAqB,IAAI;;WAE7B,IAAI,YAAY,KAAK,WAAW,QAAQ;;eAEpC,GAAG;eACH,IAAI;iCACc,IAAI,YAAY,IAAI;;;;wBAI7B,IAAI;;;;;wBAKJ,IAAI;;;;;wCAKY,IAAI,QAAQ,IAAI;;wBAEhC,IAAI,yBAAyB,IAAI;;;;;;kDAMP,IAAI,gBAAgB,IAAI;;;wBAGlD,IAAI,2BAA2B,IAAI;;;;;wBAKnC,IAAI;;;CAG3B,CAAC;AAhDW,QAAA,aAAa,iBAgDxB"}
@@ -1 +1 @@
1
- export declare const getModule: (Name: string, name: string) => string;
1
+ export declare const getModule: (Name: string, name: string, fullPath?: string, depth?: string) => string;
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getModule = void 0;
4
- const getModule = (Name, name) => `import { Module } from '@nestjs/common';
4
+ const getModule = (Name, name, fullPath = name, depth = '../../') => `import { Module } from '@nestjs/common';
5
5
  import { MongooseModule } from '@nestjs/mongoose';
6
6
  import { ${Name}Controller } from './${name}.controller';
7
7
  import { ${Name}Service } from './${name}.service';
8
- import { ${Name}, ${Name}Schema } from '../../schemas/${name}.schema';
8
+ import { ${Name}, ${Name}Schema } from '${depth}schemas/${fullPath}.schema';
9
9
 
10
10
  @Module({
11
11
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"module.template.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/module.template.ts"],"names":[],"mappings":";;;AACO,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,IAAY,EAAU,EAAE,CAAC;;WAEtD,IAAI,wBAAwB,IAAI;WAChC,IAAI,qBAAqB,IAAI;WAC7B,IAAI,KAAK,IAAI,gCAAgC,IAAI;;;;yCAInB,IAAI,kBAAkB,IAAI;;kBAEjD,IAAI;;MAEhB,IAAI;;cAEI,IAAI;;eAEH,IAAI;CAClB,CAAC;AAjBW,QAAA,SAAS,aAiBpB"}
1
+ {"version":3,"file":"module.template.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/module.template.ts"],"names":[],"mappings":";;;AACO,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,WAAmB,IAAI,EAAE,QAAgB,QAAQ,EAAU,EAAE,CAAC;;WAEzG,IAAI,wBAAwB,IAAI;WAChC,IAAI,qBAAqB,IAAI;WAC7B,IAAI,KAAK,IAAI,kBAAkB,KAAK,WAAW,QAAQ;;;;yCAIzB,IAAI,kBAAkB,IAAI;;kBAEjD,IAAI;;MAEhB,IAAI;;cAEI,IAAI;;eAEH,IAAI;CAClB,CAAC;AAjBW,QAAA,SAAS,aAiBpB"}
@@ -1 +1 @@
1
- export declare const getSchema: (Name: string, UserEntity?: string, isAuthGenerated?: boolean) => string;
1
+ export declare const getSchema: (Name: string, UserEntity?: string, isAuthGenerated?: boolean, dirPath?: string) => string;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getSchema = void 0;
4
- const getSchema = (Name, UserEntity = 'Users', isAuthGenerated = true) => {
4
+ const getSchema = (Name, UserEntity = 'Users', isAuthGenerated = true, dirPath = '') => {
5
5
  const authFields = isAuthGenerated ? `
6
6
  @Prop({
7
7
  type: Types.ObjectId,
@@ -24,9 +24,13 @@ const getSchema = (Name, UserEntity = 'Users', isAuthGenerated = true) => {
24
24
  })
25
25
  deletedBy?: Types.ObjectId;
26
26
  ` : '';
27
+ // Calculate schema depth correctly from schemas folder rather than services folder
28
+ // For `src/schemas/qna/category.schema.ts`, dirPath is `qna`, depth is `../`
29
+ const schemaDepth = dirPath ? dirPath.split('/').map(() => '../').join('') : './';
30
+ const relativeUserPath = schemaDepth + 'users.schema';
27
31
  return `import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
28
32
  import { HydratedDocument, Types } from 'mongoose';
29
- import { ${UserEntity} } from './users.schema';
33
+ import { ${UserEntity} } from '${relativeUserPath}';
30
34
  import { EnsureObjectId } from '@nest-extended/mongoose';
31
35
 
32
36
  export type ${Name}Document = HydratedDocument<${Name}>;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.template.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/schema.template.ts"],"names":[],"mappings":";;;AACO,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,aAAqB,OAAO,EAAE,kBAA2B,IAAI,EAAU,EAAE;IAC/G,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC;;;WAG5B,UAAU;;;;;;;WAOV,UAAU;;;;;;;WAOV,UAAU;;;;CAIpB,CAAC,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO;;WAEE,UAAU;;;cAGP,IAAI,+BAA+B,IAAI;;;;;eAKtC,IAAI;;;IAGf,UAAU;;;;;;;;;;;;;;;eAeC,IAAI,yCAAyC,IAAI;CAC/D,CAAC;AACF,CAAC,CAAC;AAtDW,QAAA,SAAS,aAsDpB"}
1
+ {"version":3,"file":"schema.template.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/schema.template.ts"],"names":[],"mappings":";;;AACO,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,aAAqB,OAAO,EAAE,kBAA2B,IAAI,EAAE,UAAkB,EAAE,EAAU,EAAE;IACrI,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC;;;WAG5B,UAAU;;;;;;;WAOV,UAAU;;;;;;;WAOV,UAAU;;;;CAIpB,CAAC,CAAC,CAAC,EAAE,CAAC;IAEL,mFAAmF;IACnF,6EAA6E;IAC7E,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClF,MAAM,gBAAgB,GAAG,WAAW,GAAG,cAAc,CAAC;IAEtD,OAAO;;WAEE,UAAU,YAAY,gBAAgB;;;cAGnC,IAAI,+BAA+B,IAAI;;;;;eAKtC,IAAI;;;IAGf,UAAU;;;;;;;;;;;;;;;eAeC,IAAI,yCAAyC,IAAI;CAC/D,CAAC;AACF,CAAC,CAAC;AA3DW,QAAA,SAAS,aA2DpB"}
@@ -1 +1 @@
1
- export declare const getService: (Name: string, name: string) => string;
1
+ export declare const getService: (Name: string, name: string, fullPath?: string) => string;
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getService = void 0;
4
- const getService = (Name, name) => `import { Model } from 'mongoose';
4
+ const getService = (Name, name, fullPath = name) => `import { Model } from 'mongoose';
5
5
  import { Injectable } from '@nestjs/common';
6
6
  import { InjectModel } from '@nestjs/mongoose';
7
7
  import { NestService } from '@nest-extended/mongoose';
8
- import { ${Name}, ${Name}Document } from 'src/schemas/${name}.schema';
8
+ import { ${Name}, ${Name}Document } from 'src/schemas/${fullPath}.schema';
9
9
 
10
10
  @Injectable()
11
11
  export class ${Name}Service extends NestService<${Name}, ${Name}Document> {
@@ -1 +1 @@
1
- {"version":3,"file":"service.template.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/service.template.ts"],"names":[],"mappings":";;;AACO,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,IAAY,EAAU,EAAE,CAAC;;;;WAIvD,IAAI,KAAK,IAAI,gCAAgC,IAAI;;;eAG7C,IAAI,+BAA+B,IAAI,KAAK,IAAI;;mBAE5C,IAAI,2BAA2B,IAAI,gBAAgB,IAAI;;YAE9D,IAAI;;EAEd,CAAC;AAbU,QAAA,UAAU,cAapB"}
1
+ {"version":3,"file":"service.template.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/service.template.ts"],"names":[],"mappings":";;;AACO,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,WAAmB,IAAI,EAAU,EAAE,CAAC;;;;WAIhF,IAAI,KAAK,IAAI,gCAAgC,QAAQ;;;eAGjD,IAAI,+BAA+B,IAAI,KAAK,IAAI;;mBAE5C,IAAI,2BAA2B,IAAI,gBAAgB,IAAI;;YAE9D,IAAI;;EAEd,CAAC;AAbU,QAAA,UAAU,cAapB"}