@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.
- package/cjs/factories/opra-api.factory.js +4 -3
- package/cjs/services/opra-api-loader.js +6 -2
- package/esm/factories/opra-api.factory.js +2 -1
- package/esm/interfaces/opra-module-options.interface.d.ts +1 -1
- package/esm/services/opra-api-loader.js +6 -2
- package/esm/types.d.ts +1 -1
- package/esm/utils/param.utils.d.ts +2 -2
- package/package.json +10 -10
|
@@ -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
|
|
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 =
|
|
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,
|
|
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 (!
|
|
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
|
-
|
|
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
|
|
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
|
|
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 (!
|
|
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
|
-
|
|
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
|
|
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
|
|
4
|
-
export
|
|
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.
|
|
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.
|
|
29
|
-
"@opra/core": "^0.
|
|
30
|
-
"fast-tokenizer": "^1.2.
|
|
31
|
-
"lodash": "^4.
|
|
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",
|