@zdavison/nestjs-rpc-toolkit 0.0.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.
Files changed (46) hide show
  1. package/dist/bin/init.d.ts +18 -0
  2. package/dist/bin/init.d.ts.map +1 -0
  3. package/dist/bin/init.js +208 -0
  4. package/dist/bin/init.js.map +1 -0
  5. package/dist/decorators/rpc-method.decorator.d.ts +2 -0
  6. package/dist/decorators/rpc-method.decorator.d.ts.map +1 -0
  7. package/dist/decorators/rpc-method.decorator.js +50 -0
  8. package/dist/decorators/rpc-method.decorator.js.map +1 -0
  9. package/dist/generators/rpc-types-generator.d.ts +34 -0
  10. package/dist/generators/rpc-types-generator.d.ts.map +1 -0
  11. package/dist/generators/rpc-types-generator.js +281 -0
  12. package/dist/generators/rpc-types-generator.js.map +1 -0
  13. package/dist/index.d.ts +8 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/index.js +24 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/interfaces/index.d.ts +20 -0
  18. package/dist/interfaces/index.d.ts.map +1 -0
  19. package/dist/interfaces/index.js +3 -0
  20. package/dist/interfaces/index.js.map +1 -0
  21. package/dist/module-base/index.d.ts +15 -0
  22. package/dist/module-base/index.d.ts.map +1 -0
  23. package/dist/module-base/index.js +38 -0
  24. package/dist/module-base/index.js.map +1 -0
  25. package/dist/rpc/rpc-registry.d.ts +21 -0
  26. package/dist/rpc/rpc-registry.d.ts.map +1 -0
  27. package/dist/rpc/rpc-registry.js +30 -0
  28. package/dist/rpc/rpc-registry.js.map +1 -0
  29. package/dist/rpc/typed-message-bus.d.ts +25 -0
  30. package/dist/rpc/typed-message-bus.d.ts.map +1 -0
  31. package/dist/rpc/typed-message-bus.js +37 -0
  32. package/dist/rpc/typed-message-bus.js.map +1 -0
  33. package/dist/transport/in-memory.client.d.ts +9 -0
  34. package/dist/transport/in-memory.client.d.ts.map +1 -0
  35. package/dist/transport/in-memory.client.js +34 -0
  36. package/dist/transport/in-memory.client.js.map +1 -0
  37. package/dist/transport/in-memory.transport.d.ts +12 -0
  38. package/dist/transport/in-memory.transport.d.ts.map +1 -0
  39. package/dist/transport/in-memory.transport.js +47 -0
  40. package/dist/transport/in-memory.transport.js.map +1 -0
  41. package/dist/transport/index.d.ts +3 -0
  42. package/dist/transport/index.d.ts.map +1 -0
  43. package/dist/transport/index.js +19 -0
  44. package/dist/transport/index.js.map +1 -0
  45. package/dist/tsconfig.tsbuildinfo +1 -0
  46. package/package.json +40 -0
