@conduitplatform/module-tools 0.16.0-alpha.9 → 0.16.0-rc.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.
Files changed (66) hide show
  1. package/dist/ManagedModule.d.ts +1 -0
  2. package/dist/ManagedModule.js +153 -358
  3. package/dist/ManagedModule.js.map +1 -1
  4. package/dist/classes/ConduitActiveSchema.d.ts +12 -9
  5. package/dist/classes/ConduitActiveSchema.js +43 -52
  6. package/dist/classes/ConduitActiveSchema.js.map +1 -1
  7. package/dist/classes/ConduitServiceModule.d.ts +2 -0
  8. package/dist/classes/ConduitServiceModule.js +65 -112
  9. package/dist/classes/ConduitServiceModule.js.map +1 -1
  10. package/dist/classes/ConfigController.js +10 -17
  11. package/dist/classes/ConfigController.js.map +1 -1
  12. package/dist/classes/GrpcServer.d.ts +1 -0
  13. package/dist/classes/GrpcServer.js +93 -172
  14. package/dist/classes/GrpcServer.js.map +1 -1
  15. package/dist/helpers/GrpcHelper.js +11 -11
  16. package/dist/helpers/GrpcHelper.js.map +1 -1
  17. package/dist/helpers/GrpcToParsedRouterRequest.d.ts +2 -0
  18. package/dist/helpers/GrpcToParsedRouterRequest.js +19 -0
  19. package/dist/helpers/GrpcToParsedRouterRequest.js.map +1 -0
  20. package/dist/helpers/TypeHelpers.js +57 -119
  21. package/dist/helpers/TypeHelpers.js.map +1 -1
  22. package/dist/helpers/index.d.ts +1 -0
  23. package/dist/helpers/index.js +1 -0
  24. package/dist/helpers/index.js.map +1 -1
  25. package/dist/helpers/wrapGrpcFunctions.js +14 -15
  26. package/dist/helpers/wrapGrpcFunctions.js.map +1 -1
  27. package/dist/interfaces/ModuleLifecycleStage.d.ts +7 -0
  28. package/dist/interfaces/ModuleLifecycleStage.js +12 -0
  29. package/dist/interfaces/ModuleLifecycleStage.js.map +1 -0
  30. package/dist/logging/index.js +80 -180
  31. package/dist/logging/index.js.map +1 -1
  32. package/dist/metrics/MetricsServer.d.ts +2 -1
  33. package/dist/metrics/MetricsServer.js +25 -70
  34. package/dist/metrics/MetricsServer.js.map +1 -1
  35. package/dist/metrics/clientMiddleware.js +76 -217
  36. package/dist/metrics/clientMiddleware.js.map +1 -1
  37. package/dist/metrics/config/defaults.js +1 -1
  38. package/dist/metrics/config/defaults.js.map +1 -1
  39. package/dist/metrics/index.js +53 -89
  40. package/dist/metrics/index.js.map +1 -1
  41. package/dist/module.proto +58 -0
  42. package/dist/routing/ProxyRouteBuilder.js +21 -24
  43. package/dist/routing/ProxyRouteBuilder.js.map +1 -1
  44. package/dist/routing/RouteBuilder.js +31 -34
  45. package/dist/routing/RouteBuilder.js.map +1 -1
  46. package/dist/routing/RoutingController.d.ts +8 -0
  47. package/dist/routing/RoutingController.js +25 -0
  48. package/dist/routing/RoutingController.js.map +1 -0
  49. package/dist/routing/RoutingManager.d.ts +5 -2
  50. package/dist/routing/RoutingManager.js +61 -115
  51. package/dist/routing/RoutingManager.js.map +1 -1
  52. package/dist/routing/RoutingUtilities.js +3 -3
  53. package/dist/routing/RoutingUtilities.js.map +1 -1
  54. package/dist/routing/wrapRouterFunctions.d.ts +5 -5
  55. package/dist/routing/wrapRouterFunctions.js +30 -39
  56. package/dist/routing/wrapRouterFunctions.js.map +1 -1
  57. package/dist/utilities/convictConfigParser.js +2 -2
  58. package/dist/utilities/convictConfigParser.js.map +1 -1
  59. package/dist/utilities/initializeSdk.js +9 -11
  60. package/dist/utilities/initializeSdk.js.map +1 -1
  61. package/dist/utilities/linearBackoffTimeout.d.ts +1 -1
  62. package/dist/utilities/linearBackoffTimeout.js +35 -92
  63. package/dist/utilities/linearBackoffTimeout.js.map +1 -1
  64. package/dist/utilities/merge.js +2 -2
  65. package/dist/utilities/merge.js.map +1 -1
  66. package/package.json +19 -20
