@rxap/plugin-nestjs 16.1.0-dev.17 → 16.1.0-dev.19

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/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [16.1.0-dev.19](https://gitlab.com/rxap/packages/compare/@rxap/plugin-nestjs@16.1.0-dev.18...@rxap/plugin-nestjs@16.1.0-dev.19) (2023-09-12)
7
+
8
+ ### Bug Fixes
9
+
10
+ - add development configuration to build target ([393a03a](https://gitlab.com/rxap/packages/commit/393a03aa54366fd1a037aac9ef42a57a23258f1f))
11
+ - use local status server if possible ([d9b48fa](https://gitlab.com/rxap/packages/commit/d9b48fa8f862d769e7c2675226a900eca3b8fde5))
12
+ - use ready hook for RegisterToStatusService ([b0b1cd5](https://gitlab.com/rxap/packages/commit/b0b1cd5273343ae09ab1b3c3dd2d0fae951d7cbd))
13
+
14
+ # [16.1.0-dev.18](https://gitlab.com/rxap/packages/compare/@rxap/plugin-nestjs@16.1.0-dev.17...@rxap/plugin-nestjs@16.1.0-dev.18) (2023-09-12)
15
+
16
+ ### Bug Fixes
17
+
18
+ - improve nest application init generator execution ([30adde1](https://gitlab.com/rxap/packages/commit/30adde1b164884137890e4c604ed86a7a75261d9))
19
+ - use unified Dockerfile ([913898d](https://gitlab.com/rxap/packages/commit/913898d976a56873caabd2140cf2e6e0fef15214))
20
+
21
+ ### Reverts
22
+
23
+ - "build: use nx run commands to build openapi.json" ([b294956](https://gitlab.com/rxap/packages/commit/b294956b25d42350a1e0907635c88776a39b7708))
24
+
6
25
  # [16.1.0-dev.17](https://gitlab.com/rxap/packages/compare/@rxap/plugin-nestjs@16.1.0-dev.16...@rxap/plugin-nestjs@16.1.0-dev.17) (2023-09-09)
7
26
 
8
27
  ### Features
package/README.md CHANGED
@@ -19,7 +19,7 @@ yarn add @rxap/plugin-nestjs
19
19
  ```
20
20
  **Install peer dependencies:**
21
21
  ```bash
22
- yarn add @nx/devkit@^16.5.0 @nx/js@^16.5.0 @rxap/generator-utilities@^1.1.0-dev.10 @rxap/plugin-utilities@^16.1.0-dev.12 @rxap/ts-morph@^0.1.0-dev.6 @rxap/utilities@^16.0.0-dev.16 @rxap/workspace-ts-morph@^0.1.0-dev.6 @rxap/workspace-utilities@^0.1.0-dev.11 ts-morph@^18.0.0
22
+ yarn add tslib@2.6.2
23
23
  ```
24
24
  **Execute the init generator:**
25
25
  ```bash
package/package.json CHANGED
@@ -1,85 +1,84 @@
1
1
  {
2
+ "version": "16.1.0-dev.19",
2
3
  "name": "@rxap/plugin-nestjs",
3
- "version": "16.1.0-dev.17",
4
- "type": "commonjs",
5
- "generators": "./generators.json",
6
- "publishConfig": {
7
- "access": "public",
8
- "directory": "../../../dist/packages/plugin/nestjs"
9
- },
10
- "keywords": [
11
- "rxap",
12
- "plugin",
13
- "nx",
14
- "nx-plugin",
15
- "packages",
16
- "nestjs",
17
- "plugin-nestjs"
18
- ],
19
- "homepage": "https:/gitlab.com/rxap/packages/packages/plugin/nestjs",
20
- "bugs": {
21
- "url": "https://gitlab.com/rxap/packages/-/issues",
22
- "email": "incoming+rxap-packages-14898188-issue-@incoming.gitlab.com"
23
- },
24
4
  "license": "GPL-3.0-or-later",
25
- "repository": {
26
- "type": "git",
27
- "url": "https://gitlab.com/rxap/packages.git",
28
- "directory": "packages/plugin/nestjs"
29
- },
30
- "author": {
31
- "name": "Merzough Münker",
32
- "email": "mmuenker@digitaix.com"
33
- },
34
5
  "dependencies": {
35
6
  "ignore": "^5.2.4",
36
7
  "process": "0.11.10",
37
8
  "semver": "^7.3.5",
9
+ "ts-morph": "18.0.0",
38
10
  "tslib": "2.6.2"
39
11
  },
40
12
  "peerDependencies": {
41
- "@nx/devkit": "^16.5.0",
42
- "@nx/js": "^16.5.0",
43
- "@rxap/generator-utilities": "^1.1.0-dev.10",
44
- "@rxap/plugin-utilities": "^16.1.0-dev.12",
45
- "@rxap/ts-morph": "^0.1.0-dev.6",
46
- "@rxap/utilities": "^16.0.0-dev.16",
47
- "@rxap/workspace-ts-morph": "^0.1.0-dev.6",
48
- "@rxap/workspace-utilities": "^0.1.0-dev.11",
49
- "ts-morph": "^18.0.0",
50
- "@rxap/node-utilities": "1.1.0-dev.7"
13
+ "tslib": "2.6.2",
14
+ "@rxap/generator-utilities": "1.1.0-dev.12",
15
+ "@rxap/node-utilities": "1.1.0-dev.8",
16
+ "@rxap/plugin-utilities": "16.1.0-dev.13",
17
+ "@rxap/ts-morph": "0.1.0-dev.8",
18
+ "@rxap/utilities": "16.0.0-dev.17",
19
+ "@rxap/workspace-ts-morph": "0.1.0-dev.7",
20
+ "@rxap/workspace-utilities": "0.1.0-dev.12"
21
+ },
22
+ "author": {
23
+ "name": "Merzough Münker",
24
+ "email": "mmuenker@digitaix.com"
25
+ },
26
+ "bugs": {
27
+ "url": "https://gitlab.com/rxap/packages/-/issues",
28
+ "email": "incoming+rxap-packages-14898188-issue-@incoming.gitlab.com"
51
29
  },
30
+ "executors": "./executors.json",
31
+ "generators": "./generators.json",
32
+ "homepage": "https:/gitlab.com/rxap/packages/packages/plugin/nestjs",
33
+ "keywords": [
34
+ "nestjs",
35
+ "nx",
36
+ "nx-plugin",
37
+ "packages",
38
+ "plugin",
39
+ "plugin-nestjs",
40
+ "rxap"
41
+ ],
52
42
  "nx-migrations": {
53
43
  "packageGroup": [
54
44
  {
55
45
  "package": "@rxap/generator-utilities",
56
- "version": "1.1.0-dev.10"
46
+ "version": "1.1.0-dev.12"
57
47
  },
58
48
  {
59
49
  "package": "@rxap/plugin-utilities",
60
- "version": "16.1.0-dev.12"
50
+ "version": "16.1.0-dev.13"
61
51
  },
62
52
  {
63
53
  "package": "@rxap/ts-morph",
64
- "version": "0.1.0-dev.6"
54
+ "version": "0.1.0-dev.8"
65
55
  },
66
56
  {
67
57
  "package": "@rxap/utilities",
68
- "version": "16.0.0-dev.16"
58
+ "version": "16.0.0-dev.17"
69
59
  },
70
60
  {
71
61
  "package": "@rxap/workspace-ts-morph",
72
- "version": "0.1.0-dev.6"
62
+ "version": "0.1.0-dev.7"
73
63
  },
74
64
  {
75
65
  "package": "@rxap/workspace-utilities",
76
- "version": "0.1.0-dev.11"
66
+ "version": "0.1.0-dev.12"
77
67
  }
78
68
  ]
79
69
  },
80
- "executors": "./executors.json",
70
+ "publishConfig": {
71
+ "access": "public",
72
+ "directory": "../../../dist/packages/plugin/nestjs"
73
+ },
74
+ "repository": {
75
+ "type": "git",
76
+ "url": "https://gitlab.com/rxap/packages.git",
77
+ "directory": "packages/plugin/nestjs"
78
+ },
81
79
  "schematics": "./generators.json",
82
- "gitHead": "0a2b6a8ad25d8833591332ea55586724e17e5a5c",
80
+ "type": "commonjs",
81
+ "gitHead": "b9029d1d1f1ef3c336acc01c0d08d0d3423ca1cf",
83
82
  "main": "./src/index.js",
84
83
  "types": "./src/index.d.ts"
85
84
  }
@@ -1,4 +1,5 @@
1
1
  export interface HealthIndicatorGeneratorSchema {
2
2
  name: string;
3
3
  project: string;
4
+ overwrite?: boolean;
4
5
  }
@@ -20,6 +20,9 @@
20
20
  "$source": "projectName"
21
21
  },
22
22
  "x-prompt": "For which project should the health indicator be added?"
23
+ },
24
+ "overwrite": {
25
+ "type": "boolean"
23
26
  }
24
27
  },
25
28
  "required": [
@@ -1,3 +1,4 @@
1
1
  export interface HealthIndicatorInitGeneratorSchema {
2
2
  project: string;
3
+ overwrite?: boolean;
3
4
  }
@@ -11,6 +11,9 @@
11
11
  "$source": "projectName"
12
12
  },
13
13
  "x-prompt": "For which project should the health indicator module be initialized?"
14
+ },
15
+ "overwrite": {
16
+ "type": "boolean"
14
17
  }
15
18
  },
16
19
  "required": [
@@ -0,0 +1,7 @@
1
+ FROM registry.gitlab.com/rxap/docker/nestjs-server:18.17-alpine
2
+
3
+ COPY package.json /app
4
+
5
+ RUN yarn && yarn cache clean
6
+
7
+ COPY . /app
@@ -5,7 +5,6 @@ const tslib_1 = require("tslib");
5
5
  const devkit_1 = require("@nx/devkit");
6
6
  const library_1 = require("@nx/js/src/generators/library/library");
7
7
  const generator_utilities_1 = require("@rxap/generator-utilities");
8
- const plugin_utilities_1 = require("@rxap/plugin-utilities");
9
8
  const ts_morph_1 = require("@rxap/ts-morph");
10
9
  const workspace_ts_morph_1 = require("@rxap/workspace-ts-morph");
11
10
  const workspace_utilities_1 = require("@rxap/workspace-utilities");
@@ -124,7 +123,8 @@ function setGeneralTargetDefaults(tree) {
124
123
  (0, devkit_1.updateNxJson)(tree, nxJson);
125
124
  }
126
125
  function updateProjectTargets(project) {
127
- var _a, _b, _c, _d;
126
+ var _a, _b, _c, _d, _e;
127
+ var _f, _g;
128
128
  (0, workspace_utilities_1.CoerceTarget)(project, 'generate-package-json', {
129
129
  executor: '@rxap/plugin-nestjs:package-json',
130
130
  configurations: {
@@ -159,14 +159,15 @@ function updateProjectTargets(project) {
159
159
  },
160
160
  ],
161
161
  },
162
+ development: {
163
+ progress: true,
164
+ },
162
165
  },
163
166
  }, workspace_utilities_1.Strategy.OVERWRITE);
164
- const buildTargetOptions = (0, plugin_utilities_1.GetTargetOptions)((0, plugin_utilities_1.GetTarget)(project, 'build'));
165
- (_d = buildTargetOptions.assets) !== null && _d !== void 0 ? _d : (buildTargetOptions.assets = []);
166
- (0, generator_utilities_1.CoerceAssets)(buildTargetOptions.assets, [
167
- (0, path_1.join)(project.sourceRoot, 'Dockerfile'),
168
- (0, path_1.join)(project.sourceRoot, 'healthcheck.js'),
169
- ]);
167
+ if (project.targets['docker']) {
168
+ (_d = (_f = project.targets['docker']).options) !== null && _d !== void 0 ? _d : (_f.options = {});
169
+ (_e = (_g = project.targets['docker'].options).dockerfile) !== null && _e !== void 0 ? _e : (_g.dockerfile = 'shared/nestjs/Dockerfile');
170
+ }
170
171
  }
171
172
  function updateGitIgnore(tree, project) {
172
173
  (0, generator_utilities_1.CoerceIgnorePattern)(tree, (0, path_1.join)(project.root, '.gitignore'), ['package.json']);
@@ -285,6 +286,153 @@ function getApiPrefix(tree, options, projectSourceRoot, projectName) {
285
286
  }
286
287
  return (0, path_1.join)('api', projectName.replace(/^service-/, ''));
287
288
  }
289
+ const MAIN_NEST_APP_OPTIONS_STATEMENT = 'const options: NestApplicationOptions = {};';
290
+ const MAIN_BOOTSTRAP_OPTIONS_STATEMENT = 'const bootstrapOptions: Partial<MonolithicBootstrapOptions> = {};';
291
+ const MAIN_SERVER_STATEMENT = 'const server = new Monolithic<NestApplicationOptions, NestExpressApplication>(AppModule, environment, options, bootstrapOptions);';
292
+ const MAIN_BOOTSTRAP_STATEMENT = 'server.bootstrap().catch((e) => console.error(\'Server bootstrap failed: \' + e.message));';
293
+ const MAIN_SETUP_HELMET_STATEMENT = 'server.after(SetupHelmet());';
294
+ const MAIN_SETUP_COOKIE_STATEMENT = 'server.after(SetupCookieParser());';
295
+ const MAIN_SETUP_CORS_STATEMENT = 'server.after(SetupCors());';
296
+ function assertMainStatements(sourceFile) {
297
+ var _a;
298
+ const statements = [];
299
+ statements.push('const options: NestApplicationOptions = {');
300
+ statements.push('const bootstrapOptions: Partial<MonolithicBootstrapOptions> = {');
301
+ statements.push('const server = new Monolithic<NestApplicationOptions, NestExpressApplication>(AppModule, environment, options, bootstrapOptions);');
302
+ const existingStatements = (_a = sourceFile.getStatements().map(s => s.getText())) !== null && _a !== void 0 ? _a : [];
303
+ for (const statement of statements) {
304
+ if (!existingStatements.includes(statement)) {
305
+ console.error(`Missing statement from main.ts: ${statement}`);
306
+ sourceFile.set({
307
+ statements: [
308
+ MAIN_NEST_APP_OPTIONS_STATEMENT,
309
+ MAIN_BOOTSTRAP_OPTIONS_STATEMENT,
310
+ MAIN_SERVER_STATEMENT,
311
+ MAIN_SETUP_HELMET_STATEMENT,
312
+ MAIN_SETUP_COOKIE_STATEMENT,
313
+ MAIN_SETUP_CORS_STATEMENT,
314
+ MAIN_BOOTSTRAP_STATEMENT,
315
+ ],
316
+ });
317
+ (0, ts_morph_1.CoerceImports)(sourceFile, [
318
+ {
319
+ moduleSpecifier: '@nestjs/common',
320
+ namedImports: ['NestApplicationOptions'],
321
+ },
322
+ {
323
+ moduleSpecifier: '@nestjs/platform-express',
324
+ namedImports: ['NestExpressApplication'],
325
+ },
326
+ {
327
+ moduleSpecifier: '@rxap/nest-server',
328
+ namedImports: [
329
+ 'MonolithicBootstrapOptions',
330
+ 'Monolithic',
331
+ 'SetupHelmet',
332
+ 'SetupCookieParser',
333
+ 'SetupCors',
334
+ ],
335
+ },
336
+ {
337
+ moduleSpecifier: './app/app.module',
338
+ namedImports: ['AppModule'],
339
+ },
340
+ {
341
+ moduleSpecifier: './environments/environment',
342
+ namedImports: ['environment'],
343
+ },
344
+ ]);
345
+ return;
346
+ }
347
+ }
348
+ }
349
+ function updateMainFile(tree, project, projectName, options) {
350
+ (0, workspace_ts_morph_1.TsMorphAngularProjectTransform)(tree, {
351
+ project: project.name,
352
+ // directory: '..' // to move from the apps/demo/src/app folder into the apps/demo/src folder
353
+ }, (project, [sourceFile]) => {
354
+ var _a;
355
+ assertMainStatements(sourceFile);
356
+ const importDeclarations = [];
357
+ const statements = [];
358
+ if (options.sentry) {
359
+ importDeclarations.push({
360
+ moduleSpecifier: '@rxap/nest-sentry',
361
+ namedImports: ['SetupSentryLogger'],
362
+ });
363
+ statements.push('server.after(SetupSentryLogger());');
364
+ }
365
+ else {
366
+ importDeclarations.push({
367
+ moduleSpecifier: '@rxap/nest-logger',
368
+ namedImports: ['RxapLogger'],
369
+ });
370
+ statements.push('server.after(app => app.useLogger(new RxapLogger()));');
371
+ }
372
+ if (options.validator) {
373
+ importDeclarations.push({
374
+ moduleSpecifier: '@rxap/nest-server',
375
+ namedImports: ['ValidationPipeSetup'],
376
+ });
377
+ statements.push('server.after(ValidationPipeSetup());');
378
+ }
379
+ if (options.swaggerLive) {
380
+ importDeclarations.push({
381
+ moduleSpecifier: '@rxap/nest-server',
382
+ namedImports: ['SetupSwagger'],
383
+ });
384
+ statements.push('server.after(SetupSwagger());');
385
+ }
386
+ if (options.statusRegister) {
387
+ importDeclarations.push({
388
+ moduleSpecifier: '@rxap/nest-server',
389
+ namedImports: ['RegisterToStatusService'],
390
+ });
391
+ statements.push('server.ready(RegisterToStatusService());');
392
+ }
393
+ (0, ts_morph_1.CoerceImports)(sourceFile, importDeclarations);
394
+ for (let i = 0; i < statements.length; i++) {
395
+ const statement = statements[i];
396
+ const lastStatement = i > 0 ? statements[i - 1] : null;
397
+ const nestStatement = i < statements.length - 1 ? statements[i + 1] : null;
398
+ const existingStatements = (_a = sourceFile.getStatements().map(s => s.getText())) !== null && _a !== void 0 ? _a : [];
399
+ if (!existingStatements.includes(statement)) {
400
+ let index;
401
+ if (lastStatement) {
402
+ index = existingStatements.findIndex(s => s.includes(lastStatement)) + 1;
403
+ }
404
+ else if (nestStatement) {
405
+ index = existingStatements.findIndex(s => s.includes(nestStatement));
406
+ }
407
+ else {
408
+ index = existingStatements.findIndex(s => s.includes(MAIN_BOOTSTRAP_STATEMENT));
409
+ }
410
+ console.log(`insert statement: ${statement} at index ${index}`);
411
+ sourceFile.insertStatements(index, statement);
412
+ }
413
+ }
414
+ if (projectName === 'service-status') {
415
+ const variableDeclaration = (0, ts_morph_1.CoerceVariableDeclaration)(sourceFile, 'bootstrapOptions', { initializer: '{}' });
416
+ const objectLiteralExpression = variableDeclaration.getInitializerIfKindOrThrow(ts_morph_2.SyntaxKind.ObjectLiteralExpression);
417
+ let objectLiteralElementLike = objectLiteralExpression.getProperty('globalPrefixOptions');
418
+ if (!objectLiteralElementLike) {
419
+ objectLiteralElementLike = objectLiteralExpression.addPropertyAssignment({
420
+ name: 'globalPrefixOptions',
421
+ initializer: '{}',
422
+ });
423
+ }
424
+ const gpoPropertyAssigment = objectLiteralElementLike.asKindOrThrow(ts_morph_2.SyntaxKind.PropertyAssignment);
425
+ const gpoObjectLiteralExpression = gpoPropertyAssigment.getInitializerIfKindOrThrow(ts_morph_2.SyntaxKind.ObjectLiteralExpression);
426
+ let gpoElementLike = gpoObjectLiteralExpression.getProperty('exclude');
427
+ if (!gpoElementLike) {
428
+ gpoElementLike = gpoObjectLiteralExpression.addPropertyAssignment({
429
+ name: 'exclude',
430
+ initializer: `[ '/health(.*)', '/info', '/openapi', '/register' ]`,
431
+ });
432
+ }
433
+ }
434
+ }, ['main.ts']);
435
+ }
288
436
  function initApplicationGenerator(tree, options) {
289
437
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
290
438
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
@@ -302,6 +450,10 @@ function initApplicationGenerator(tree, options) {
302
450
  (_m = options.jwt) !== null && _m !== void 0 ? _m : (options.jwt = false);
303
451
  (_o = options.statusRegister) !== null && _o !== void 0 ? _o : (options.statusRegister = true);
304
452
  console.log('nestjs application init generator:', options);
453
+ // only add the shared folder if it does not exist
454
+ if (!tree.exists('shared/nestjs')) {
455
+ (0, devkit_1.generateFiles)(tree, (0, path_1.join)(__dirname, 'files', 'shared'), 'shared/nestjs', options);
456
+ }
305
457
  setGeneralTargetDefaults(tree);
306
458
  yield addDependencies(tree, options);
307
459
  const projects = (0, devkit_1.getProjects)(tree);
@@ -362,7 +514,7 @@ function initApplicationGenerator(tree, options) {
362
514
  if (options.statusRegister && projectName !== 'service-status') {
363
515
  itemList.push({
364
516
  name: 'STATUS_SERVICE_BASE_URL',
365
- defaultValue: 'environment.production ? \'http://rxap-status-service:3000\' : `https://${process.env.ROOT_DOMAIN ?? \'localhost\'}:8443`',
517
+ defaultValue: `environment.production ? 'http://rxap-status-service:3000' : 'http://localhost:5300'`,
366
518
  });
367
519
  (0, ts_morph_1.CoerceImports)(configSourceFile, {
368
520
  namespaceImport: 'process',
@@ -384,17 +536,24 @@ function initApplicationGenerator(tree, options) {
384
536
  ]);
385
537
  removeAppServiceFile(tree, projectSourceRoot);
386
538
  removeAppControllerSpecFile(tree, projectSourceRoot);
539
+ if (options.generateMain) {
540
+ updateMainFile(tree, project, projectName, options);
541
+ }
387
542
  if (options.healthIndicator || ((_p = options.healthIndicatorList) === null || _p === void 0 ? void 0 : _p.length)) {
388
543
  if ((_q = options.healthIndicatorList) === null || _q === void 0 ? void 0 : _q.length) {
389
544
  for (const healthIndicator of options.healthIndicatorList) {
390
545
  yield (0, generator_2.default)(tree, {
391
546
  name: healthIndicator,
392
547
  project: projectName,
548
+ overwrite: options.overwrite,
393
549
  });
394
550
  }
395
551
  }
396
552
  else {
397
- yield (0, generator_1.default)(tree, { project: projectName });
553
+ yield (0, generator_1.default)(tree, {
554
+ project: projectName,
555
+ overwrite: options.overwrite,
556
+ });
398
557
  }
399
558
  }
400
559
  if (options.sentry) {
@@ -406,16 +565,28 @@ function initApplicationGenerator(tree, options) {
406
565
  });
407
566
  }
408
567
  if (options.validator) {
409
- yield (0, generator_7.default)(tree, { project: projectName });
568
+ yield (0, generator_7.default)(tree, {
569
+ project: projectName,
570
+ overwrite: options.overwrite,
571
+ });
410
572
  }
411
573
  if (options.openApi) {
412
- yield (0, generator_4.default)(tree, { project: projectName });
574
+ yield (0, generator_4.default)(tree, {
575
+ project: projectName,
576
+ overwrite: options.overwrite,
577
+ });
413
578
  }
414
579
  if (options.jwt) {
415
- yield (0, generator_3.default)(tree, { project: projectName });
580
+ yield (0, generator_3.default)(tree, {
581
+ project: projectName,
582
+ overwrite: options.overwrite,
583
+ });
416
584
  }
417
585
  if (options.swagger !== false) {
418
- yield (0, generator_6.default)(tree, { project: projectName });
586
+ yield (0, generator_6.default)(tree, {
587
+ project: projectName,
588
+ overwrite: options.overwrite,
589
+ });
419
590
  }
420
591
  }
421
592
  });
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/init-application/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/init-application/generator.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  export interface InitApplicationGeneratorSchema {
2
+ generateMain?: boolean;
3
+ swaggerLive?: boolean;
2
4
  projects?: string[];
3
5
  sentry?: boolean;
4
6
  swagger?: boolean;
@@ -23,6 +23,18 @@
23
23
  "description": "Whether this service should use swagger",
24
24
  "x-prompt": "Should this service support open-api config generation?"
25
25
  },
26
+ "swaggerLive": {
27
+ "type": "boolean",
28
+ "default": false,
29
+ "description": "Whether this service should start a swagger live server",
30
+ "x-prompt": "Should this service start a swagger live server?"
31
+ },
32
+ "generateMain": {
33
+ "type": "boolean",
34
+ "default": false,
35
+ "description": "Whether the main file should be generated",
36
+ "x-prompt": "Should the main file be generated?"
37
+ },
26
38
  "healthIndicator": {
27
39
  "type": "boolean",
28
40
  "default": true,
@@ -20,6 +20,7 @@ function UpdateAppModule(tree, options) {
20
20
  ],
21
21
  });
22
22
  (0, ts_morph_1.CoerceNestModuleImport)(sourceFile, {
23
+ overwrite: options.overwrite,
23
24
  moduleName: 'JwtModule',
24
25
  structures: [
25
26
  {
@@ -34,17 +35,41 @@ function UpdateAppModule(tree, options) {
34
35
  importWriter: w => {
35
36
  w.writeLine('JwtModule.registerAsync(');
36
37
  ts_morph_2.Writers.object({
38
+ global: 'true',
37
39
  inject: '[ ConfigService ]',
38
- useFactory: '(config: ConfigService) => ({})',
40
+ useFactory: `(config: ConfigService) => ({
41
+ secret: config.getOrThrow('JWT_SECRET')
42
+ })`,
39
43
  })(w);
40
44
  w.write(')');
41
45
  },
42
46
  });
43
47
  }, ['/app/app.module.ts']);
44
48
  }
49
+ function UpdateAppConfig(tree, options, projectName) {
50
+ (0, workspace_ts_morph_1.TsMorphNestProjectTransform)(tree, {
51
+ project: options.project,
52
+ }, (project, [sourceFile]) => {
53
+ (0, ts_morph_1.CoerceNestAppConfig)(sourceFile, {
54
+ itemList: [
55
+ {
56
+ name: 'JWT_SECRET',
57
+ defaultValue: 'GenerateRandomString()',
58
+ },
59
+ ],
60
+ overwrite: options.overwrite,
61
+ });
62
+ (0, ts_morph_1.CoerceImports)(sourceFile, {
63
+ namedImports: ['GenerateRandomString'],
64
+ moduleSpecifier: '@rxap/utilities',
65
+ });
66
+ }, ['/app/app.config.ts?']);
67
+ }
45
68
  function jwtGenerator(tree, options) {
46
69
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
70
+ console.log('nestjs application jwt generator:', options);
47
71
  UpdateAppModule(tree, options);
72
+ UpdateAppConfig(tree, options, options.project);
48
73
  yield (0, workspace_utilities_1.AddPackageJsonDependency)(tree, '@rxap/nest-jwt', 'latest', { soft: true });
49
74
  yield (0, workspace_utilities_1.AddPackageJsonDependency)(tree, '@nestjs/jwt', 'latest', { soft: true });
50
75
  });
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/jwt/generator.ts"],"names":[],"mappings":";;;;AACA,6CAGwB;AACxB,iEAAuE;AACvE,mEAAqE;AACrE,uCAAmC;AAInC,SAAS,eAAe,CAAC,IAAU,EAAE,OAA8B;IAEjE,IAAA,gDAA2B,EACzB,IAAI,EACJ;QACE,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,EACD,CAAC,OAAO,EAAE,CAAE,UAAU,CAAE,EAAE,EAAE;QAE1B,IAAA,mCAAwB,EAAC,UAAU,EAAE;YACnC,cAAc,EAAE,kBAAkB;YAClC,UAAU,EAAE;gBACV;oBACE,YAAY,EAAE,CAAE,kBAAkB,CAAE;oBACpC,eAAe,EAAE,gBAAgB;iBAClC;aACF;SACF,CAAC,CAAC;QAEH,IAAA,iCAAsB,EACpB,UAAU,EACV;YACE,UAAU,EAAE,WAAW;YACvB,UAAU,EAAE;gBACV;oBACE,YAAY,EAAE,CAAE,WAAW,CAAE;oBAC7B,eAAe,EAAE,aAAa;iBAC/B;gBACD;oBACE,eAAe,EAAE,gBAAgB;oBACjC,YAAY,EAAE,CAAE,eAAe,CAAE;iBAClC;aACF;YACD,YAAY,EAAE,CAAC,CAAC,EAAE;gBAChB,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;gBACxC,kBAAO,CAAC,MAAM,CAAC;oBACb,MAAM,EAAE,mBAAmB;oBAC3B,UAAU,EAAE,iCAAiC;iBAC9C,CAAC,CAAC,CAAC,CAAC,CAAC;gBACN,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACf,CAAC;SACF,CACF,CAAC;IAEJ,CAAC,EACD,CAAE,oBAAoB,CAAE,CACzB,CAAC;AAEJ,CAAC;AAED,SAAsB,YAAY,CAAC,IAAU,EAAE,OAA2B;;QACxE,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/B,MAAM,IAAA,8CAAwB,EAAC,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACjF,MAAM,IAAA,8CAAwB,EAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChF,CAAC;CAAA;AAJD,oCAIC;AAED,kBAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/jwt/generator.ts"],"names":[],"mappings":";;;;AACA,6CAKwB;AACxB,iEAAuE;AACvE,mEAAqE;AACrE,uCAAmC;AAInC,SAAS,eAAe,CAAC,IAAU,EAAE,OAA8B;IAEjE,IAAA,gDAA2B,EACzB,IAAI,EACJ;QACE,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,EACD,CAAC,OAAO,EAAE,CAAE,UAAU,CAAE,EAAE,EAAE;QAE1B,IAAA,mCAAwB,EAAC,UAAU,EAAE;YACnC,cAAc,EAAE,kBAAkB;YAClC,UAAU,EAAE;gBACV;oBACE,YAAY,EAAE,CAAE,kBAAkB,CAAE;oBACpC,eAAe,EAAE,gBAAgB;iBAClC;aACF;SACF,CAAC,CAAC;QAEH,IAAA,iCAAsB,EACpB,UAAU,EACV;YACE,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,WAAW;YACvB,UAAU,EAAE;gBACV;oBACE,YAAY,EAAE,CAAE,WAAW,CAAE;oBAC7B,eAAe,EAAE,aAAa;iBAC/B;gBACD;oBACE,eAAe,EAAE,gBAAgB;oBACjC,YAAY,EAAE,CAAE,eAAe,CAAE;iBAClC;aACF;YACD,YAAY,EAAE,CAAC,CAAC,EAAE;gBAChB,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;gBACxC,kBAAO,CAAC,MAAM,CAAC;oBACb,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,mBAAmB;oBAC3B,UAAU,EAAE;;GAEvB;iBACU,CAAC,CAAC,CAAC,CAAC,CAAC;gBACN,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACf,CAAC;SACF,CACF,CAAC;IAEJ,CAAC,EACD,CAAE,oBAAoB,CAAE,CACzB,CAAC;AAEJ,CAAC;AAED,SAAS,eAAe,CAAC,IAAU,EAAE,OAA2B,EAAE,WAAmB;IAEnF,IAAA,gDAA2B,EACzB,IAAI,EACJ;QACE,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,EACD,CAAC,OAAO,EAAE,CAAE,UAAU,CAAE,EAAE,EAAE;QAE1B,IAAA,8BAAmB,EAAC,UAAU,EAAE;YAC9B,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,YAAY;oBAClB,YAAY,EAAE,wBAAwB;iBACvC;aACF;YACD,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CAAC;QAEH,IAAA,wBAAa,EAAC,UAAU,EAAE;YACxB,YAAY,EAAE,CAAE,sBAAsB,CAAE;YACxC,eAAe,EAAE,iBAAiB;SACnC,CAAC,CAAC;IAEL,CAAC,EACD,CAAE,qBAAqB,CAAE,CAC1B,CAAC;AAEJ,CAAC;AAED,SAAsB,YAAY,CAAC,IAAU,EAAE,OAA2B;;QACxE,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,OAAO,CAAC,CAAC;QAC1D,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/B,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,IAAA,8CAAwB,EAAC,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACjF,MAAM,IAAA,8CAAwB,EAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChF,CAAC;CAAA;AAND,oCAMC;AAED,kBAAe,YAAY,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export interface JwtGeneratorSchema {
2
+ overwrite?: boolean;
2
3
  project: string;
3
4
  }
@@ -7,6 +7,9 @@
7
7
  "project": {
8
8
  "type": "string",
9
9
  "description": ""
10
+ },
11
+ "overwrite": {
12
+ "type": "boolean"
10
13
  }
11
14
  },
12
15
  "required": [
@@ -1,3 +1,4 @@
1
1
  export interface OpenApiGeneratorSchema {
2
+ overwrite?: boolean;
2
3
  project: string;
3
4
  }
@@ -7,6 +7,9 @@
7
7
  "project": {
8
8
  "type": "string",
9
9
  "description": ""
10
+ },
11
+ "overwrite": {
12
+ "type": "boolean"
10
13
  }
11
14
  },
12
15
  "required": [
@@ -5,14 +5,10 @@ const tslib_1 = require("tslib");
5
5
  const devkit_1 = require("@nx/devkit");
6
6
  const generator_utilities_1 = require("@rxap/generator-utilities");
7
7
  const plugin_utilities_1 = require("@rxap/plugin-utilities");
8
- const ts_morph_1 = require("@rxap/ts-morph");
9
- const workspace_ts_morph_1 = require("@rxap/workspace-ts-morph");
10
8
  const workspace_utilities_1 = require("@rxap/workspace-utilities");
11
9
  const path = require("path");
12
10
  const path_1 = require("path");
13
- const ts_morph_2 = require("ts-morph");
14
11
  function updateProjectTargets(project) {
15
- var _a, _b;
16
12
  const buildTarget = (0, plugin_utilities_1.GetTarget)(project, 'build');
17
13
  const buildTargetOptions = (0, plugin_utilities_1.GetTargetOptions)(buildTarget);
18
14
  if (!buildTargetOptions['outputPath']) {
@@ -51,27 +47,6 @@ function updateProjectTargets(project) {
51
47
  watch: false,
52
48
  },
53
49
  });
54
- const projectSourceRoot = project.sourceRoot;
55
- if (!projectSourceRoot) {
56
- throw new Error('The selected project has no sourceRoot');
57
- }
58
- (0, workspace_utilities_1.CoerceTarget)(project, 'copy-open-api-json', {
59
- executor: 'nx:run-commands',
60
- outputs: [
61
- `{projectRoot}/src/openapi.json`,
62
- ],
63
- inputs: [
64
- `{workspaceRoot}/dist/swagger/{projectRoot}/openapi.json`,
65
- ],
66
- options: {
67
- command: `cp ${outputPath}/openapi.json ${projectSourceRoot}/openapi.json`,
68
- },
69
- }, workspace_utilities_1.Strategy.OVERWRITE);
70
- (_a = buildTargetOptions.assets) !== null && _a !== void 0 ? _a : (buildTargetOptions.assets = []);
71
- (0, generator_utilities_1.CoerceAssets)(buildTargetOptions.assets, [`${projectSourceRoot}/openapi.json`]);
72
- const developmentBuildOptions = (0, plugin_utilities_1.GetTargetOptions)(buildTarget, 'development');
73
- (_b = developmentBuildOptions.assets) !== null && _b !== void 0 ? _b : (developmentBuildOptions.assets = []);
74
- (0, generator_utilities_1.CoerceAssets)(developmentBuildOptions.assets, [`${projectSourceRoot}/openapi.json`]);
75
50
  }
76
51
  function updateNxDefaults(tree) {
77
52
  var _a, _b, _c, _d;
@@ -90,9 +65,6 @@ function updateNxDefaults(tree) {
90
65
  if (!nxJson.tasksRunnerOptions['default'].options['cacheableOperations'].includes('swagger-generate')) {
91
66
  nxJson.tasksRunnerOptions['default'].options['cacheableOperations'].push('swagger-generate');
92
67
  }
93
- if (!nxJson.tasksRunnerOptions['default'].options['cacheableOperations'].includes('copy-open-api-json')) {
94
- nxJson.tasksRunnerOptions['default'].options['cacheableOperations'].push('copy-open-api-json');
95
- }
96
68
  (0, devkit_1.updateNxJson)(tree, nxJson);
97
69
  }
98
70
  function swaggerGenerator(tree, options) {
@@ -109,41 +81,7 @@ function swaggerGenerator(tree, options) {
109
81
  if (!projectSourceRoot) {
110
82
  throw new Error('The selected project has no sourceRoot');
111
83
  }
112
- (0, generator_utilities_1.CoerceIgnorePattern)(tree, (0, path_1.join)(projectSourceRoot, '.gitignore'), ['/openapi.json']);
113
84
  (0, devkit_1.updateProjectConfiguration)(tree, options.project, project);
114
- (0, workspace_ts_morph_1.TsMorphNestProjectTransform)(tree, { project: options.project }, (_, [sourceFile]) => {
115
- console.log('sourceFile', sourceFile);
116
- (0, ts_morph_1.CoerceNestOperation)(sourceFile, {
117
- operationName: 'openapi',
118
- path: 'openapi',
119
- statements: [
120
- 'return GetOpenapiJson(__dirname, this.logger);',
121
- ],
122
- });
123
- const classDeclaration = sourceFile.getClass('AppController');
124
- (0, ts_morph_1.CoerceClassProperty)(classDeclaration, 'logger', {
125
- scope: ts_morph_2.Scope.Private,
126
- isReadonly: true,
127
- hasExclamationToken: true,
128
- type: 'Logger',
129
- decorators: [
130
- {
131
- name: 'Inject',
132
- arguments: ['Logger'],
133
- },
134
- ],
135
- });
136
- (0, ts_morph_1.CoerceImports)(sourceFile, [
137
- {
138
- namedImports: ['Logger', 'Inject'],
139
- moduleSpecifier: '@nestjs/common',
140
- },
141
- {
142
- namedImports: ['GetOpenapiJson'],
143
- moduleSpecifier: '@rxap/nest-open-api',
144
- },
145
- ]);
146
- }, ['app/app.controller.ts']);
147
85
  yield (0, workspace_utilities_1.AddPackageJsonDependency)(tree, 'swagger-ui-express', 'latest', { soft: true });
148
86
  yield (0, workspace_utilities_1.AddPackageJsonDependency)(tree, '@nestjs/swagger', 'latest', { soft: true });
149
87
  });
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/swagger/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/swagger/generator.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export interface SwaggerGeneratorSchema {
2
+ overwrite?: boolean;
2
3
  project: string;
3
4
  }
@@ -11,6 +11,9 @@
11
11
  "$source": "projectName"
12
12
  },
13
13
  "x-prompt": "Which project should be initialized?"
14
+ },
15
+ "overwrite": {
16
+ "type": "boolean"
14
17
  }
15
18
  },
16
19
  "required": [
@@ -1,3 +1,4 @@
1
1
  export interface ValidatorGeneratorSchema {
2
+ overwrite?: boolean;
2
3
  project: string;
3
4
  }
@@ -11,6 +11,9 @@
11
11
  "$source": "projectName"
12
12
  },
13
13
  "x-prompt": "Which project should be extend with sentry support?"
14
+ },
15
+ "overwrite": {
16
+ "type": "boolean"
14
17
  }
15
18
  },
16
19
  "required": [
@@ -1,21 +0,0 @@
1
- FROM node:18.17-alpine
2
- # FROM node:18.17 # use if the mongo memory server is used
3
-
4
- RUN apk add --no-cache git g++ make python3
5
-
6
- RUN mkdir /app
7
-
8
- WORKDIR /app
9
-
10
- COPY package.json /app
11
-
12
- RUN yarn && yarn cache clean
13
-
14
- COPY . /app
15
-
16
- ENV PORT=3000
17
- EXPOSE 3000
18
-
19
- HEALTHCHECK CMD node healthcheck.js > /dev/null || exit 1
20
-
21
- CMD [ "node", "/app/main.js" ]
@@ -1,38 +0,0 @@
1
- const http = require('http');
2
-
3
- let path = '/';
4
-
5
- if (process.env.HEALTHCHECK_PATH) {
6
- path = process.env.HEALTHCHECK_PATH;
7
- } else {
8
- path = '/health';
9
- }
10
-
11
- const options = {
12
- host: '127.0.0.1',
13
- port: process.env.PORT || 3000,
14
- path,
15
- timeout: 30000,
16
- };
17
-
18
- const request = http.request(
19
- options,
20
- (res) => {
21
- console.log(`STATUS: ${ res.statusCode }`);
22
- if (res.statusCode === 200) {
23
- process.exit(0);
24
- } else {
25
- process.exit(1);
26
- }
27
- },
28
- );
29
-
30
- request.on(
31
- 'error',
32
- function (err) {
33
- console.log(`ERROR: ${ err.message }`);
34
- process.exit(1);
35
- },
36
- );
37
-
38
- request.end();
@@ -1,115 +0,0 @@
1
- <% if (validator) { -%>
2
- import { ValidationPipe, HttpStatus } from '@nestjs/common';
3
- import { ValidationHttpException, validatorOptions, classTransformOptions } from '@rxap/nest-utilities';
4
- <% } -%>
5
- import { Monolithic } from '@rxap/nest-server';
6
- import cookieParser from 'cookie-parser';
7
- <% if (sentry) { -%>
8
- import { SentryLogger } from '@rxap/nest-sentry';
9
- <% } -%>
10
- import { environment } from './environments/environment';
11
- import { AppModule } from './app/app.module';
12
- <% if (platform === "express") { -%>
13
- import { NestExpressApplication } from '@nestjs/platform-express';
14
- import helmet from 'helmet';
15
- <% } else if (platform === "fastify") { -%>
16
- import { NestFastifyApplication } from '@nestjs/platform-fastify';
17
- import helmet from '@fastify/helmet'
18
- <% } -%>
19
- import { NestApplicationOptions } from '@nestjs/common';
20
- import { RxapLogger } from '@rxap/nest-logger';
21
- <% if (statusRegister) { -%>
22
- import { RegisterToStatusService } from '@rxap/nest-server';
23
- <% } -%>
24
-
25
- <% if (platform === "express") { -%>
26
- const server = new Monolithic<NestApplicationOptions, NestExpressApplication>(
27
- AppModule,
28
- environment,
29
- { bufferLogs: true },
30
- <% if (projectName === "service-status") { -%>
31
- {
32
- globalPrefixOptions: {
33
- exclude: [
34
- '/health(.*)',
35
- '/info',
36
- '/openapi',
37
- '/register',
38
- ]
39
- }
40
- }
41
- <% } -%>
42
- );
43
-
44
- <% } else if (platform === "fastify") { -%>
45
- const server = new Monolithic<NestApplicationOptions, NestFastifyApplication>(
46
- AppModule,
47
- environment,
48
- { bufferLogs: true },
49
- );
50
-
51
- <% } -%>
52
- <% if (sentry) { -%>
53
- server.after((app, config) => {
54
- if (config.get('SENTRY_ENABLED')) {
55
- app.useLogger(app.get(SentryLogger));
56
- } else {
57
- app.useLogger(new RxapLogger());
58
- }
59
- });
60
-
61
- <% } else { -%>
62
- server.after(app => app.useLogger(new RxapLogger()));
63
-
64
- <% } -%>
65
- server.after((app) =>
66
- app.enableCors({
67
- credentials: true,
68
- origin: true,
69
- }),
70
- );
71
-
72
- server.after((app, config) =>
73
- app.use(cookieParser(config.get('COOKIE_SECRET'))),
74
- );
75
-
76
- <% if (platform === "express") { -%>
77
- /**
78
- * Note that applying helmet as global or registering it must come before other calls to app.use() or setup functions
79
- * that may call app.use(). This is due to the way the underlying platform (i.e., Express or Fastify) works, where the
80
- * order that middleware/routes are defined matters. If you use middleware like helmet or cors after you define a route,
81
- * then that middleware will not apply to that route, it will only apply to routes defined after the middleware.
82
- */
83
- server.after(app => app.use(helmet()));
84
-
85
- <% } else if (platform === "fastify") { -%>
86
- /**
87
- * If you are getting the This expression is not callable error while trying to import Helmet, you very likely have the
88
- * allowSyntheticDefaultImports and esModuleInterop options set to true in your project's tsconfig.json file. If that's
89
- * the case, change the import statement to: import helmet from 'helmet' instead.
90
- */
91
- server.after(app => app.register(helmet));
92
-
93
- <% } -%>
94
- <% if (validator) { -%>
95
- server.after((app) =>
96
- app.useGlobalPipes(
97
- new ValidationPipe({
98
- ...validatorOptions,
99
- transform: true,
100
- transformOptions: classTransformOptions,
101
- enableDebugMessages: !environment.production,
102
- exceptionFactory: (errors) =>
103
- new ValidationHttpException(errors, HttpStatus.BAD_REQUEST),
104
- }),
105
- ),
106
- );
107
-
108
- <% } -%>
109
- <% if (statusRegister) { -%>
110
- server.ready(RegisterToStatusService);
111
-
112
- <% } -%>
113
- server
114
- .bootstrap()
115
- .catch((e) => console.error('Server bootstrap failed: ' + e.message));