package/dist/index.js ADDED
@@ -0,0 +1,24 @@
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("./interfaces"), exports);
18
+ __exportStar(require("./module-base"), exports);
19
+ __exportStar(require("./decorators/rpc-method.decorator"), exports);
20
+ __exportStar(require("./rpc/typed-message-bus"), exports);
21
+ __exportStar(require("./rpc/rpc-registry"), exports);
22
+ __exportStar(require("./transport"), exports);
23
+ __exportStar(require("./generators/rpc-types-generator"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,gDAA8B;AAC9B,oEAAkD;AAClD,0DAAwC;AACxC,qDAAmC;AACnC,8CAA4B;AAC5B,mEAAiD"}
@@ -0,0 +1,20 @@
1
+ export interface ModularModule {
2
+ name: string;
3
+ version: string;
4
+ dependencies?: string[];
5
+ }
6
+ export interface ModuleEvent<T = any> {
7
+ moduleId: string;
8
+ eventName: string;
9
+ payload: T;
10
+ timestamp: Date;
11
+ }
12
+ export interface ModuleMessage<T = any> {
13
+ id: string;
14
+ from: string;
15
+ to: string;
16
+ type: string;
17
+ payload: T;
18
+ timestamp: Date;
19
+ }
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,CAAC,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;CACjB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { DynamicModule, Type } from '@nestjs/common';
2
+ export interface ModularModuleMetadata {
3
+ name: string;
4
+ version: string;
5
+ dependencies?: string[];
6
+ }
7
+ export declare function ModularModuleDecorator(metadata: ModularModuleMetadata): ClassDecorator;
8
+ export interface ModularModuleOptions {
9
+ imports?: Array<Type<any> | DynamicModule>;
10
+ providers?: any[];
11
+ exports?: any[];
12
+ controllers?: Type<any>[];
13
+ }
14
+ export declare function createModularModule(name: string, version: string, options?: ModularModuleOptions): DynamicModule;
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/module-base/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAU,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE7D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,cAAc,CAKtF;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;IAC3C,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;CAC3B;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAiBf"}
@@ -0,0 +1,38 @@
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.ModularModuleDecorator = ModularModuleDecorator;
10
+ exports.createModularModule = createModularModule;
11
+ const common_1 = require("@nestjs/common");
12
+ function ModularModuleDecorator(metadata) {
13
+ return (target) => {
14
+ Reflect.defineMetadata('modular:module', metadata, target);
15
+ return target;
16
+ };
17
+ }
18
+ function createModularModule(name, version, options = {}) {
19
+ let ModularModuleClass = class ModularModuleClass {
20
+ };
21
+ ModularModuleClass = __decorate([
22
+ (0, common_1.Module)({})
23
+ ], ModularModuleClass);
24
+ return {
25
+ module: ModularModuleClass,
26
+ imports: options.imports || [],
27
+ providers: [
28
+ ...(options.providers || []),
29
+ {
30
+ provide: 'MODULE_INFO',
31
+ useValue: { name, version },
32
+ },
33
+ ],
34
+ exports: options.exports || [],
35
+ controllers: options.controllers || [],
36
+ };
37
+ }
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/module-base/index.ts"],"names":[],"mappings":";;;;;;;;AAQA,wDAKC;AASD,kDAqBC;AA3CD,2CAA6D;AAQ7D,SAAgB,sBAAsB,CAAC,QAA+B;IACpE,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,OAAO,CAAC,cAAc,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC3D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AASD,SAAgB,mBAAmB,CACjC,IAAY,EACZ,OAAe,EACf,UAAgC,EAAE;IAGlC,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;KAAG,CAAA;IAArB,kBAAkB;QADvB,IAAA,eAAM,EAAC,EAAE,CAAC;OACL,kBAAkB,CAAG;IAE3B,OAAO;QACL,MAAM,EAAE,kBAAkB;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;QAC9B,SAAS,EAAE;YACT,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;YAC5B;gBACE,OAAO,EAAE,aAAa;gBACtB,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;aAC5B;SACF;QACD,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;QAC9B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;KACvC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,21 @@
1
+ export interface RpcMethodMetadata {
2
+ pattern: string;
3
+ module: string;
4
+ methodName: string;
5
+ paramNames: string[];
6
+ returnType?: string;
7
+ target: any;
8
+ propertyKey: string;
9
+ }
10
+ declare class RpcRegistry {
11
+ private methods;
12
+ private modulesMethods;
13
+ registerMethod(metadata: RpcMethodMetadata): void;
14
+ getMethod(pattern: string): RpcMethodMetadata | undefined;
15
+ getModuleMethods(module: string): RpcMethodMetadata[];
16
+ getAllMethods(): RpcMethodMetadata[];
17
+ getMethodsByModule(): Map<string, RpcMethodMetadata[]>;
18
+ }
19
+ export declare const rpcRegistry: RpcRegistry;
20
+ export {};
21
+ //# sourceMappingURL=rpc-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc-registry.d.ts","sourceRoot":"","sources":["../../src/rpc/rpc-registry.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,cAAM,WAAW;IACf,OAAO,CAAC,OAAO,CAAwC;IACvD,OAAO,CAAC,cAAc,CAA0C;IAEhE,cAAc,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IASjD,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAIzD,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAIrD,aAAa,IAAI,iBAAiB,EAAE;IAIpC,kBAAkB,IAAI,GAAG,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAGvD;AAED,eAAO,MAAM,WAAW,aAAoB,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.rpcRegistry = void 0;
4
+ class RpcRegistry {
5
+ constructor() {
6
+ this.methods = new Map();
7
+ this.modulesMethods = new Map();
8
+ }
9
+ registerMethod(metadata) {
10
+ this.methods.set(metadata.pattern, metadata);
11
+ if (!this.modulesMethods.has(metadata.module)) {
12
+ this.modulesMethods.set(metadata.module, []);
13
+ }
14
+ this.modulesMethods.get(metadata.module).push(metadata);
15
+ }
16
+ getMethod(pattern) {
17
+ return this.methods.get(pattern);
18
+ }
19
+ getModuleMethods(module) {
20
+ return this.modulesMethods.get(module) || [];
21
+ }
22
+ getAllMethods() {
23
+ return Array.from(this.methods.values());
24
+ }
25
+ getMethodsByModule() {
26
+ return new Map(this.modulesMethods);
27
+ }
28
+ }
29
+ exports.rpcRegistry = new RpcRegistry();
30
+ //# sourceMappingURL=rpc-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc-registry.js","sourceRoot":"","sources":["../../src/rpc/rpc-registry.ts"],"names":[],"mappings":";;;AAUA,MAAM,WAAW;IAAjB;QACU,YAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;QAC/C,mBAAc,GAAG,IAAI,GAAG,EAA+B,CAAC;IA0BlE,CAAC;IAxBC,cAAc,CAAC,QAA2B;QACxC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAE7C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,SAAS,CAAC,OAAe;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,gBAAgB,CAAC,MAAc;QAC7B,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED,aAAa;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACtC,CAAC;CACF;AAEY,QAAA,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { ClientProxy } from '@nestjs/microservices';
2
+ export interface RpcMessage<TData = any, TReturns = any> {
3
+ pattern: string;
4
+ data: TData;
5
+ _returns?: TReturns;
6
+ }
7
+ export interface IMessageBus<TRpcMethods = any> {
8
+ send<TPattern extends keyof TRpcMethods>(pattern: TPattern, data: TRpcMethods[TPattern] extends {
9
+ params: infer P;
10
+ } ? P : any): Promise<TRpcMethods[TPattern] extends {
11
+ returns: infer R;
12
+ } ? R : any>;
13
+ emit(pattern: string, data: any): void;
14
+ }
15
+ export declare class MessageBus<TRpcMethods = any> implements IMessageBus<TRpcMethods> {
16
+ private readonly client;
17
+ constructor(client: ClientProxy);
18
+ send<TPattern extends keyof TRpcMethods>(pattern: TPattern, data: TRpcMethods[TPattern] extends {
19
+ params: infer P;
20
+ } ? P : any): Promise<TRpcMethods[TPattern] extends {
21
+ returns: infer R;
22
+ } ? R : any>;
23
+ emit(pattern: string, data: any): void;
24
+ }
25
+ //# sourceMappingURL=typed-message-bus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-message-bus.d.ts","sourceRoot":"","sources":["../../src/rpc/typed-message-bus.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,MAAM,WAAW,UAAU,CAAC,KAAK,GAAG,GAAG,EAAE,QAAQ,GAAG,GAAG;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,KAAK,CAAC;IAEZ,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,WAAW,CAAC,WAAW,GAAG,GAAG;IAO5C,IAAI,CAAC,QAAQ,SAAS,MAAM,WAAW,EACrC,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS;QAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,GAAG,GAChE,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS;QAAE,OAAO,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;IAOzE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;CACxC;AAED,qBACa,UAAU,CAAC,WAAW,GAAG,GAAG,CAAE,YAAW,WAAW,CAAC,WAAW,CAAC;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,WAAW;IAE1C,IAAI,CAAC,QAAQ,SAAS,MAAM,WAAW,EAC3C,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS;QAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,GAAG,GAChE,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS;QAAE,OAAO,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,GAAG,CAAC;IAUxE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI;CAGvC"}
@@ -0,0 +1,37 @@
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.MessageBus = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const microservices_1 = require("@nestjs/microservices");
15
+ let MessageBus = class MessageBus {
16
+ constructor(client) {
17
+ this.client = client;
18
+ }
19
+ async send(pattern, data) {
20
+ try {
21
+ const result = await this.client.send(pattern, data).toPromise();
22
+ return result;
23
+ }
24
+ catch (error) {
25
+ throw new Error(`RPC call to '${String(pattern)}' failed: ${error.message}`);
26
+ }
27
+ }
28
+ emit(pattern, data) {
29
+ this.client.emit(pattern, data);
30
+ }
31
+ };
32
+ exports.MessageBus = MessageBus;
33
+ exports.MessageBus = MessageBus = __decorate([
34
+ (0, common_1.Injectable)(),
35
+ __metadata("design:paramtypes", [microservices_1.ClientProxy])
36
+ ], MessageBus);
37
+ //# sourceMappingURL=typed-message-bus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-message-bus.js","sourceRoot":"","sources":["../../src/rpc/typed-message-bus.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,yDAAoD;AA+B7C,IAAM,UAAU,GAAhB,MAAM,UAAU;IACrB,YAA6B,MAAmB;QAAnB,WAAM,GAAN,MAAM,CAAa;IAAG,CAAC;IAEpD,KAAK,CAAC,IAAI,CACR,OAAiB,EACjB,IAAiE;QAEjE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YACjE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,MAAM,IAAI,KAAK,CAAC,gBAAgB,MAAM,CAAC,OAAO,CAAC,aAAa,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,IAAS;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;CACF,CAAA;AAnBY,gCAAU;qBAAV,UAAU;IADtB,IAAA,mBAAU,GAAE;qCAE0B,2BAAW;GADrC,UAAU,CAmBtB"}
@@ -0,0 +1,9 @@
1
+ import { ClientProxy, ReadPacket, WritePacket } from '@nestjs/microservices';
2
+ export declare class InMemoryClientProxy extends ClientProxy {
3
+ private transport;
4
+ connect(): Promise<void>;
5
+ close(): void;
6
+ protected dispatchEvent(packet: ReadPacket): Promise<any>;
7
+ protected publish(packet: ReadPacket, callback: (packet: WritePacket) => void): () => void;
8
+ }
9
+ //# sourceMappingURL=in-memory.client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory.client.d.ts","sourceRoot":"","sources":["../../src/transport/in-memory.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAG7E,qBAAa,mBAAoB,SAAQ,WAAW;IAClD,OAAO,CAAC,SAAS,CAA2C;IAEtD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B,KAAK,IAAI,IAAI;cAIG,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAM/D,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,GAAG,MAAM,IAAI;CAa3F"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InMemoryClientProxy = void 0;
4
+ const microservices_1 = require("@nestjs/microservices");
5
+ const in_memory_transport_1 = require("./in-memory.transport");
6
+ class InMemoryClientProxy extends microservices_1.ClientProxy {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.transport = in_memory_transport_1.InMemoryTransportStrategy.getInstance();
10
+ }
11
+ async connect() {
12
+ return Promise.resolve();
13
+ }
14
+ close() {
15
+ }
16
+ async dispatchEvent(packet) {
17
+ const { pattern, data } = packet;
18
+ this.transport.emitEvent(pattern, data);
19
+ return Promise.resolve();
20
+ }
21
+ publish(packet, callback) {
22
+ const { pattern, data } = packet;
23
+ this.transport.sendMessage(pattern, data)
24
+ .then(result => {
25
+ callback({ response: result });
26
+ })
27
+ .catch(error => {
28
+ callback({ err: error });
29
+ });
30
+ return () => { };
31
+ }
32
+ }
33
+ exports.InMemoryClientProxy = InMemoryClientProxy;
34
+ //# sourceMappingURL=in-memory.client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory.client.js","sourceRoot":"","sources":["../../src/transport/in-memory.client.ts"],"names":[],"mappings":";;;AAAA,yDAA6E;AAC7E,+DAAkE;AAElE,MAAa,mBAAoB,SAAQ,2BAAW;IAApD;;QACU,cAAS,GAAG,+CAAyB,CAAC,WAAW,EAAE,CAAC;IA6B9D,CAAC;IA3BC,KAAK,CAAC,OAAO;QACX,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK;IAEL,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,MAAkB;QAC9C,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAiB,EAAE,IAAI,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAES,OAAO,CAAC,MAAkB,EAAE,QAAuC;QAC3E,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;QAEjC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAiB,EAAE,IAAI,CAAC;aAChD,IAAI,CAAC,MAAM,CAAC,EAAE;YACb,QAAQ,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QACjC,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,CAAC,EAAE;YACb,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEL,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;CACF;AA9BD,kDA8BC"}
@@ -0,0 +1,12 @@
1
+ import { CustomTransportStrategy, Server, ReadPacket, BaseRpcContext } from '@nestjs/microservices';
2
+ export declare class InMemoryTransportStrategy extends Server implements CustomTransportStrategy {
3
+ private static instance;
4
+ static getInstance(): InMemoryTransportStrategy;
5
+ listen(callback: () => void): void;
6
+ close(): void;
7
+ handleMessage(pattern: string, packet: ReadPacket, context: BaseRpcContext): Promise<any>;
8
+ handleEvent(pattern: string, packet: ReadPacket, context: BaseRpcContext): Promise<any>;
9
+ sendMessage(pattern: string, data: any): Promise<any>;
10
+ emitEvent(pattern: string, data: any): void;
11
+ }
12
+ //# sourceMappingURL=in-memory.transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory.transport.d.ts","sourceRoot":"","sources":["../../src/transport/in-memory.transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEpG,qBAAa,yBAA0B,SAAQ,MAAO,YAAW,uBAAuB;IACtF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA4B;IAEnD,MAAM,CAAC,WAAW,IAAI,yBAAyB;IAO/C,MAAM,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAIlC,KAAK,IAAI,IAAI;IAIP,aAAa,CACjB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,GAAG,CAAC;IAST,WAAW,CACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,GAAG,CAAC;IAYT,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAO3D,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI;CAK5C"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InMemoryTransportStrategy = void 0;
4
+ const microservices_1 = require("@nestjs/microservices");
5
+ class InMemoryTransportStrategy extends microservices_1.Server {
6
+ static getInstance() {
7
+ if (!InMemoryTransportStrategy.instance) {
8
+ InMemoryTransportStrategy.instance = new InMemoryTransportStrategy();
9
+ }
10
+ return InMemoryTransportStrategy.instance;
11
+ }
12
+ listen(callback) {
13
+ callback();
14
+ }
15
+ close() {
16
+ }
17
+ async handleMessage(pattern, packet, context) {
18
+ const handler = this.getHandlerByPattern(pattern);
19
+ if (!handler) {
20
+ throw new Error(`No handler registered for pattern: ${pattern}`);
21
+ }
22
+ return await handler(packet.data, context);
23
+ }
24
+ async handleEvent(pattern, packet, context) {
25
+ const handler = this.getHandlerByPattern(pattern);
26
+ if (handler) {
27
+ try {
28
+ await handler(packet.data, context);
29
+ }
30
+ catch (error) {
31
+ console.error(`Error in event handler for ${pattern}:`, error);
32
+ }
33
+ }
34
+ }
35
+ async sendMessage(pattern, data) {
36
+ const packet = { pattern, data };
37
+ const context = new microservices_1.BaseRpcContext([]);
38
+ return await this.handleMessage(pattern, packet, context);
39
+ }
40
+ emitEvent(pattern, data) {
41
+ const packet = { pattern, data };
42
+ const context = new microservices_1.BaseRpcContext([]);
43
+ this.handleEvent(pattern, packet, context);
44
+ }
45
+ }
46
+ exports.InMemoryTransportStrategy = InMemoryTransportStrategy;
47
+ //# sourceMappingURL=in-memory.transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory.transport.js","sourceRoot":"","sources":["../../src/transport/in-memory.transport.ts"],"names":[],"mappings":";;;AAAA,yDAAoG;AAEpG,MAAa,yBAA0B,SAAQ,sBAAM;IAGnD,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,CAAC;YACxC,yBAAyB,CAAC,QAAQ,GAAG,IAAI,yBAAyB,EAAE,CAAC;QACvE,CAAC;QACD,OAAO,yBAAyB,CAAC,QAAQ,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,QAAoB;QACzB,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,KAAK;IAEL,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,OAAe,EACf,MAAkB,EAClB,OAAuB;QAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sCAAsC,OAAO,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,WAAW,CACf,OAAe,EACf,MAAkB,EAClB,OAAuB;QAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,IAAS;QAC1C,MAAM,MAAM,GAAe,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,8BAAc,CAAC,EAAE,CAAC,CAAC;QACvC,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IAGD,SAAS,CAAC,OAAe,EAAE,IAAS;QAClC,MAAM,MAAM,GAAe,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,8BAAc,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;CACF;AA3DD,8DA2DC"}
@@ -0,0 +1,3 @@
1
+ export * from './in-memory.transport';
2
+ export * from './in-memory.client';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transport/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,19 @@
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("./in-memory.transport"), exports);
18
+ __exportStar(require("./in-memory.client"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transport/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,qDAAmC"}