@haku-sci/utils 2.0.1 → 2.2.1

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.
@@ -0,0 +1,2 @@
1
+ export declare const RESTRICT_SENDER_KEY = "restrict_sender";
2
+ export declare function RestrictSender(allowedSenders: string[] | string): <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RESTRICT_SENDER_KEY = void 0;
4
+ exports.RestrictSender = RestrictSender;
5
+ const common_1 = require("@nestjs/common");
6
+ const restrict_sender_interceptor_1 = require("./restrict-sender.interceptor");
7
+ exports.RESTRICT_SENDER_KEY = 'restrict_sender';
8
+ function RestrictSender(allowedSenders) {
9
+ return (0, common_1.applyDecorators)((0, common_1.SetMetadata)(exports.RESTRICT_SENDER_KEY, allowedSenders), (0, common_1.UseInterceptors)(restrict_sender_interceptor_1.RestrictSenderInterceptor));
10
+ }
11
+ //# sourceMappingURL=restrict-sender.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restrict-sender.decorator.js","sourceRoot":"","sources":["../../src/TCP/restrict-sender.decorator.ts"],"names":[],"mappings":";;;AAKA,wCAKC;AAVD,2CAA+E;AAC/E,+EAA0E;AAE7D,QAAA,mBAAmB,GAAG,iBAAiB,CAAC;AAErD,SAAgB,cAAc,CAAC,cAAiC;IAC9D,OAAO,IAAA,wBAAe,EACpB,IAAA,oBAAW,EAAC,2BAAmB,EAAE,cAAc,CAAC,EAChD,IAAA,wBAAe,EAAC,uDAAyB,CAAC,CAC3C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { NestInterceptor, ExecutionContext, CallHandler } from '@nestjs/common';
2
+ import { Observable } from 'rxjs';
3
+ import { Reflector } from '@nestjs/core';
4
+ export declare class RestrictSenderInterceptor implements NestInterceptor {
5
+ private reflector;
6
+ constructor(reflector: Reflector);
7
+ intercept(context: ExecutionContext, next: CallHandler): Observable<any>;
8
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RestrictSenderInterceptor = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const core_1 = require("@nestjs/core");
15
+ const restrict_sender_decorator_1 = require("./restrict-sender.decorator");
16
+ let RestrictSenderInterceptor = class RestrictSenderInterceptor {
17
+ constructor(reflector) {
18
+ this.reflector = reflector;
19
+ }
20
+ intercept(context, next) {
21
+ const ctx = context.switchToRpc();
22
+ const data = ctx.getData();
23
+ const sender = data?.sender;
24
+ const handler = context.getHandler();
25
+ const target = context.getClass();
26
+ const methodRestriction = this.reflector.get(restrict_sender_decorator_1.RESTRICT_SENDER_KEY, handler);
27
+ const classRestriction = this.reflector.get(restrict_sender_decorator_1.RESTRICT_SENDER_KEY, target);
28
+ if (methodRestriction === '*') {
29
+ return next.handle();
30
+ }
31
+ const allowedSenders = methodRestriction ?? classRestriction ?? [];
32
+ if (allowedSenders === '*') {
33
+ return next.handle();
34
+ }
35
+ if (allowedSenders !== sender && !allowedSenders.includes(sender)) {
36
+ throw new common_1.ForbiddenException(`Sender '${sender}' is not authorized`);
37
+ }
38
+ return next.handle();
39
+ }
40
+ };
41
+ exports.RestrictSenderInterceptor = RestrictSenderInterceptor;
42
+ exports.RestrictSenderInterceptor = RestrictSenderInterceptor = __decorate([
43
+ (0, common_1.Injectable)(),
44
+ __metadata("design:paramtypes", [core_1.Reflector])
45
+ ], RestrictSenderInterceptor);
46
+ //# sourceMappingURL=restrict-sender.interceptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restrict-sender.interceptor.js","sourceRoot":"","sources":["../../src/TCP/restrict-sender.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAMwB;AAExB,uCAAyC;AACzC,2EAAkE;AAG3D,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IACpC,YAAoB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAI,CAAC;IAE7C,SAAS,CAAC,OAAyB,EAAE,IAAiB;QACpD,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC;QAE5B,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QAElC,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAC1C,+CAAmB,EACnB,OAAO,CACR,CAAC;QAEF,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CACzC,+CAAmB,EACnB,MAAM,CACP,CAAC;QAGF,IAAI,iBAAiB,KAAK,GAAG,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC;QAGD,MAAM,cAAc,GAAsB,iBAAiB,IAAI,gBAAgB,IAAI,EAAE,CAAC;QAEtF,IAAI,cAAc,KAAK,GAAG,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC;QAED,IAAI,cAAc,KAAK,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,2BAAkB,CAAC,WAAW,MAAM,qBAAqB,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;CACF,CAAA;AAvCY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,mBAAU,GAAE;qCAEoB,gBAAS;GAD7B,yBAAyB,CAuCrC"}
@@ -0,0 +1,2 @@
1
+ export declare class TcpModule {
2
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.TcpModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const tcp_service_1 = require("./tcp.service");
12
+ const core_1 = require("@nestjs/core");
13
+ const restrict_sender_interceptor_1 = require("./restrict-sender.interceptor");
14
+ let TcpModule = class TcpModule {
15
+ };
16
+ exports.TcpModule = TcpModule;
17
+ exports.TcpModule = TcpModule = __decorate([
18
+ (0, common_1.Module)({
19
+ providers: [tcp_service_1.TCPService, core_1.Reflector, restrict_sender_interceptor_1.RestrictSenderInterceptor],
20
+ exports: [tcp_service_1.TCPService]
21
+ })
22
+ ], TcpModule);
23
+ //# sourceMappingURL=tcp.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tcp.module.js","sourceRoot":"","sources":["../../src/TCP/tcp.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,+CAA2C;AAC3C,uCAAyC;AACzC,+EAA0E;AAMnE,IAAM,SAAS,GAAf,MAAM,SAAS;CAAI,CAAA;AAAb,8BAAS;oBAAT,SAAS;IAJrB,IAAA,eAAM,EAAC;QACJ,SAAS,EAAE,CAAC,wBAAU,EAAE,gBAAS,EAAE,uDAAyB,CAAC;QAC7D,OAAO,EAAE,CAAC,wBAAU,CAAC;KACxB,CAAC;GACW,SAAS,CAAI"}
@@ -0,0 +1,6 @@
1
+ import { Logger } from '@nestjs/common';
2
+ export declare class TCPService {
3
+ static sendMessage(service: any, action: string, resource?: string, payload?: any): Promise<any>;
4
+ static registerHakuSciMessageHandlers(app: any, logger: Logger): Promise<void>;
5
+ private static wrapHandler;
6
+ }
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var TCPService_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.TCPService = void 0;
11
+ const microservices_1 = require("@nestjs/microservices");
12
+ const rxjs_1 = require("rxjs");
13
+ const utils = require("../utils");
14
+ const consul_1 = require("../microservice/consul");
15
+ const common_1 = require("@nestjs/common");
16
+ const exceptionFilter_1 = require("../microservice/exceptionFilter");
17
+ const constants_1 = require("@nestjs/microservices/constants");
18
+ const constants_2 = require("@nestjs/common/constants");
19
+ const nestjs_discovery_1 = require("@golevelup/nestjs-discovery");
20
+ let TCPService = TCPService_1 = class TCPService {
21
+ static async sendMessage(service, action, resource, payload) {
22
+ const client = await microservices_1.ClientProxyFactory.create({
23
+ transport: microservices_1.Transport.TCP,
24
+ options: await consul_1.Consul.getServiceURI(service),
25
+ });
26
+ try {
27
+ payload.sender = await utils.microServiceName();
28
+ let response$ = await client.send([resource, action].join("/"), payload).pipe((0, rxjs_1.catchError)(err => (0, rxjs_1.throwError)(() => new common_1.HttpException(err, err.status || 400))));
29
+ const watchdogTimeout = parseInt(process.env.WATCHDOG);
30
+ if (!isNaN(watchdogTimeout) && watchdogTimeout > 0)
31
+ response$ = response$.pipe((0, rxjs_1.timeout)({ first: watchdogTimeout }));
32
+ response$ = response$.pipe((0, rxjs_1.defaultIfEmpty)(null));
33
+ const result = await (0, rxjs_1.lastValueFrom)(response$);
34
+ if (result?.error)
35
+ (0, rxjs_1.throwError)(() => new Error(`[${service}] ${result.message}`));
36
+ return result;
37
+ }
38
+ finally {
39
+ try {
40
+ await client.close();
41
+ }
42
+ catch (closeError) {
43
+ console.error("Error closing client:", closeError.message);
44
+ }
45
+ }
46
+ }
47
+ static async registerHakuSciMessageHandlers(app, logger) {
48
+ const moduleRef = app.select(nestjs_discovery_1.DiscoveryModule);
49
+ const discoveryService = moduleRef.get(nestjs_discovery_1.DiscoveryService, { strict: false });
50
+ const controllers = await discoveryService.controllers(() => true);
51
+ for (const { instance } of controllers) {
52
+ const resource = Reflect.getMetadata(constants_2.PATH_METADATA, instance.constructor).replace("/", "");
53
+ const prototype = Object.getPrototypeOf(instance);
54
+ for (const propertyName of Object.getOwnPropertyNames(prototype)) {
55
+ const method = prototype[propertyName];
56
+ if (propertyName === 'constructor' || typeof method !== 'function')
57
+ continue;
58
+ const action = Reflect.getMetadata(constants_1.PATTERN_METADATA, method)?.[0];
59
+ if (action) {
60
+ const handler = TCPService_1.wrapHandler(instance, propertyName, logger);
61
+ app.serverInstance.addHandler([resource, action].join("/"), handler, false);
62
+ }
63
+ }
64
+ }
65
+ }
66
+ static wrapHandler(instance, methodName, logger) {
67
+ return async function boundHandler(data, context) {
68
+ try {
69
+ return await instance[methodName].call(instance, data);
70
+ }
71
+ catch (err) {
72
+ const host = {
73
+ switchToRpc: () => ({ getContext: () => context }),
74
+ getArgByIndex: (i) => (i === 0 ? data : context),
75
+ };
76
+ return new exceptionFilter_1.AllExceptionsFilter(logger).catch(err, host);
77
+ }
78
+ };
79
+ }
80
+ };
81
+ exports.TCPService = TCPService;
82
+ exports.TCPService = TCPService = TCPService_1 = __decorate([
83
+ (0, common_1.Injectable)()
84
+ ], TCPService);
85
+ //# sourceMappingURL=tcp.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tcp.service.js","sourceRoot":"","sources":["../../src/TCP/tcp.service.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,8 @@
1
1
  export * from './microservice/microservice.service';
2
- export * from './microservice/tcp.service';
2
+ export * from './TCP/tcp.service';
3
+ export * from './TCP/tcp.module';
4
+ export * from './TCP/restrict-sender.decorator';
5
+ export * from './TCP/restrict-sender.interceptor';
3
6
  export * from './rabbit-mq/rabbit-mq.module';
4
7
  export * from './rabbit-mq/rabbit-mq.service';
5
8
  export * from './utils';
package/dist/index.js CHANGED
@@ -15,7 +15,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./microservice/microservice.service"), exports);
18
- __exportStar(require("./microservice/tcp.service"), exports);
18
+ __exportStar(require("./TCP/tcp.service"), exports);
19
+ __exportStar(require("./TCP/tcp.module"), exports);
20
+ __exportStar(require("./TCP/restrict-sender.decorator"), exports);
21
+ __exportStar(require("./TCP/restrict-sender.interceptor"), exports);
19
22
  __exportStar(require("./rabbit-mq/rabbit-mq.module"), exports);
20
23
  __exportStar(require("./rabbit-mq/rabbit-mq.service"), exports);
21
24
  __exportStar(require("./utils"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAoD;AACpD,6DAA2C;AAC3C,+DAA6C;AAC7C,gEAA8C;AAC9C,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAoD;AACpD,oDAAkC;AAClC,mDAAiC;AACjC,kEAAgD;AAChD,oEAAkD;AAClD,+DAA6C;AAC7C,gEAA8C;AAC9C,0CAAwB"}
@@ -1 +1 @@
1
- {"version":3,"file":"consul.js","sourceRoot":"","sources":["../../src/microservice/consul.ts"],"names":[],"mappings":";;;AAAA,iCAA0B;AAE1B,kCAAiC;AACjC,2CAAqE;AAErE,MAAa,MAAM;IACf,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,aAA6B,EAAC,MAAa;QACtE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;YAC5B,OAAO;QACT,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACxD,MAAM,WAAW,GAAG;YAClB,EAAE,EAAE,gBAAgB;YACpB,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,aAAa,CAAC,OAAO;YAC9B,IAAI,EAAE,aAAa,CAAC,IAAI;YACxB,KAAK,EAAE;gBACL,GAAG,EAAE,GAAG,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE;gBACrD,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,8BAA8B,EAAE,IAAI;aACrC;SACF,CAAC;QAEF,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,4BAA4B,EAAE,WAAW,CAAC,CAAC;QACvF,MAAM,CAAC,GAAG,CAAC,qCAAqC,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IACjG,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,WAAmB;QAC5C,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,uBAAuB,WAAW,EAAE,CAAC,CAAC;QACnG,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC;QAElC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;YAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC;YACjC,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,oCAA2B,CAAC,WAAW,WAAW,8BAA8B,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;CACJ;AAtCD,wBAsCC"}
1
+ {"version":3,"file":"consul.js","sourceRoot":"","sources":["../../src/microservice/consul.ts"],"names":[],"mappings":";;;AAAA,iCAA0B;AAE1B,kCAAiC;AACjC,2CAAqE;AAErE,MAAa,MAAM;IACjB,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,aAA8B,EAAE,MAAc;QACzE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;YAC5B,OAAO;QACT,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACxD,MAAM,WAAW,GAAG;YAClB,EAAE,EAAE,gBAAgB;YACpB,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,aAAa,CAAC,OAAO;YAC9B,IAAI,EAAE,aAAa,CAAC,IAAI;YACxB,KAAK,EAAE;gBACL,GAAG,EAAE,GAAG,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE;gBACrD,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,IAAI;gBACb,8BAA8B,EAAE,IAAI;aACrC;SACF,CAAC;QAEF,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,4BAA4B,EAAE,WAAW,CAAC,CAAC;QACvF,MAAM,CAAC,GAAG,CAAC,qCAAqC,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IACjG,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,WAAmB;QAC5C,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,uBAAuB,WAAW,EAAE,CAAC,CAAC;QACnG,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC;QAElC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;YAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC;YACjC,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,oCAA2B,CAAC,WAAW,WAAW,8BAA8B,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;CACF;AAtCD,wBAsCC"}
@@ -1,7 +1,10 @@
1
- import { ArgumentsHost, RpcExceptionFilter, Logger } from '@nestjs/common';
1
+ import { ArgumentsHost, Logger, RpcExceptionFilter } from '@nestjs/common';
2
2
  import { Observable } from 'rxjs';
3
3
  export declare class AllExceptionsFilter implements RpcExceptionFilter<any> {
4
4
  private readonly logger;
5
5
  constructor(logger: Logger);
6
+ handleUnknownError(exception: any, status: string): Observable<never>;
7
+ isError(exception: any): exception is Error;
6
8
  catch(exception: any, host: ArgumentsHost): Observable<any>;
9
+ private handleException;
7
10
  }
@@ -11,23 +11,29 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.AllExceptionsFilter = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
- const microservices_1 = require("@nestjs/microservices");
15
14
  const rxjs_1 = require("rxjs");
15
+ const microservices_1 = require("@nestjs/microservices");
16
16
  let AllExceptionsFilter = class AllExceptionsFilter {
17
17
  constructor(logger) {
18
18
  this.logger = logger;
19
19
  this.logger.log('ExceptionsHandler initialized');
20
20
  }
21
+ handleUnknownError(exception, status) {
22
+ return this.handleException(exception);
23
+ }
24
+ isError(exception) {
25
+ throw new Error('Method not implemented.');
26
+ }
21
27
  catch(exception, host) {
22
- this.logger.error('Exception caught in filter:', exception);
23
- const { message, status, details } = exception instanceof microservices_1.RpcException ? exception.getError() : exception;
24
- this.logger.error('Error payload:', message);
25
- return (0, rxjs_1.throwError)(() => new common_1.HttpException(message, status || 500, { description: details }));
28
+ return this.handleException(exception);
29
+ }
30
+ handleException(exception) {
31
+ return (0, rxjs_1.throwError)(() => new microservices_1.RpcException(exception));
26
32
  }
27
33
  };
28
34
  exports.AllExceptionsFilter = AllExceptionsFilter;
29
35
  exports.AllExceptionsFilter = AllExceptionsFilter = __decorate([
30
- (0, common_1.Catch)(),
36
+ (0, common_1.Catch)(microservices_1.RpcException),
31
37
  __metadata("design:paramtypes", [common_1.Logger])
32
38
  ], AllExceptionsFilter);
33
39
  //# sourceMappingURL=exceptionFilter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exceptionFilter.js","sourceRoot":"","sources":["../../src/microservice/exceptionFilter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAiG;AACjG,yDAAqD;AACrD,+BAA8C;AAGvC,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAE9B,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAC,MAAM,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,SAAc,EAAE,IAAmB;QACvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,YAAY,4BAAY,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAS,CAAC,CAAC,CAAC,SAAS,CAAA;QAEhH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAE7C,OAAO,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,IAAI,sBAAa,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAC/F,CAAC;CACF,CAAA;AAfY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,cAAK,GAAE;qCAGc,eAAM;GAFf,mBAAmB,CAe/B"}
1
+ {"version":3,"file":"exceptionFilter.js","sourceRoot":"","sources":["../../src/microservice/exceptionFilter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAkF;AAClF,+BAA8C;AAC9C,yDAAqD;AAE9C,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAE9B,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IACD,kBAAkB,CAAC,SAAc,EAAE,MAAc;QAC/C,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAsB,CAAC;IAC9D,CAAC;IAED,OAAO,CAAC,SAAc;QACpB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,SAAc,EAAE,IAAmB;QACvC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC;IAEO,eAAe,CAAC,SAAc;QACpC,OAAO,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,IAAI,4BAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IACvD,CAAC;CACF,CAAA;AArBY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,cAAK,EAAC,4BAAY,CAAC;qCAGE,eAAM;GAFf,mBAAmB,CAqB/B"}
@@ -1,8 +1,8 @@
1
+ import { Logger } from '@nestjs/common';
1
2
  export declare class Microservice {
2
3
  private static serverAddress;
3
- private static logger;
4
+ static logger: Logger;
4
5
  static bootstrapMicroservice(appModule: any): Promise<void>;
5
- static registerHakuSciMessageHandlers(app: any): Promise<void>;
6
6
  private static isPortFree;
7
7
  private static setServerAddress;
8
8
  private static startMainMicroService;
@@ -7,11 +7,9 @@ const microservices_1 = require("@nestjs/microservices");
7
7
  const net = require("net");
8
8
  const utils = require("../utils");
9
9
  const exceptionFilter_1 = require("./exceptionFilter");
10
- const nestjs_discovery_1 = require("@golevelup/nestjs-discovery");
11
- const constants_1 = require("@nestjs/common/constants");
12
- const constants_2 = require("@nestjs/microservices/constants");
13
10
  const os = require("os");
14
11
  const consul_1 = require("./consul");
12
+ const tcp_service_1 = require("../TCP/tcp.service");
15
13
  class Microservice {
16
14
  static async bootstrapMicroservice(appModule) {
17
15
  this.setServerAddress();
@@ -21,28 +19,9 @@ class Microservice {
21
19
  postGresService.createDatabaseIfNotExists();
22
20
  }
23
21
  const app = await this.startMainMicroService(appModule);
24
- await this.registerHakuSciMessageHandlers(app);
22
+ await tcp_service_1.TCPService.registerHakuSciMessageHandlers(app, this.logger);
25
23
  consul_1.Consul.registerService(this.serverAddress, this.logger);
26
24
  }
27
- static async registerHakuSciMessageHandlers(app) {
28
- const moduleRef = app.select(nestjs_discovery_1.DiscoveryModule);
29
- const discoveryService = moduleRef.get(nestjs_discovery_1.DiscoveryService, { strict: false });
30
- const controllers = await discoveryService.controllers(() => true);
31
- for (const { instance } of controllers) {
32
- const resource = Reflect.getMetadata(constants_1.PATH_METADATA, instance.constructor).replace("/", "");
33
- const prototype = Object.getPrototypeOf(instance);
34
- for (const propertyName of Object.getOwnPropertyNames(prototype)) {
35
- const method = prototype[propertyName];
36
- if (propertyName === 'constructor' || typeof method !== 'function')
37
- continue;
38
- const action = Reflect.getMetadata(constants_2.PATTERN_METADATA, method)?.[0];
39
- if (action) {
40
- const handler = method.bind(instance);
41
- app.serverInstance.addHandler([resource, action].join("/"), handler, false);
42
- }
43
- }
44
- }
45
- }
46
25
  static isPortFree(port) {
47
26
  return new Promise((resolve) => {
48
27
  const server = net.createServer();
@@ -61,7 +40,7 @@ class Microservice {
61
40
  });
62
41
  }
63
42
  static async setServerAddress() {
64
- this.serverAddress.address = Object.values(os.networkInterfaces())
43
+ this.serverAddress.address = process.env.DEBUG ? "127.0.0.1" : Object.values(os.networkInterfaces())
65
44
  .flatMap((iface) => iface ?? [])
66
45
  .find((addr) => addr.family === 'IPv4' && !addr.internal)
67
46
  .address;
@@ -1 +1 @@
1
- {"version":3,"file":"microservice.service.js","sourceRoot":"","sources":["../../src/microservice/microservice.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"microservice.service.js","sourceRoot":"","sources":["../../src/microservice/microservice.service.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1 @@
1
- export declare class TCPService {
2
- static sendMessage(service: any, action: string, resource?: string, payload?: any): Promise<any>;
3
- }
1
+ export declare function RestrictSender(allowedSenders: string[]): <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
@@ -1,40 +1,43 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TCPService = void 0;
4
- const microservices_1 = require("@nestjs/microservices");
5
- const rxjs_1 = require("rxjs");
6
- const utils = require("../utils");
7
- const consul_1 = require("./consul");
8
- class TCPService {
9
- static async sendMessage(service, action, resource, payload) {
10
- const client = await microservices_1.ClientProxyFactory.create({
11
- transport: microservices_1.Transport.TCP,
12
- options: await consul_1.Consul.getServiceURI(service),
13
- });
14
- try {
15
- payload.sender = await utils.microServiceName();
16
- let response$ = await client.send([resource, action].join("/"), payload).pipe((0, rxjs_1.catchError)(err => {
17
- const errorPayload = typeof err === 'object' ? err : { message: String(err) };
18
- return (0, rxjs_1.throwError)(() => new Error(`[${service}] ${errorPayload.message}`));
19
- }));
20
- const watchdogTimeout = parseInt(process.env.WATCHDOG);
21
- if (!isNaN(watchdogTimeout) && watchdogTimeout > 0)
22
- response$ = response$.pipe((0, rxjs_1.timeout)({ first: watchdogTimeout }));
23
- response$ = response$.pipe((0, rxjs_1.defaultIfEmpty)(null));
24
- const result = await (0, rxjs_1.lastValueFrom)(response$);
25
- if (result?.error)
26
- throw new Error(`[${service}] ${result.message}`);
27
- return result;
28
- }
29
- finally {
30
- try {
31
- await client.close();
32
- }
33
- catch (closeError) {
34
- console.error("Error closing client:", closeError.message);
35
- }
12
+ exports.RestrictSender = RestrictSender;
13
+ const common_1 = require("@nestjs/common");
14
+ const core_1 = require("@nestjs/core");
15
+ const RESTRICT_SENDER_KEY = 'restrict_sender';
16
+ function RestrictSender(allowedSenders) {
17
+ return (0, common_1.applyDecorators)((0, common_1.SetMetadata)(RESTRICT_SENDER_KEY, allowedSenders), (0, common_1.UseInterceptors)(RestrictSenderInterceptor));
18
+ }
19
+ let RestrictSenderInterceptor = class RestrictSenderInterceptor {
20
+ constructor(reflector) {
21
+ this.reflector = reflector;
22
+ }
23
+ intercept(context, next) {
24
+ const ctx = context.switchToRpc();
25
+ const data = ctx.getData();
26
+ const handler = context.getHandler();
27
+ const target = context.getClass();
28
+ const allowedSenders = this.reflector.getAllAndOverride(RESTRICT_SENDER_KEY, [
29
+ context.getHandler(),
30
+ context.getClass(),
31
+ ]) || [];
32
+ const sender = data?.sender;
33
+ if (!allowedSenders.includes(sender)) {
34
+ throw new common_1.ForbiddenException(`Sender '${sender}' is not authorized`);
36
35
  }
36
+ return next.handle();
37
37
  }
38
- }
39
- exports.TCPService = TCPService;
38
+ };
39
+ RestrictSenderInterceptor = __decorate([
40
+ (0, common_1.Injectable)(),
41
+ __metadata("design:paramtypes", [core_1.Reflector])
42
+ ], RestrictSenderInterceptor);
40
43
  //# sourceMappingURL=tcp.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tcp.service.js","sourceRoot":"","sources":["../../src/microservice/tcp.service.ts"],"names":[],"mappings":";;;AAAA,yDAAmF;AACnF,+BAAsF;AACtF,kCAAiC;AACjC,qCAAkC;AAElC,MAAa,UAAU;IACnB,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,MAAa,EAAC,QAAgB,EAAE,OAAQ;QACtE,MAAM,MAAM,GAAgB,MAAM,kCAAkB,CAAC,MAAM,CAAC;YACxD,SAAS,EAAE,yBAAS,CAAC,GAAG;YACxB,OAAO,EAAE,MAAM,eAAM,CAAC,aAAa,CAAC,OAAO,CAAC;SAC/C,CAAC,CAAC;QACH,IAAI,CAAC;YACD,OAAO,CAAC,MAAM,GAAG,MAAM,KAAK,CAAC,gBAAgB,EAAE,CAAA;YAC/C,IAAI,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CACxE,IAAA,iBAAU,EAAC,GAAG,CAAC,EAAE;gBAAE,MAAM,YAAY,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjG,OAAO,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,OAAO,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAAA,CAAC,CAAC,CAChF,CAAC;YACF,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACvD,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,eAAe,GAAG,CAAC;gBAC9C,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,IAAA,cAAO,EAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;YACpE,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,IAAA,qBAAc,EAAC,IAAI,CAAC,CAAC,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,IAAA,oBAAa,EAAC,SAAS,CAAC,CAAC;YAC9C,IAAI,MAAM,EAAE,KAAK;gBACb,MAAM,IAAI,KAAK,CAAC,IAAI,OAAO,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,OAAO,MAAM,CAAC;QAClB,CAAC;gBAYO,CAAC;YACL,IAAI,CAAC;gBACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACzB,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBAClB,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;YAC/D,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAxCD,gCAwCC"}
1
+ {"version":3,"file":"tcp.service.js","sourceRoot":"","sources":["../../src/microservice/tcp.service.ts"],"names":[],"mappings":";;;;;;;;;;;AAeA,wCAKC;AApBD,2CASwB;AACxB,uCAAyC;AAGzC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAE9C,SAAgB,cAAc,CAAC,cAAwB;IACrD,OAAO,IAAA,wBAAe,EACpB,IAAA,oBAAW,EAAC,mBAAmB,EAAE,cAAc,CAAC,EAChD,IAAA,wBAAe,EAAC,yBAAyB,CAAC,CAC3C,CAAC;AACJ,CAAC;AAED,IACM,yBAAyB,GAD/B,MACM,yBAAyB;IAC7B,YAAoB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAG,CAAC;IAE5C,SAAS,CAAC,OAAyB,EAAE,IAAiB;QACpD,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;QAE3B,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QAGlC,MAAM,cAAc,GAClB,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAW,mBAAmB,EAAE;YAC9D,OAAO,CAAC,UAAU,EAAE;YACpB,OAAO,CAAC,QAAQ,EAAE;SACnB,CAAC,IAAI,EAAE,CAAC;QAEX,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC;QAC5B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,2BAAkB,CAAC,WAAW,MAAM,qBAAqB,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;CACF,CAAA;AAxBK,yBAAyB;IAD9B,IAAA,mBAAU,GAAE;qCAEoB,gBAAS;GADpC,yBAAyB,CAwB9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"rabbit-mq.service.js","sourceRoot":"","sources":["../../src/rabbit-mq/rabbit-mq.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rabbit-mq.service.js","sourceRoot":"","sources":["../../src/rabbit-mq/rabbit-mq.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@haku-sci/utils",
3
- "version": "2.0.1",
3
+ "version": "2.2.1",
4
4
  "description": "utils from haku-sci. Library only",
5
5
  "main": "./dist/index.js",
6
6
  "types": "dist/index.d.ts",