@nest-yalc-2/app 2.2.1 → 2.2.4

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.
Files changed (42) hide show
  1. package/package.json +10 -2
  2. package/src/__tests__/app-bootstrap-base.helper.spec.ts +86 -38
  3. package/src/__tests__/app-bootstrap-standalone.helper.spec.ts +35 -35
  4. package/src/__tests__/app-bootstrap.helper.spec.ts +162 -98
  5. package/src/__tests__/app-config.service.spec.ts +55 -55
  6. package/src/__tests__/app-context.service.spec.ts +28 -28
  7. package/src/__tests__/app.events.spec.ts +12 -12
  8. package/src/__tests__/app.helper.spec.ts +71 -204
  9. package/src/__tests__/base-app-module.helper.spec.ts +295 -231
  10. package/src/__tests__/base-app.controller.spec.ts +90 -90
  11. package/src/__tests__/base-app.service.spec.ts +39 -39
  12. package/src/__tests__/cls.module.spec.ts +33 -33
  13. package/src/__tests__/life-cycle-handler.service.spec.ts +57 -48
  14. package/src/__tests__/unwrap-result.interceptor.spec.ts +52 -52
  15. package/src/app-bootstrap-base.helper.ts +206 -206
  16. package/src/app-bootstrap-standalone.helper.ts +67 -67
  17. package/src/app-bootstrap.helper.js +9 -9
  18. package/src/app-bootstrap.helper.ts +279 -279
  19. package/src/app-config.service.ts +61 -61
  20. package/src/app-context.module.ts +6 -6
  21. package/src/app-context.service.ts +16 -16
  22. package/src/app-imports.factory.js +2 -2
  23. package/src/app-imports.factory.js.map +1 -1
  24. package/src/app-imports.factory.ts +321 -321
  25. package/src/app.events.ts +8 -8
  26. package/src/app.helper.ts +73 -73
  27. package/src/base-app-module.helper.d.ts +2 -2
  28. package/src/base-app-module.helper.js +8 -5
  29. package/src/base-app-module.helper.js.map +1 -1
  30. package/src/base-app-module.helper.ts +457 -453
  31. package/src/base-app.controller.ts +51 -51
  32. package/src/base-app.interface.ts +55 -55
  33. package/src/base-app.service.ts +33 -33
  34. package/src/cls.module.d.ts +2 -1
  35. package/src/cls.module.js.map +1 -1
  36. package/src/cls.module.ts +76 -75
  37. package/src/conf.type.ts +22 -22
  38. package/src/def.const.ts +33 -33
  39. package/src/global.enum.ts +6 -6
  40. package/src/life-cycle-handler.service.ts +66 -66
  41. package/src/unwrap-result.interceptor.ts +32 -32
  42. package/src/yalc-controller.interface.ts +6 -6
@@ -1,6 +1,6 @@
1
- import { Global, Module } from '@nestjs/common';
2
- import { AppContextService } from './app-context.service.js';
3
-
4
- @Global()
5
- @Module({ providers: [AppContextService], exports: [AppContextService] })
6
- export class AppContextModule {}
1
+ import { Global, Module } from '@nestjs/common';
2
+ import { AppContextService } from './app-context.service.js';
3
+
4
+ @Global()
5
+ @Module({ providers: [AppContextService], exports: [AppContextService] })
6
+ export class AppContextModule {}
@@ -1,16 +1,16 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { GraphQLSchema } from 'graphql';
3
-
4
- @Injectable()
5
- export class AppContextService {
6
- public initializedApps = new Set<string>();
7
- private graphQLSchema!: GraphQLSchema;
8
-
9
- public setSchema(schema: GraphQLSchema) {
10
- this.graphQLSchema = schema;
11
- }
12
-
13
- public get schema() {
14
- return this.graphQLSchema;
15
- }
16
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { GraphQLSchema } from 'graphql';
3
+
4
+ @Injectable()
5
+ export class AppContextService {
6
+ public initializedApps = new Set<string>();
7
+ private graphQLSchema!: GraphQLSchema;
8
+
9
+ public setSchema(schema: GraphQLSchema) {
10
+ this.graphQLSchema = schema;
11
+ }
12
+
13
+ public get schema() {
14
+ return this.graphQLSchema;
15
+ }
16
+ }
@@ -137,12 +137,12 @@ export function AppDependencyFactory(_context, confs, dbConnNames, gqlModules, o
137
137
  };
138
138
  return productionError;
139
139
  },
140
- playground: conf?.isDev && !disablePlayground
140
+ playground: (conf?.isDev && !disablePlayground
141
141
  ? {
142
142
  endpoint: `${conf?.apiPrefix}/graphql`,
143
143
  settings: { 'request.credentials': 'include' },
144
144
  }
145
- : false,
145
+ : false),
146
146
  debug: conf?.isDev,
147
147
  context: async ({ request, reply, ...rest }) => {
148
148
  await eventEmitter.emitAsync(AppEvents.BEFORE_GQL_CONTEXT_MIDDLEWARE, request, reply);
@@ -1 +1 @@
1
- {"version":3,"file":"app-imports.factory.js","sourceRoot":"","sources":["app-imports.factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-imports.factory.js","sourceRoot":"","sources":["app-imports.factory.ts"],"names":[],"mappings":"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"}