@rsdk/core 6.0.0-next.2 → 6.0.0-next.20
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/dist/platform.context.d.ts +3 -2
- package/dist/platform.context.js +9 -7
- package/dist/platform.context.js.map +1 -1
- package/dist/types/transports.d.ts +5 -4
- package/dist/types/transports.js.map +1 -1
- package/package.json +5 -5
- package/src/platform.context.ts +11 -10
- package/src/types/transports.ts +6 -4
|
@@ -3,6 +3,7 @@ import type { INestApplication } from '@nestjs/common/interfaces';
|
|
|
3
3
|
import type { NestApplicationOptions } from '@nestjs/common/interfaces/nest-application-options.interface';
|
|
4
4
|
import type { AbstractHttpAdapter } from '@nestjs/core';
|
|
5
5
|
import type { RsdkMetadataProvider } from '@rsdk/metadata';
|
|
6
|
+
import type { ConfigContext } from './config';
|
|
6
7
|
import type { PlatformAppMetadata, PlatformExtendedOptions, PlatformOptions } from './types';
|
|
7
8
|
/**
|
|
8
9
|
* Агрегат для хранения опций приложения, а также методы для конфигурации и запуска приложения
|
|
@@ -59,9 +60,9 @@ export declare class PlatformContext {
|
|
|
59
60
|
*/
|
|
60
61
|
getNestFactoryCreateOptions(): Promise<[
|
|
61
62
|
httpAdapter: AbstractHttpAdapter,
|
|
62
|
-
options
|
|
63
|
+
options: NestApplicationOptions
|
|
63
64
|
]>;
|
|
65
|
+
getConfigContext(): Promise<ConfigContext>;
|
|
64
66
|
private assertPluginCompatibility;
|
|
65
67
|
private assertTransportCompatibility;
|
|
66
|
-
private getConfigContext;
|
|
67
68
|
}
|
package/dist/platform.context.js
CHANGED
|
@@ -110,15 +110,17 @@ class PlatformContext {
|
|
|
110
110
|
* Производит все необходимые проверки и инициализации транспортов, не запускает приложение
|
|
111
111
|
*/
|
|
112
112
|
async configureApp(app) {
|
|
113
|
-
const
|
|
114
|
-
const awaiter = this.httpTransport?.configureApp(app, configContext);
|
|
113
|
+
const awaiter = this.httpTransport?.configureApp(app, this, this.logger);
|
|
115
114
|
if (awaiter instanceof Promise) {
|
|
116
115
|
await awaiter;
|
|
117
116
|
}
|
|
118
117
|
app.enableShutdownHooks();
|
|
119
118
|
const transports = this.options.transports ?? [];
|
|
120
119
|
for (const transport of transports.filter(types_1.isMicroserviceTransport)) {
|
|
121
|
-
transport.init(
|
|
120
|
+
const awaiter = transport.init(app);
|
|
121
|
+
if (awaiter instanceof Promise) {
|
|
122
|
+
await awaiter;
|
|
123
|
+
}
|
|
122
124
|
const options = transport.createMicroserviceOptions();
|
|
123
125
|
const microservice = app.connectMicroservice(options, {
|
|
124
126
|
inheritAppConfig: true,
|
|
@@ -164,7 +166,7 @@ class PlatformContext {
|
|
|
164
166
|
*/
|
|
165
167
|
async getNestFactoryCreateOptions() {
|
|
166
168
|
const configContext = await this.getConfigContext();
|
|
167
|
-
const httpAdapter =
|
|
169
|
+
const httpAdapter = this.httpTransport?.createAdapter(configContext);
|
|
168
170
|
return [
|
|
169
171
|
httpAdapter ?? new noop_http_adapter_1.NoopHttpAdapter(),
|
|
170
172
|
{
|
|
@@ -174,6 +176,9 @@ class PlatformContext {
|
|
|
174
176
|
},
|
|
175
177
|
];
|
|
176
178
|
}
|
|
179
|
+
getConfigContext() {
|
|
180
|
+
return this.aggregator.getConfigContext();
|
|
181
|
+
}
|
|
177
182
|
assertPluginCompatibility(options) {
|
|
178
183
|
if (!options.plugins) {
|
|
179
184
|
return;
|
|
@@ -196,9 +201,6 @@ class PlatformContext {
|
|
|
196
201
|
}
|
|
197
202
|
}
|
|
198
203
|
}
|
|
199
|
-
getConfigContext() {
|
|
200
|
-
return this.aggregator.getConfigContext();
|
|
201
|
-
}
|
|
202
204
|
}
|
|
203
205
|
exports.PlatformContext = PlatformContext;
|
|
204
206
|
//# sourceMappingURL=platform.context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.context.js","sourceRoot":"","sources":["../src/platform.context.ts"],"names":[],"mappings":";;;AAMA,2CAA0D;AAE1D,mCAA+C;AAE/C,kEAAiE;AACjE,0DAAoE;AACpE,yFAAoF;AACpF,kDAA+C;AAC/C,iDAA+C;AAE/C,6DAAyD;AACzD,6CAGsB;AACtB,uCAA8C;AAC9C,2DAAsD;AAQtD,mCAMiB;AAEjB;;GAEG;AACH,MAAa,eAAe;IAsBf;IACA;IAtBM,MAAM,CAAU;IAChB,aAAa,GAAG,IAAI,GAAG,EAGrC,CAAC;IAEa,aAAa,CAA6B;IAC1C,UAAU,CAAoB;IAEvC,gBAAgB,CAA2B;IAEnD;;;;;;;;OAQG;IACH,YACW,OAAwB,EACxB,iBAMR,EACD,MAAgB;QARP,YAAO,GAAP,OAAO,CAAiB;QACxB,sBAAiB,GAAjB,iBAAiB,CAMzB;QAGD,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAExC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,uBAAe,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,GAAG,IAAI,sCAAiB,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,oBAAU,EAAE,CAAC,CAAC,CAAC,uBAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,eAAe;QACjB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;QAED,MAAM,YAAY,GAAG,mBAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACjE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,YAAY,IAAI,IAAI,CAAC;QAE7D;;;WAGG;QACH,MAAM,YAAY,GAAG,iCAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC;QACnD,IAAI,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,IAAA,4BAAa,EAAC,OAAO,CAAC,CAAC;YACvB,IAAI,CAAC,YAAY,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC/B,MAAM,IAAI,oCAAuB,CAAC,IAAI,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAED,MAAM,eAAe,GAA4B;YAC/C,QAAQ;YACR,WAAW;YACX,IAAI,EAAE,OAAO;YACb,OAAO;YACP,GAAG,IAAI,CAAC,OAAO;SAChB,CAAC;QAEF,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,uBAAuB;QAC3B,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,uBAAuB,EAAE,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW;QACf,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAElE,MAAM,YAAY,GAAG,IAAI,iDAAsB,CAC7C,oBAAoB,CACrB,CAAC,WAAW,EAAE,CAAC;QAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC;QACrC,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAE1E,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,SAAS;YAEpB,MAAM,EAAE;gBACN,MAAM,EAAE,OAAO,CAAC,IAAI;gBACpB,QAAQ,EAAE,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAChD,CAAC,CAAC,OAAO,EAAE,QAAQ,CAGlB,EAAE,EAAE,CACH,IAAA,gCAAwB,EAAC;oBACvB,GAAG,QAAQ;oBACX,eAAe,EAAE,OAAO,CAAC,IAAI;iBAC9B,CAAC,CACL;gBACD,OAAO,EAAE,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAE3C,UAAU,EAAE,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CACnD,iCAAyB,CAC1B;aACF;SACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,GAAqB;QACtC,MAAM,
|
|
1
|
+
{"version":3,"file":"platform.context.js","sourceRoot":"","sources":["../src/platform.context.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,8 @@ import type { MicroserviceOptions } from '@nestjs/microservices';
|
|
|
5
5
|
import type { Constructor } from '@rsdk/common';
|
|
6
6
|
import type { ConfigContext } from '../config';
|
|
7
7
|
import type { IErrorsFormatter, IErrorsSender, IErrorsTransformer } from '../exceptions.handling';
|
|
8
|
-
import type { LogFormatter } from '../logging';
|
|
8
|
+
import type { ILogger, LogFormatter } from '../logging';
|
|
9
|
+
import type { PlatformContext } from '../platform.context';
|
|
9
10
|
import type { NestModuleDefinitions } from './options';
|
|
10
11
|
export interface GenericHeaders {
|
|
11
12
|
get(key: string): string | undefined;
|
|
@@ -91,7 +92,7 @@ export interface IMicroserviceTransport extends ITransport {
|
|
|
91
92
|
* Should be called before passing options
|
|
92
93
|
* to app.connectMicroservice()
|
|
93
94
|
*/
|
|
94
|
-
init(
|
|
95
|
+
init(app: INestApplication): void | Promise<void>;
|
|
95
96
|
/**
|
|
96
97
|
* Additional logic that will be ran after
|
|
97
98
|
* microservice is started. Most common use
|
|
@@ -111,7 +112,7 @@ export interface IHttpTransport extends IPrimaryTransport {
|
|
|
111
112
|
/**
|
|
112
113
|
* @returns AbstractHttpAdapter (from @nestjs/core)
|
|
113
114
|
*
|
|
114
|
-
* Most common are ExpressAdapter and
|
|
115
|
+
* Most common are ExpressAdapter and FastifyAdapter,
|
|
115
116
|
* but custom adapter can be implemented if needed
|
|
116
117
|
*/
|
|
117
118
|
createAdapter(configContext: ConfigContext): AbstractHttpAdapter;
|
|
@@ -120,7 +121,7 @@ export interface IHttpTransport extends IPrimaryTransport {
|
|
|
120
121
|
* middleware, body parsers and other.
|
|
121
122
|
* @param app INestApplication
|
|
122
123
|
*/
|
|
123
|
-
configureApp(app: INestApplication,
|
|
124
|
+
configureApp(app: INestApplication, context: PlatformContext, logger: ILogger): Promise<void> | void;
|
|
124
125
|
createHttpOptions(configContext: ConfigContext): HttpOptions;
|
|
125
126
|
}
|
|
126
127
|
export declare const isPrimaryTransport: (t: ITransport) => t is IPrimaryTransport;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transports.js","sourceRoot":"","sources":["../../src/types/transports.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"transports.js","sourceRoot":"","sources":["../../src/types/transports.ts"],"names":[],"mappings":";;;AAqCO,MAAM,iBAAiB,GAAG,CAAC,CAAU,EAA2B,EAAE,CACvE,OAAQ,CAAS,EAAE,UAAU,KAAK,UAAU,CAAC;AADlC,QAAA,iBAAiB,qBACiB;AAgIxC,MAAM,kBAAkB,GAAG,CAAC,CAAa,EAA0B,EAAE,CAC1E,OAAQ,CAAuB,CAAC,mBAAmB,KAAK,UAAU;IAClE,OAAQ,CAAuB,CAAC,oBAAoB,KAAK,UAAU,CAAC;AAFzD,QAAA,kBAAkB,sBAEuC;AAE/D,MAAM,eAAe,GAAG,CAAC,CAAa,EAAuB,EAAE,CACpE,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;AADhB,QAAA,eAAe,mBACC;AAEtB,MAAM,uBAAuB,GAAG,CACrC,CAAa,EACgB,EAAE,CAC/B,OAAQ,CAA4B,CAAC,yBAAyB,KAAK,UAAU,CAAC;AAHnE,QAAA,uBAAuB,2BAG4C"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rsdk/core",
|
|
3
|
-
"version": "6.0.0-next.
|
|
3
|
+
"version": "6.0.0-next.20",
|
|
4
4
|
"description": "Nestjs based microservice chassis",
|
|
5
5
|
"license": "Apache License 2.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
"prom-client": "^14.2.0"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"@nestjs/common": "
|
|
24
|
-
"@nestjs/core": "
|
|
25
|
-
"@nestjs/microservices": "
|
|
23
|
+
"@nestjs/common": "<=10.4.8",
|
|
24
|
+
"@nestjs/core": "<=10.4.8",
|
|
25
|
+
"@nestjs/microservices": "<=10.4.8",
|
|
26
26
|
"@opentelemetry/api": "1.9.0",
|
|
27
27
|
"@opentelemetry/exporter-logs-otlp-http": "0.55.0",
|
|
28
28
|
"@rsdk/actx": "*",
|
|
@@ -50,5 +50,5 @@
|
|
|
50
50
|
"optional": true
|
|
51
51
|
}
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "8967e1d9b691808f5e0b4c6d6dff0fefae3b2c32"
|
|
54
54
|
}
|
package/src/platform.context.ts
CHANGED
|
@@ -169,9 +169,7 @@ export class PlatformContext {
|
|
|
169
169
|
* Производит все необходимые проверки и инициализации транспортов, не запускает приложение
|
|
170
170
|
*/
|
|
171
171
|
async configureApp(app: INestApplication): Promise<void> {
|
|
172
|
-
const
|
|
173
|
-
|
|
174
|
-
const awaiter = this.httpTransport?.configureApp(app, configContext);
|
|
172
|
+
const awaiter = this.httpTransport?.configureApp(app, this, this.logger);
|
|
175
173
|
if (awaiter instanceof Promise) {
|
|
176
174
|
await awaiter;
|
|
177
175
|
}
|
|
@@ -181,7 +179,10 @@ export class PlatformContext {
|
|
|
181
179
|
const transports = this.options.transports ?? ([] as any[]);
|
|
182
180
|
|
|
183
181
|
for (const transport of transports.filter(isMicroserviceTransport)) {
|
|
184
|
-
transport.init(
|
|
182
|
+
const awaiter = transport.init(app);
|
|
183
|
+
if (awaiter instanceof Promise) {
|
|
184
|
+
await awaiter;
|
|
185
|
+
}
|
|
185
186
|
|
|
186
187
|
const options = transport.createMicroserviceOptions();
|
|
187
188
|
const microservice = app.connectMicroservice(options, {
|
|
@@ -234,10 +235,10 @@ export class PlatformContext {
|
|
|
234
235
|
* NestFactory.create(context.root, ...context.getNestFactoryCreateOptions())
|
|
235
236
|
*/
|
|
236
237
|
async getNestFactoryCreateOptions(): Promise<
|
|
237
|
-
[httpAdapter: AbstractHttpAdapter, options
|
|
238
|
+
[httpAdapter: AbstractHttpAdapter, options: NestApplicationOptions]
|
|
238
239
|
> {
|
|
239
240
|
const configContext = await this.getConfigContext();
|
|
240
|
-
const httpAdapter =
|
|
241
|
+
const httpAdapter = this.httpTransport?.createAdapter(configContext);
|
|
241
242
|
|
|
242
243
|
return [
|
|
243
244
|
httpAdapter ?? new NoopHttpAdapter(),
|
|
@@ -249,6 +250,10 @@ export class PlatformContext {
|
|
|
249
250
|
];
|
|
250
251
|
}
|
|
251
252
|
|
|
253
|
+
getConfigContext(): Promise<ConfigContext> {
|
|
254
|
+
return this.aggregator.getConfigContext();
|
|
255
|
+
}
|
|
256
|
+
|
|
252
257
|
private assertPluginCompatibility(options: PlatformOptions): void {
|
|
253
258
|
if (!options.plugins) {
|
|
254
259
|
return;
|
|
@@ -275,8 +280,4 @@ export class PlatformContext {
|
|
|
275
280
|
}
|
|
276
281
|
}
|
|
277
282
|
}
|
|
278
|
-
|
|
279
|
-
private getConfigContext(): Promise<ConfigContext> {
|
|
280
|
-
return this.aggregator.getConfigContext();
|
|
281
|
-
}
|
|
282
283
|
}
|
package/src/types/transports.ts
CHANGED
|
@@ -14,7 +14,8 @@ import type {
|
|
|
14
14
|
IErrorsSender,
|
|
15
15
|
IErrorsTransformer,
|
|
16
16
|
} from '../exceptions.handling';
|
|
17
|
-
import type { LogFormatter } from '../logging';
|
|
17
|
+
import type { ILogger, LogFormatter } from '../logging';
|
|
18
|
+
import type { PlatformContext } from '../platform.context';
|
|
18
19
|
|
|
19
20
|
import type { NestModuleDefinitions } from './options';
|
|
20
21
|
|
|
@@ -121,7 +122,7 @@ export interface IMicroserviceTransport extends ITransport {
|
|
|
121
122
|
* Should be called before passing options
|
|
122
123
|
* to app.connectMicroservice()
|
|
123
124
|
*/
|
|
124
|
-
init(
|
|
125
|
+
init(app: INestApplication): void | Promise<void>;
|
|
125
126
|
|
|
126
127
|
/**
|
|
127
128
|
* Additional logic that will be ran after
|
|
@@ -144,7 +145,7 @@ export interface IHttpTransport extends IPrimaryTransport {
|
|
|
144
145
|
/**
|
|
145
146
|
* @returns AbstractHttpAdapter (from @nestjs/core)
|
|
146
147
|
*
|
|
147
|
-
* Most common are ExpressAdapter and
|
|
148
|
+
* Most common are ExpressAdapter and FastifyAdapter,
|
|
148
149
|
* but custom adapter can be implemented if needed
|
|
149
150
|
*/
|
|
150
151
|
createAdapter(configContext: ConfigContext): AbstractHttpAdapter;
|
|
@@ -156,7 +157,8 @@ export interface IHttpTransport extends IPrimaryTransport {
|
|
|
156
157
|
*/
|
|
157
158
|
configureApp(
|
|
158
159
|
app: INestApplication,
|
|
159
|
-
|
|
160
|
+
context: PlatformContext,
|
|
161
|
+
logger: ILogger,
|
|
160
162
|
): Promise<void> | void;
|
|
161
163
|
|
|
162
164
|
createHttpOptions(configContext: ConfigContext): HttpOptions;
|