package/dist/module.proto CHANGED
@@ -12,3 +12,61 @@ message SetConfigResponse {
12
12
  service ConduitModule {
13
13
  rpc SetConfig(SetConfigRequest) returns (SetConfigResponse);
14
14
  }
15
+
16
+ service ClientRouter {
17
+ rpc Route(Request) returns (Response);
18
+ rpc SocketRoute(SocketRequest) returns (SocketResponse);
19
+ }
20
+ service AdminRouter {
21
+ rpc Route(Request) returns (Response);
22
+ rpc SocketRoute(SocketRequest) returns (SocketResponse);
23
+ }
24
+
25
+ message Request {
26
+ string params = 1;
27
+ string path = 2;
28
+ string headers = 3;
29
+ string context = 4;
30
+ string cookies = 5;
31
+ string bodyParams = 6;
32
+ string urlParams = 7;
33
+ string queryParams = 8;
34
+ string functionName = 9;
35
+ }
36
+
37
+ message Response {
38
+ string result = 1;
39
+ string redirect = 2;
40
+ repeated Cookie setCookies = 3;
41
+ repeated Cookie removeCookies = 4;
42
+ }
43
+ message Cookie {
44
+ string name = 1;
45
+ optional string value = 2;
46
+ CookieOptions options = 3;
47
+ }
48
+
49
+ message CookieOptions {
50
+ bool httpOnly = 1;
51
+ bool secure = 2;
52
+ bool signed = 3;
53
+ int32 maxAge = 4;
54
+ string path = 5;
55
+ string domain = 6;
56
+ string sameSite = 7;
57
+
58
+ }
59
+ message SocketRequest {
60
+ string event = 1;
61
+ string socketId = 2;
62
+ string params = 3;
63
+ string context = 4;
64
+ string functionName = 5;
65
+ }
66
+
67
+ message SocketResponse {
68
+ string event = 1;
69
+ string data = 2;
70
+ repeated string receivers = 3;
71
+ repeated string rooms = 4;
72
+ }
@@ -1,35 +1,33 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ProxyRouteBuilder = void 0;
4
- var ProxyRouteBuilder = /** @class */ (function () {
5
- function ProxyRouteBuilder(manager) {
4
+ class ProxyRouteBuilder {
5
+ constructor(manager) {
6
6
  this.manager = manager;
7
7
  this._options = { path: '' };
8
8
  this._proxy = { target: '' };
9
9
  }
10
- ProxyRouteBuilder.prototype.method = function (action) {
10
+ method(action) {
11
11
  this._options.action = action;
12
12
  return this;
13
- };
14
- ProxyRouteBuilder.prototype.path = function (path) {
13
+ }
14
+ path(path) {
15
15
  this._options.path = path;
16
16
  return this;
17
- };
18
- ProxyRouteBuilder.prototype.target = function (target) {
17
+ }
18
+ target(target) {
19
19
  this._proxy.target = target;
20
20
  return this;
21
- };
22
- ProxyRouteBuilder.prototype.options = function (options) {
21
+ }
22
+ options(options) {
23
23
  this._options = options;
24
24
  return this;
25
- };
26
- ProxyRouteBuilder.prototype.proxy = function (proxy) {
25
+ }
26
+ proxy(proxy) {
27
27
  this._proxy = proxy;
28
28
  return this;
29
- };
30
- ProxyRouteBuilder.prototype.middleware = function (middleware, allowDuplicates) {
31
- var _this = this;
32
- if (allowDuplicates === void 0) { allowDuplicates = false; }
29
+ }
30
+ middleware(middleware, allowDuplicates = false) {
33
31
  if (!Array.isArray(middleware)) {
34
32
  middleware = [middleware];
35
33
  }
@@ -38,28 +36,28 @@ var ProxyRouteBuilder = /** @class */ (function () {
38
36
  this._options.middlewares = this._options.middlewares.concat(middleware);
39
37
  }
40
38
  else {
41
- this._options.middlewares = this._options.middlewares.concat(middleware.filter(function (mid) { var _a; return ((_a = _this._options.middlewares) === null || _a === void 0 ? void 0 : _a.indexOf(mid)) === -1; }));
39
+ this._options.middlewares = this._options.middlewares.concat(middleware.filter(mid => { var _a; return ((_a = this._options.middlewares) === null || _a === void 0 ? void 0 : _a.indexOf(mid)) === -1; }));
42
40
  }
43
41
  }
44
42
  else {
45
43
  this._options.middlewares = middleware;
46
44
  }
47
45
  return this;
48
- };
49
- ProxyRouteBuilder.prototype.add = function () {
46
+ }
47
+ add() {
50
48
  if (!this.manager)
51
49
  throw new Error('Builder not setup with manager');
52
50
  if (!this._options.path)
53
51
  throw new Error('Cannot build route without path');
54
52
  if (!this._proxy.target)
55
53
  throw new Error('Cannot build route without target');
56
- var input = {
54
+ const input = {
57
55
  options: this._options,
58
56
  proxy: this._proxy,
59
57
  };
60
58
  this.manager.proxyRoute(input);
61
- };
62
- ProxyRouteBuilder.prototype.build = function () {
59
+ }
60
+ build() {
63
61
  if (!this.manager)
64
62
  throw new Error('Builder not setup with manager');
65
63
  if (!this._options.path)
@@ -74,8 +72,7 @@ var ProxyRouteBuilder = /** @class */ (function () {
74
72
  proxy: this._proxy,
75
73
  },
76
74
  };
77
- };
78
- return ProxyRouteBuilder;
79
- }());
75
+ }
76
+ }
80
77
  exports.ProxyRouteBuilder = ProxyRouteBuilder;
81
78
  //# sourceMappingURL=ProxyRouteBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProxyRouteBuilder.js","sourceRoot":"","sources":["../../src/routing/ProxyRouteBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProxyRouteBuilder.js","sourceRoot":"","sources":["../../src/routing/ProxyRouteBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,32 +1,30 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RouteBuilder = void 0;
4
- var grpc_sdk_1 = require("@conduitplatform/grpc-sdk");
5
- var RouteBuilder = /** @class */ (function () {
6
- function RouteBuilder(manager) {
4
+ const grpc_sdk_1 = require("@conduitplatform/grpc-sdk");
5
+ class RouteBuilder {
6
+ constructor(manager) {
7
7
  this.manager = manager;
8
8
  this._options = {};
9
9
  }
10
- RouteBuilder.prototype.method = function (action) {
10
+ method(action) {
11
11
  this._options.action = action;
12
12
  return this;
13
- };
14
- RouteBuilder.prototype.name = function (name) {
13
+ }
14
+ name(name) {
15
15
  this._options.name = name;
16
16
  return this;
17
- };
18
- RouteBuilder.prototype.description = function (description) {
17
+ }
18
+ description(description) {
19
19
  this._options.description = description;
20
20
  return this;
21
- };
22
- RouteBuilder.prototype.cacheControl = function (cache) {
21
+ }
22
+ cacheControl(cache) {
23
23
  this._options.cacheControl = cache;
24
24
  return this;
25
- };
26
- RouteBuilder.prototype.middleware = function (middleware, allowDuplicates) {
27
- var _this = this;
25
+ }
26
+ middleware(middleware, allowDuplicates = false) {
28
27
  var _a, _b, _c;
29
- if (allowDuplicates === void 0) { allowDuplicates = false; }
30
28
  if (!Array.isArray(middleware)) {
31
29
  middleware = [middleware];
32
30
  }
@@ -37,39 +35,39 @@ var RouteBuilder = /** @class */ (function () {
37
35
  }
38
36
  else {
39
37
  // add to existing middlewares and filter out potential duplicates
40
- this._options.middlewares = (_c = this._options.middlewares) === null || _c === void 0 ? void 0 : _c.concat(middleware.filter(function (mid) { var _a; return ((_a = _this._options.middlewares) === null || _a === void 0 ? void 0 : _a.indexOf(mid)) === -1; }));
38
+ this._options.middlewares = (_c = this._options.middlewares) === null || _c === void 0 ? void 0 : _c.concat(middleware.filter(mid => { var _a; return ((_a = this._options.middlewares) === null || _a === void 0 ? void 0 : _a.indexOf(mid)) === -1; }));
41
39
  }
42
40
  }
43
41
  else {
44
42
  this._options.middlewares = middleware;
45
43
  }
46
44
  return this;
47
- };
48
- RouteBuilder.prototype.path = function (path) {
45
+ }
46
+ path(path) {
49
47
  this._options.path = path;
50
48
  return this;
51
- };
52
- RouteBuilder.prototype.queryParams = function (params) {
49
+ }
50
+ queryParams(params) {
53
51
  this._options.queryParams = params;
54
52
  return this;
55
- };
56
- RouteBuilder.prototype.urlParams = function (params) {
53
+ }
54
+ urlParams(params) {
57
55
  this._options.urlParams = params;
58
56
  return this;
59
- };
60
- RouteBuilder.prototype.bodyParams = function (params) {
57
+ }
58
+ bodyParams(params) {
61
59
  this._options.bodyParams = params;
62
60
  return this;
63
- };
64
- RouteBuilder.prototype.return = function (name, fields) {
61
+ }
62
+ return(name, fields) {
65
63
  this._returns = new grpc_sdk_1.ConduitRouteReturnDefinition(name, fields);
66
64
  return this;
67
- };
68
- RouteBuilder.prototype.handler = function (fn) {
65
+ }
66
+ handler(fn) {
69
67
  this._handler = fn;
70
68
  return this;
71
- };
72
- RouteBuilder.prototype.add = function () {
69
+ }
70
+ add() {
73
71
  if (!this.manager)
74
72
  throw new Error('Builder not setup with manager');
75
73
  if (!this._options)
@@ -83,8 +81,8 @@ var RouteBuilder = /** @class */ (function () {
83
81
  if (!this._handler)
84
82
  throw new Error('Cannot build route without handler');
85
83
  this.manager.route(this._options, this._returns, this._handler);
86
- };
87
- RouteBuilder.prototype.build = function () {
84
+ }
85
+ build() {
88
86
  if (!this._options)
89
87
  throw new Error('Cannot build route without options');
90
88
  if (!this._options.action)
@@ -100,8 +98,7 @@ var RouteBuilder = /** @class */ (function () {
100
98
  returnType: this._returns,
101
99
  handler: this._handler,
102
100
  };
103
- };
104
- return RouteBuilder;
105
- }());
101
+ }
102
+ }
106
103
  exports.RouteBuilder = RouteBuilder;
107
104
  //# sourceMappingURL=RouteBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RouteBuilder.js","sourceRoot":"","sources":["../../src/routing/RouteBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RouteBuilder.js","sourceRoot":"","sources":["../../src/routing/RouteBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { GrpcCallback, GrpcRequest } from '@conduitplatform/grpc-sdk';
2
+ export declare class RoutingController {
3
+ private _routeHandlers;
4
+ handleRequest(call: GrpcRequest<any>, callback: GrpcCallback<any>): void;
5
+ setRoutes(routes: {
6
+ [key: string]: (call: any, callback: any) => void;
7
+ }): void;
8
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RoutingController = void 0;
4
+ const grpc_js_1 = require("@grpc/grpc-js");
5
+ class RoutingController {
6
+ constructor() {
7
+ this._routeHandlers = {};
8
+ }
9
+ handleRequest(call, callback) {
10
+ if (this._routeHandlers[call.request.functionName]) {
11
+ this._routeHandlers[call.request.functionName](call, callback);
12
+ }
13
+ else {
14
+ callback({
15
+ code: grpc_js_1.status.NOT_FOUND,
16
+ message: 'Not found',
17
+ });
18
+ }
19
+ }
20
+ setRoutes(routes) {
21
+ this._routeHandlers = routes;
22
+ }
23
+ }
24
+ exports.RoutingController = RoutingController;
25
+ //# sourceMappingURL=RoutingController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RoutingController.js","sourceRoot":"","sources":["../../src/routing/RoutingController.ts"],"names":[],"mappings":";;;AACA,2CAAuC;AAEvC,MAAa,iBAAiB;IAA9B;QACU,mBAAc,GAElB,EAAE,CAAC;IAgBT,CAAC;IAdC,aAAa,CAAC,IAAsB,EAAE,QAA2B;QAC/D,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAClD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;SAChE;aAAM;YACL,QAAQ,CAAC;gBACP,IAAI,EAAE,gBAAM,CAAC,SAAS;gBACtB,OAAO,EAAE,WAAW;aACrB,CAAC,CAAC;SACJ;IACH,CAAC;IAED,SAAS,CAAC,MAA6D;QACrE,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;IAC/B,CAAC;CACF;AAnBD,8CAmBC"}
@@ -1,13 +1,16 @@
1
1
  import { RouteBuilder } from './RouteBuilder';
2
2
  import { RequestHandlers } from './wrapRouterFunctions';
3
- import { Admin, ConduitMiddlewareOptions, ConduitRouteOptions, ConduitRouteReturnDefinition, ConduitSocketEventHandler, ConduitSocketOptions, ParsedRouterRequest, ProxyMiddlewareOptions, ProxyRouteOptions, Router, UnparsedRouterResponse } from '@conduitplatform/grpc-sdk';
3
+ import { Admin, ConduitMiddlewareOptions, ConduitRouteOptions, ConduitRouteReturnDefinition, ConduitSocketEventHandler, ConduitSocketOptions, ProxyMiddlewareOptions, ProxyRouteOptions, Router } from '@conduitplatform/grpc-sdk';
4
4
  import { GrpcServer } from '../classes';
5
5
  import { ProxyRouteBuilder } from './ProxyRouteBuilder';
6
+ import { RoutingController } from './RoutingController';
6
7
  export declare class RoutingManager {
7
8
  private readonly _router;
8
9
  private readonly _server;
9
10
  private _moduleRoutes;
10
11
  private _moduleProxyRoutes;
12
+ static ClientController: RoutingController;
13
+ static AdminController: RoutingController;
11
14
  private _routeHandlers;
12
15
  private readonly isAdmin;
13
16
  constructor(_router: Router | Admin, _server: GrpcServer);
@@ -18,7 +21,7 @@ export declare class RoutingManager {
18
21
  patch(path: string): RouteBuilder;
19
22
  proxy(): ProxyRouteBuilder;
20
23
  clear(): void;
21
- middleware(input: ConduitMiddlewareOptions, handler: (request: ParsedRouterRequest) => Promise<UnparsedRouterResponse>): void;
24
+ middleware(input: ConduitMiddlewareOptions, handler: RequestHandlers): void;
22
25
  route(input: ConduitRouteOptions, type: ConduitRouteReturnDefinition, handler: RequestHandlers): void;
23
26
  proxyRoute(input: {
24
27
  options: ProxyRouteOptions;
@@ -1,53 +1,12 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
2
  Object.defineProperty(exports, "__esModule", { value: true });
42
3
  exports.RoutingManager = void 0;
43
- var RouteBuilder_1 = require("./RouteBuilder");
44
- var RoutingUtilities_1 = require("./RoutingUtilities");
45
- var fs_1 = __importDefault(require("fs"));
46
- var path_1 = __importDefault(require("path"));
47
- var grpc_sdk_1 = require("@conduitplatform/grpc-sdk");
48
- var ProxyRouteBuilder_1 = require("./ProxyRouteBuilder");
49
- var RoutingManager = /** @class */ (function () {
50
- function RoutingManager(_router, _server) {
4
+ const RouteBuilder_1 = require("./RouteBuilder");
5
+ const RoutingUtilities_1 = require("./RoutingUtilities");
6
+ const grpc_sdk_1 = require("@conduitplatform/grpc-sdk");
7
+ const ProxyRouteBuilder_1 = require("./ProxyRouteBuilder");
8
+ class RoutingManager {
9
+ constructor(_router, _server) {
51
10
  this._router = _router;
52
11
  this._server = _server;
53
12
  this._moduleRoutes = {};
@@ -58,39 +17,39 @@ var RoutingManager = /** @class */ (function () {
58
17
  this.isAdmin = true;
59
18
  }
60
19
  }
61
- RoutingManager.prototype.get = function (path) {
20
+ get(path) {
62
21
  return new RouteBuilder_1.RouteBuilder(this).method(grpc_sdk_1.ConduitRouteActions.GET).path(path);
63
- };
64
- RoutingManager.prototype.post = function (path) {
22
+ }
23
+ post(path) {
65
24
  return new RouteBuilder_1.RouteBuilder(this).method(grpc_sdk_1.ConduitRouteActions.POST).path(path);
66
- };
67
- RoutingManager.prototype.delete = function (path) {
25
+ }
26
+ delete(path) {
68
27
  return new RouteBuilder_1.RouteBuilder(this).method(grpc_sdk_1.ConduitRouteActions.DELETE).path(path);
69
- };
70
- RoutingManager.prototype.update = function (path) {
28
+ }
29
+ update(path) {
71
30
  return new RouteBuilder_1.RouteBuilder(this).method(grpc_sdk_1.ConduitRouteActions.UPDATE).path(path);
72
- };
73
- RoutingManager.prototype.patch = function (path) {
31
+ }
32
+ patch(path) {
74
33
  return new RouteBuilder_1.RouteBuilder(this).method(grpc_sdk_1.ConduitRouteActions.PATCH).path(path);
75
- };
76
- RoutingManager.prototype.proxy = function () {
34
+ }
35
+ proxy() {
77
36
  return new ProxyRouteBuilder_1.ProxyRouteBuilder(this);
78
- };
79
- RoutingManager.prototype.clear = function () {
37
+ }
38
+ clear() {
80
39
  this._moduleRoutes = {};
81
40
  this._routeHandlers = {};
82
41
  this._moduleProxyRoutes = {};
83
- };
84
- RoutingManager.prototype.middleware = function (input, handler) {
85
- var routeObject = this.parseRouteObject({
42
+ }
43
+ middleware(input, handler) {
44
+ const routeObject = this.parseRouteObject({
86
45
  options: input,
87
46
  grpcFunction: input.name,
88
47
  });
89
48
  this._moduleRoutes[routeObject.grpcFunction] = routeObject;
90
49
  this._routeHandlers[routeObject.grpcFunction] = handler;
91
- };
92
- RoutingManager.prototype.route = function (input, type, handler) {
93
- var routeObject = this.parseRouteObject({
50
+ }
51
+ route(input, type, handler) {
52
+ const routeObject = this.parseRouteObject({
94
53
  options: input,
95
54
  returns: {
96
55
  name: type.name,
@@ -100,27 +59,26 @@ var RoutingManager = /** @class */ (function () {
100
59
  });
101
60
  this._moduleRoutes[routeObject.grpcFunction] = routeObject;
102
61
  this._routeHandlers[routeObject.grpcFunction] = handler;
103
- };
104
- RoutingManager.prototype.proxyRoute = function (input) {
105
- var routeObject = this.parseRouteObject({
62
+ }
63
+ proxyRoute(input) {
64
+ const routeObject = this.parseRouteObject({
106
65
  options: input,
107
66
  });
108
67
  this._moduleProxyRoutes[routeObject.options.path + routeObject.proxy.target] =
109
68
  routeObject;
110
- };
111
- RoutingManager.prototype.socket = function (input, events) {
112
- var _this = this;
113
- var eventsObj = {};
114
- var routeObject = this.parseRouteObject({
69
+ }
70
+ socket(input, events) {
71
+ const eventsObj = {};
72
+ const routeObject = this.parseRouteObject({
115
73
  options: input,
116
74
  events: '',
117
75
  });
118
- var primary;
119
- Object.keys(events).forEach(function (eventName) {
76
+ let primary;
77
+ Object.keys(events).forEach((eventName) => {
120
78
  var _a, _b, _c;
121
79
  if (!primary)
122
80
  primary = eventName;
123
- var event = events[eventName];
81
+ const event = events[eventName];
124
82
  eventsObj[eventName] = {
125
83
  grpcFunction: eventName,
126
84
  params: JSON.stringify(event.params),
@@ -129,58 +87,47 @@ var RoutingManager = /** @class */ (function () {
129
87
  fields: JSON.stringify((_c = event.returnType) === null || _c === void 0 ? void 0 : _c.fields),
130
88
  },
131
89
  };
132
- _this._routeHandlers[eventName] = event.handler;
90
+ this._routeHandlers[eventName] = event.handler;
133
91
  });
134
92
  routeObject.events = JSON.stringify(eventsObj);
135
93
  this._moduleRoutes[primary] = routeObject;
136
- };
137
- RoutingManager.prototype.registerRoutes = function () {
138
- return __awaiter(this, void 0, void 0, function () {
139
- var modifiedFunctions, protoDescriptions, protoPath, paths;
140
- return __generator(this, function (_a) {
141
- switch (_a.label) {
142
- case 0:
143
- if (Object.keys(this._routeHandlers).length === 0)
144
- return [2 /*return*/];
145
- modifiedFunctions = (0, RoutingUtilities_1.wrapFunctionsAsync)(this._routeHandlers, this.isAdmin ? 'admin' : 'client');
146
- return [4 /*yield*/, this._router.generateProtoFile(this._router.moduleName, Object.values(this._moduleRoutes))];
147
- case 1:
148
- protoDescriptions = _a.sent();
149
- protoPath = path_1.default.resolve(__dirname, Math.random().toString(36).substring(7));
150
- fs_1.default.writeFileSync(protoPath, protoDescriptions.protoFile);
151
- return [4 /*yield*/, this._server.addService(protoPath, protoDescriptions.formattedModuleName +
152
- (this.isAdmin ? '.admin.Admin' : '.router.Router'), modifiedFunctions)];
153
- case 2:
154
- _a.sent();
155
- paths = Object.values(this._moduleRoutes);
156
- return [2 /*return*/, this._router.register(paths, protoDescriptions.protoFile)];
157
- }
158
- });
159
- });
160
- };
161
- RoutingManager.prototype.generateGrpcName = function (options) {
94
+ }
95
+ async registerRoutes() {
96
+ if (Object.keys(this._routeHandlers).length === 0)
97
+ return;
98
+ const modifiedFunctions = (0, RoutingUtilities_1.wrapFunctionsAsync)(this._routeHandlers, this.isAdmin ? 'admin' : 'client');
99
+ if (this.isAdmin) {
100
+ RoutingManager.AdminController.setRoutes(modifiedFunctions);
101
+ }
102
+ else {
103
+ RoutingManager.ClientController.setRoutes(modifiedFunctions);
104
+ }
105
+ const paths = Object.values(this._moduleRoutes);
106
+ return this._router.register(paths);
107
+ }
108
+ generateGrpcName(options) {
162
109
  if (options.name) {
163
110
  return options.name.charAt(0).toUpperCase() + options.name.slice(1);
164
111
  }
165
112
  else {
166
- var name_1 = options.action.charAt(0) +
113
+ const name = options.action.charAt(0) +
167
114
  options.action.slice(1).toLowerCase() +
168
115
  this.extractNameFromPath(options.path);
169
- return name_1.charAt(0).toUpperCase() + name_1.slice(1);
116
+ return name.charAt(0).toUpperCase() + name.slice(1);
170
117
  }
171
- };
172
- RoutingManager.prototype.extractNameFromPath = function (path) {
118
+ }
119
+ extractNameFromPath(path) {
173
120
  path = path.replace(/[-:]/g, '/');
174
121
  return path
175
122
  .split('/')
176
- .map(function (word) { return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase(); })
123
+ .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
177
124
  .join('');
178
- };
179
- RoutingManager.prototype.parseRouteObject = function (routeObject) {
125
+ }
126
+ parseRouteObject(routeObject) {
180
127
  if (!routeObject.options.middlewares) {
181
128
  routeObject.options.middlewares = [];
182
129
  }
183
- for (var option in routeObject.options) {
130
+ for (const option in routeObject.options) {
184
131
  if (!routeObject.options.hasOwnProperty(option))
185
132
  continue;
186
133
  if (option === 'middlewares')
@@ -191,8 +138,7 @@ var RoutingManager = /** @class */ (function () {
191
138
  routeObject.options[option] = JSON.stringify(routeObject.options[option]);
192
139
  }
193
140
  return routeObject;
194
- };
195
- return RoutingManager;
196
- }());
141
+ }
142
+ }
197
143
  exports.RoutingManager = RoutingManager;
198
144
  //# sourceMappingURL=RoutingManager.js.map