@opra/nestjs 0.8.0 → 0.12.0

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.
@@ -2,7 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OpraApiFactory = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const lodash_1 = require("lodash");
5
+ const lodash_head_1 = tslib_1.__importDefault(require("lodash.head"));
6
+ const lodash_identity_1 = tslib_1.__importDefault(require("lodash.identity"));
6
7
  const common_1 = require("@nestjs/common");
7
8
  const core_1 = require("@nestjs/core");
8
9
  const external_context_creator_1 = require("@nestjs/core/helpers/external-context-creator");
@@ -109,7 +110,7 @@ let OpraApiFactory = class OpraApiFactory {
109
110
  }
110
111
  return await common_2.OpraDocument.create(serviceArgs);
111
112
  }
112
- _createContextCallback(instance, prototype, wrapper, moduleRef, methodName, isRequestScoped, transform = lodash_1.identity, contextType, forPre) {
113
+ _createContextCallback(instance, prototype, wrapper, moduleRef, methodName, isRequestScoped, transform = lodash_identity_1.default, contextType, forPre) {
113
114
  const paramsFactory = this.paramsFactory;
114
115
  const options = !forPre ?
115
116
  { guards: false, interceptors: false, filters: false } : undefined;
@@ -173,7 +174,7 @@ let OpraApiFactory = class OpraApiFactory {
173
174
  ([key, { metatype }]) => metatype && metatype.name === internal_core_module_1.InternalCoreModule.name)
174
175
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
175
176
  .map(([key, value]) => value);
176
- const coreModuleRef = (0, lodash_1.head)(coreModuleArray);
177
+ const coreModuleRef = (0, lodash_head_1.default)(coreModuleArray);
177
178
  if (!coreModuleRef) {
178
179
  return;
179
180
  }
@@ -25,7 +25,7 @@ class OpraApiLoader {
25
25
  };
26
26
  try {
27
27
  const serviceHost = await this.opraFactory.generateService(rootModule, options, 'http');
28
- if (!Object.keys(serviceHost.resources).length) {
28
+ if (!serviceHost.resources.size) {
29
29
  this.logger.warn(`No resources found (${name})`);
30
30
  return;
31
31
  }
@@ -52,7 +52,11 @@ class OpraApiLoader {
52
52
  if (!httpAdapter)
53
53
  return;
54
54
  const app = httpAdapter.getInstance();
55
- return core_2.OpraExpressAdapter.init(app, service, moduleOptions);
55
+ const logger = moduleOptions.logger || new common_1.Logger(service.info.title);
56
+ return core_2.OpraExpressAdapter.init(app, service, {
57
+ logger,
58
+ ...moduleOptions
59
+ });
56
60
  }
57
61
  }
58
62
  tslib_1.__decorate([
@@ -1,5 +1,6 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
- import { head, identity } from 'lodash';
2
+ import head from 'lodash.head';
3
+ import identity from 'lodash.identity';
3
4
  import { Inject, Injectable } from '@nestjs/common';
4
5
  import { ContextIdFactory, createContextId, ModulesContainer, REQUEST } from '@nestjs/core';
5
6
  import { ExternalContextCreator } from '@nestjs/core/helpers/external-context-creator';
@@ -1,7 +1,7 @@
1
1
  import { ModuleMetadata, Type } from '@nestjs/common';
2
2
  import { OpraSchema } from '@opra/common';
3
3
  import { OpraHttpAdapter } from '@opra/core';
4
- export declare type OpraModuleOptions = OpraHttpAdapter.Options & {
4
+ export type OpraModuleOptions = OpraHttpAdapter.Options & {
5
5
  info?: OpraSchema.DocumentInfo;
6
6
  /**
7
7
  * @default true
@@ -22,7 +22,7 @@ export class OpraApiLoader {
22
22
  };
23
23
  try {
24
24
  const serviceHost = await this.opraFactory.generateService(rootModule, options, 'http');
25
- if (!Object.keys(serviceHost.resources).length) {
25
+ if (!serviceHost.resources.size) {
26
26
  this.logger.warn(`No resources found (${name})`);
27
27
  return;
28
28
  }
@@ -49,7 +49,11 @@ export class OpraApiLoader {
49
49
  if (!httpAdapter)
50
50
  return;
51
51
  const app = httpAdapter.getInstance();
52
- return OpraExpressAdapter.init(app, service, moduleOptions);
52
+ const logger = moduleOptions.logger || new Logger(service.info.title);
53
+ return OpraExpressAdapter.init(app, service, {
54
+ logger,
55
+ ...moduleOptions
56
+ });
53
57
  }
54
58
  }
55
59
  __decorate([
package/esm/types.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  import { DynamicModule, ForwardReference, Type } from '@nestjs/common';
2
- export declare type ModuleThunk = Type | DynamicModule | Promise<DynamicModule> | ForwardReference;
2
+ export type ModuleThunk = Type | DynamicModule | Promise<DynamicModule> | ForwardReference;
@@ -1,7 +1,7 @@
1
1
  import 'reflect-metadata';
2
2
  import { HandlerParamType } from '../enums/handler-paramtype.enum.js';
3
- export declare type ParamData = object | string | number;
4
- export declare type ParamsMetadata = Record<number, {
3
+ export type ParamData = object | string | number;
4
+ export type ParamsMetadata = Record<number, {
5
5
  index: number;
6
6
  data?: ParamData;
7
7
  }>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opra/nestjs",
3
- "version": "0.8.0",
3
+ "version": "0.12.0",
4
4
  "description": "Opra NestJS module",
5
5
  "author": "Panates",
6
6
  "license": "MIT",
@@ -17,18 +17,19 @@
17
17
  "build:esm": "tsc -b tsconfig-build-esm.json",
18
18
  "postbuild": "cp README.md package.json ../../LICENSE ../../build/nestjs && cp ../../package.cjs.json ../../build/nestjs/cjs/package.json",
19
19
  "lint": "eslint .",
20
- "test": "jest",
21
- "cover": "jest --collect-coverage",
20
+ "test": "NODE_OPTIONS=--experimental-vm-modules npx jest",
21
+ "cover": "NODE_OPTIONS=--experimental-vm-modules npx jest --collect-coverage",
22
22
  "clean": "npm run clean:src && npm run clean:dist && npm run clean:cover",
23
- "clean:src": "ts-cleanup -s src --all",
23
+ "clean:src": "ts-cleanup -s src --all && ts-cleanup -s test --all",
24
24
  "clean:dist": "rimraf ../../build/nestjs",
25
25
  "clean:cover": "rimraf ../../coverage/nestjs"
26
26
  },
27
27
  "dependencies": {
28
- "@opra/common": "^0.8.0",
29
- "@opra/core": "^0.8.0",
30
- "fast-tokenizer": "^1.2.0",
31
- "lodash": "^4.17.21",
28
+ "@opra/common": "^0.12.0",
29
+ "@opra/core": "^0.12.0",
30
+ "fast-tokenizer": "^1.2.1",
31
+ "lodash.head": "^4.0.1",
32
+ "lodash.identity": "^3.0.0",
32
33
  "reflect-metadata": "^0.1.13"
33
34
  },
34
35
  "peerDependencies": {
@@ -38,8 +39,7 @@
38
39
  "@nestjs/platform-express": "^9.2.1",
39
40
  "@nestjs/testing": "^9.2.1",
40
41
  "@types/lodash": "^4.14.191",
41
- "filedirname": "^2.7.0",
42
- "supertest": "^6.3.2"
42
+ "filedirname": "^2.7.0"
43
43
  },
44
44
  "type": "module",
45
45
  "types": "esm/index.d.ts",