@russ-b/nestjs-common-tools 1.1.14 → 1.1.16

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,16 @@
1
+ import { GrpcOptions } from '@nestjs/microservices';
2
+ import { ConfigService } from '@nestjs/config';
3
+ import { GrpcPackageDefinitionService } from '../services';
4
+ interface IOptions {
5
+ usePackageDefinitionService: boolean;
6
+ useReflectionService: boolean;
7
+ }
8
+ export declare class GrpcOptionsProvider {
9
+ private readonly configService;
10
+ private readonly grpcPackageDefinitionService;
11
+ constructor(configService: ConfigService, grpcPackageDefinitionService: GrpcPackageDefinitionService);
12
+ getOptions(options?: IOptions): GrpcOptions;
13
+ private getProtoDir;
14
+ private getProtoPath;
15
+ }
16
+ export {};
@@ -0,0 +1,70 @@
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.GrpcOptionsProvider = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const microservices_1 = require("@nestjs/microservices");
15
+ const reflection_1 = require("@grpc/reflection");
16
+ const config_1 = require("@nestjs/config");
17
+ const node_fs_1 = require("node:fs");
18
+ const node_path_1 = require("node:path");
19
+ const services_1 = require("../services");
20
+ let GrpcOptionsProvider = class GrpcOptionsProvider {
21
+ constructor(configService, grpcPackageDefinitionService) {
22
+ this.configService = configService;
23
+ this.grpcPackageDefinitionService = grpcPackageDefinitionService;
24
+ }
25
+ getOptions(options = {
26
+ usePackageDefinitionService: false,
27
+ useReflectionService: true,
28
+ }) {
29
+ const packageName = this.configService.getOrThrow('GRPC_SERVER_PACKAGE_NAME');
30
+ return {
31
+ transport: microservices_1.Transport.GRPC,
32
+ options: {
33
+ loader: {
34
+ longs: Number,
35
+ arrays: true,
36
+ objects: true,
37
+ includeDirs: [this.getProtoDir()],
38
+ },
39
+ gracefulShutdown: true,
40
+ url: this.configService.getOrThrow('GRPC_SERVER_URL'),
41
+ package: packageName,
42
+ protoPath: this.getProtoPath(packageName),
43
+ onLoadPackageDefinition: (pkg, server) => {
44
+ if (options.usePackageDefinitionService) {
45
+ this.grpcPackageDefinitionService.setPackageDefinition(pkg, packageName);
46
+ }
47
+ if (options.useReflectionService) {
48
+ new reflection_1.ReflectionService(pkg).addToServer(server);
49
+ }
50
+ },
51
+ },
52
+ };
53
+ }
54
+ getProtoDir() {
55
+ return (0, node_path_1.join)(__dirname, '../../proto');
56
+ }
57
+ getProtoPath(packageName) {
58
+ const fullPath = (0, node_path_1.join)(this.getProtoDir(), packageName);
59
+ return (0, node_fs_1.readdirSync)(fullPath)
60
+ .filter((f) => f.endsWith('proto'))
61
+ .map((f) => (0, node_path_1.join)(fullPath, f));
62
+ }
63
+ };
64
+ exports.GrpcOptionsProvider = GrpcOptionsProvider;
65
+ exports.GrpcOptionsProvider = GrpcOptionsProvider = __decorate([
66
+ (0, common_1.Injectable)(),
67
+ __metadata("design:paramtypes", [config_1.ConfigService,
68
+ services_1.GrpcPackageDefinitionService])
69
+ ], GrpcOptionsProvider);
70
+ //# sourceMappingURL=grpc-options.provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grpc-options.provider.js","sourceRoot":"","sources":["../../../src/grpc/providers/grpc-options.provider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,yDAA+D;AAC/D,iDAAqD;AACrD,2CAA+C;AAC/C,qCAAsC;AACtC,yCAAiC;AAEjC,0CAA2D;AAQpD,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,YACmB,aAA4B,EAC5B,4BAA0D;QAD1D,kBAAa,GAAb,aAAa,CAAe;QAC5B,iCAA4B,GAA5B,4BAA4B,CAA8B;IAC1E,CAAC;IAEJ,UAAU,CACR,UAAoB;QAClB,2BAA2B,EAAE,KAAK;QAClC,oBAAoB,EAAE,IAAI;KAC3B;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAC/C,0BAA0B,CAC3B,CAAC;QAEF,OAAO;YACL,SAAS,EAAE,yBAAS,CAAC,IAAI;YACzB,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,IAAI;oBACZ,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;iBAClC;gBACD,gBAAgB,EAAE,IAAI;gBACtB,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAS,iBAAiB,CAAC;gBAC7D,OAAO,EAAE,WAAW;gBACpB,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;gBACzC,uBAAuB,EAAE,CAAC,GAAsB,EAAE,MAAM,EAAE,EAAE;oBAC1D,IAAI,OAAO,CAAC,2BAA2B,EAAE,CAAC;wBACxC,IAAI,CAAC,4BAA4B,CAAC,oBAAoB,CACpD,GAAG,EACH,WAAW,CACZ,CAAC;oBACJ,CAAC;oBAED,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;wBACjC,IAAI,8BAAiB,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;aACF;SACF,CAAC;IACJ,CAAC;IAEO,WAAW;QACjB,OAAO,IAAA,gBAAI,EAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACxC,CAAC;IAEO,YAAY,CAAC,WAAmB;QACtC,MAAM,QAAQ,GAAG,IAAA,gBAAI,EAAC,IAAI,CAAC,WAAW,EAAE,EAAE,WAAW,CAAC,CAAC;QAEvD,OAAO,IAAA,qBAAW,EAAC,QAAQ,CAAC;aACzB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;aAClC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,gBAAI,EAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;CACF,CAAA;AAxDY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,mBAAU,GAAE;qCAGuB,sBAAa;QACE,uCAA4B;GAHlE,mBAAmB,CAwD/B"}
@@ -0,0 +1 @@
1
+ export * from './grpc-package-definition.service';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./grpc-package-definition.service"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/grpc/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oEAAkD"}