@gravity-ui/gateway 1.3.1 → 1.5.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.
@@ -42,6 +42,7 @@ const common_2 = require("../utils/common");
42
42
  const grpc_1 = require("../utils/grpc");
43
43
  const grpc_reflection_1 = require("../utils/grpc-reflection");
44
44
  const parse_error_1 = require("../utils/parse-error");
45
+ const proto_path_resolver_1 = require("../utils/proto-path-resolver");
45
46
  const redact_sensitive_headers_1 = require("../utils/redact-sensitive-headers");
46
47
  const validate_1 = require("../utils/validate");
47
48
  const reflectLoaderOptions = {
@@ -59,32 +60,11 @@ function createRoot(includeGrpcPaths) {
59
60
  // Load well-known internal protobufjs types
60
61
  root.loadSync('google/protobuf/struct.proto');
61
62
  root.loadSync('google/protobuf/wrappers.proto');
62
- addIncludePathResolver(root, includeGrpcPaths);
63
+ grpcLoaderOptions.includeDirs = [...grpcLoaderOptions.includeDirs, ...(includeGrpcPaths !== null && includeGrpcPaths !== void 0 ? includeGrpcPaths : [])];
64
+ (0, proto_path_resolver_1.patchProtoPathResolver)(root, grpcLoaderOptions.includeDirs);
63
65
  return root;
64
66
  }
65
67
  exports.createRoot = createRoot;
66
- function addIncludePathResolver(root, includeGrpcPaths) {
67
- grpcLoaderOptions.includeDirs = [...grpcLoaderOptions.includeDirs, ...(includeGrpcPaths !== null && includeGrpcPaths !== void 0 ? includeGrpcPaths : [])];
68
- const { includeDirs } = grpcLoaderOptions;
69
- const originalResolvePath = root.resolvePath;
70
- root.resolvePath = function (origin, target) {
71
- if (target in protobufjs.common || path_1.default.isAbsolute(target)) {
72
- return target;
73
- }
74
- for (let i = 0; i < includeDirs.length; i++) {
75
- const directory = includeDirs[i];
76
- const fullPath = path_1.default.join(directory, target);
77
- try {
78
- fs_1.default.accessSync(fullPath, fs_1.default.constants.R_OK);
79
- return fullPath;
80
- }
81
- catch (err) {
82
- continue;
83
- }
84
- }
85
- return originalResolvePath(origin, target);
86
- };
87
- }
88
68
  function getCredentialsMap(caCertificatePath) {
89
69
  let certificate;
90
70
  if (caCertificatePath && fs_1.default.existsSync(caCertificatePath)) {
@@ -213,6 +213,11 @@ function createRestAction(endpoints, config, serviceKey, actionName, options, Er
213
213
  paramsSerializer: config.paramsSerializer,
214
214
  });
215
215
  }
216
+ if (config.responseType) {
217
+ Object.assign(requestConfig, {
218
+ responseType: config.responseType,
219
+ });
220
+ }
216
221
  try {
217
222
  const response = await axiosClient.request(requestConfig);
218
223
  const endRequestTime = Date.now();
@@ -120,6 +120,7 @@ export interface ApiServiceRestActionConfig<Context extends GatewayContext, TOut
120
120
  method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'HEAD' | 'OPTIONS';
121
121
  path: (args: TParams) => string;
122
122
  paramsSerializer?: AxiosRequestConfig['paramsSerializer'];
123
+ responseType?: AxiosRequestConfig['responseType'];
123
124
  maxRedirects?: number;
124
125
  }
125
126
  export interface ApiServiceBaseGrpcActionConfig<Context extends GatewayContext, TOutput, TParams = undefined, TTransformed = TOutput> extends ApiServiceBaseActionConfig<Context, TOutput, TParams, TTransformed> {
@@ -1,5 +1,9 @@
1
1
  import type { ChannelCredentials } from '@grpc/grpc-js';
2
2
  import * as protobufjs from 'protobufjs';
3
+ type DescriptorExtensionProto = string[] | {
4
+ includeProtoRoots: string[];
5
+ filenames: string[];
6
+ };
3
7
  /**
4
8
  * @param actionEndpoint
5
9
  * @param protoKey
@@ -9,7 +13,7 @@ import * as protobufjs from 'protobufjs';
9
13
  * use toDescriptor for use with protoLoader.
10
14
  * use toJSON for get a JSON descriptor.
11
15
  */
12
- export declare function getCachedReflectionRoot(actionEndpoint: string, protoKey: string, credentials: ChannelCredentials, descriptorExtensionProto?: string[]): Promise<protobufjs.Root>;
16
+ export declare function getCachedReflectionRoot(actionEndpoint: string, protoKey: string, credentials: ChannelCredentials, descriptorExtensionProto?: DescriptorExtensionProto): Promise<protobufjs.Root>;
13
17
  /**
14
18
  * @param actionEndpoint
15
19
  * @param protoKey
@@ -20,3 +24,4 @@ export declare function getCachedReflectionRoot(actionEndpoint: string, protoKey
20
24
  * use toJSON for get a JSON descriptor.
21
25
  */
22
26
  export declare function getReflectionRoot(actionEndpoint: string, protoKey: string, credentials: ChannelCredentials, addToCache?: boolean): Promise<protobufjs.Root>;
27
+ export {};
@@ -1,17 +1,53 @@
1
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
5
28
  Object.defineProperty(exports, "__esModule", { value: true });
6
29
  exports.getReflectionRoot = exports.getCachedReflectionRoot = void 0;
7
30
  const lodash_1 = __importDefault(require("lodash"));
31
+ const protobufjs = __importStar(require("protobufjs"));
32
+ const proto_path_resolver_1 = require("./proto-path-resolver");
8
33
  const reflectionClientsMap = {};
9
34
  const reflectionRootPromiseMap = {};
10
35
  function getCachedClient(actionEndpoint, credentials, descriptorExtensionProto) {
11
36
  let client = reflectionClientsMap[actionEndpoint];
12
37
  if (!client) {
13
38
  const grpcReflection = require('grpc-reflection-js');
14
- client = new grpcReflection.Client(actionEndpoint, credentials, undefined, undefined, descriptorExtensionProto);
39
+ let descriptorRoot;
40
+ if (descriptorExtensionProto) {
41
+ descriptorRoot = protobufjs.Root.fromJSON(require('protobufjs/ext/descriptor'));
42
+ if (Array.isArray(descriptorExtensionProto)) {
43
+ descriptorRoot.loadSync(descriptorExtensionProto);
44
+ }
45
+ else {
46
+ (0, proto_path_resolver_1.patchProtoPathResolver)(descriptorRoot, descriptorExtensionProto.includeProtoRoots);
47
+ descriptorRoot.loadSync(descriptorExtensionProto.filenames);
48
+ }
49
+ }
50
+ client = new grpcReflection.Client(actionEndpoint, credentials, undefined, undefined, descriptorRoot);
15
51
  reflectionClientsMap[actionEndpoint] = client;
16
52
  }
17
53
  return client;
@@ -0,0 +1,2 @@
1
+ import * as protobufjs from 'protobufjs';
2
+ export declare function patchProtoPathResolver(root: protobufjs.Root, includeDirs: string[]): void;
@@ -0,0 +1,53 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.patchProtoPathResolver = void 0;
30
+ const fs_1 = __importDefault(require("fs"));
31
+ const path_1 = __importDefault(require("path"));
32
+ const protobufjs = __importStar(require("protobufjs"));
33
+ function patchProtoPathResolver(root, includeDirs) {
34
+ const originalResolvePath = root.resolvePath;
35
+ root.resolvePath = function (origin, target) {
36
+ if (target in protobufjs.common || path_1.default.isAbsolute(target)) {
37
+ return target;
38
+ }
39
+ for (let i = 0; i < includeDirs.length; i++) {
40
+ const directory = includeDirs[i];
41
+ const fullPath = path_1.default.join(directory, target);
42
+ try {
43
+ fs_1.default.accessSync(fullPath, fs_1.default.constants.R_OK);
44
+ return fullPath;
45
+ }
46
+ catch (err) {
47
+ continue;
48
+ }
49
+ }
50
+ return originalResolvePath(origin, target);
51
+ };
52
+ }
53
+ exports.patchProtoPathResolver = patchProtoPathResolver;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravity-ui/gateway",
3
- "version": "1.3.1",
3
+ "version": "1.5.0",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "main": "build/index.js",
@@ -1,5 +1,5 @@
1
1
  diff --git a/node_modules/grpc-reflection-js/build/src/client.d.ts b/node_modules/grpc-reflection-js/build/src/client.d.ts
2
- index 72b4587..b4bb034 100644
2
+ index 72b4587..c082f16 100644
3
3
  --- a/node_modules/grpc-reflection-js/build/src/client.d.ts
4
4
  +++ b/node_modules/grpc-reflection-js/build/src/client.d.ts
5
5
  @@ -5,7 +5,8 @@ export declare class Client {
@@ -8,37 +8,36 @@ index 72b4587..b4bb034 100644
8
8
  private fileDescriptorCache;
9
9
  - constructor(url: string, credentials: ChannelCredentials, options?: object, metadata?: Metadata);
10
10
  + private descriptor;
11
- + constructor(url: string, credentials: ChannelCredentials, options?: object, metadata?: Metadata, descriptorExtensionProto?: string[]);
11
+ + constructor(url: string, credentials: ChannelCredentials, options?: object, metadata?: Metadata, descriptorRoot?: Root);
12
12
  listServices(): Promise<string[]>;
13
13
  fileContainingSymbol(symbol: string): Promise<Root>;
14
14
  fileByFilename(filename: string): Promise<Root>;
15
15
  diff --git a/node_modules/grpc-reflection-js/build/src/client.js b/node_modules/grpc-reflection-js/build/src/client.js
16
- index 3747349..bc2ac34 100644
16
+ index 3747349..3f29d3c 100644
17
17
  --- a/node_modules/grpc-reflection-js/build/src/client.js
18
18
  +++ b/node_modules/grpc-reflection-js/build/src/client.js
19
- @@ -27,14 +27,19 @@ const grpc_js_1 = require("@grpc/grpc-js");
19
+ @@ -27,14 +27,18 @@ const grpc_js_1 = require("@grpc/grpc-js");
20
20
  const descriptor_1 = require("./descriptor");
21
21
  const services = __importStar(require("./reflection_grpc_pb"));
22
22
  const reflection_pb_1 = require("./reflection_pb");
23
23
  -const descriptor_2 = require("protobufjs/ext/descriptor");
24
- +const protobufjs_1 = require("protobufjs");
24
+ +const descriptor_2 = __importDefault(require("protobufjs/ext/descriptor"));
25
25
  const lodash_set_1 = __importDefault(require("lodash.set"));
26
26
  class Client {
27
27
  - constructor(url, credentials, options, metadata) {
28
- + constructor(url, credentials, options, metadata, descriptorExtensionProto) {
28
+ + constructor(url, credentials, options, metadata, descriptorRoot) {
29
29
  this.fileDescriptorCache = new Map();
30
+ + this.descriptor = descriptor_2.default;
30
31
  this.fileDescriptorCache = new Map();
31
32
  this.metadata = metadata || new grpc_js_1.Metadata();
32
33
  this.grpcClient = new services.ServerReflectionClient(url, credentials, options);
33
- + const descriptorRoot = protobufjs_1.Root.fromJSON(require('protobufjs/google/protobuf/descriptor.json'));
34
- + if (descriptorExtensionProto) {
35
- + descriptorRoot.loadSync(descriptorExtensionProto);
34
+ + if (descriptorRoot) {
35
+ + this.descriptor = descriptorRoot.lookup('.google.protobuf');
36
36
  + }
37
- + this.descriptor = descriptorRoot.lookup('.google.protobuf');
38
37
  }
39
38
  listServices() {
40
39
  return new Promise((resolve, reject) => {
41
- @@ -79,7 +84,7 @@ class Client {
40
+ @@ -79,7 +83,7 @@ class Client {
42
41
  }
43
42
  async resolveFileDescriptorSet(fileDescriptorProtos) {
44
43
  const fileDescriptorMap = await this.resolveDescriptorRecursive(fileDescriptorProtos);
@@ -47,7 +46,7 @@ index 3747349..bc2ac34 100644
47
46
  lodash_set_1.default(fileDescriptorSet, 'file', Array.from(fileDescriptorMap.values()));
48
47
  return descriptor_1.getDescriptorRootFromDescriptorSet(fileDescriptorSet);
49
48
  }
50
- @@ -100,6 +105,7 @@ class Client {
49
+ @@ -100,6 +104,7 @@ class Client {
51
50
  }
52
51
  getFileContainingSymbol(symbol) {
53
52
  const fileDescriptorCache = this.fileDescriptorCache;
@@ -55,7 +54,7 @@ index 3747349..bc2ac34 100644
55
54
  return new Promise((resolve, reject) => {
56
55
  function dataCallback(response) {
57
56
  var _a;
58
- @@ -107,7 +113,7 @@ class Client {
57
+ @@ -107,7 +112,7 @@ class Client {
59
58
  const fileDescriptorProtoBytes = (((_a = response
60
59
  .getFileDescriptorResponse()) === null || _a === void 0 ? void 0 : _a.getFileDescriptorProtoList()) || []);
61
60
  resolve(fileDescriptorProtoBytes.map(descriptorByte => {
@@ -64,7 +63,7 @@ index 3747349..bc2ac34 100644
64
63
  fileDescriptorCache.set(fileDescriptorProto.name, fileDescriptorProto);
65
64
  return fileDescriptorProto;
66
65
  }));
67
- @@ -131,6 +137,7 @@ class Client {
66
+ @@ -131,6 +136,7 @@ class Client {
68
67
  getFilesByFilenames(symbols) {
69
68
  const result = [];
70
69
  const fileDescriptorCache = this.fileDescriptorCache;
@@ -72,7 +71,7 @@ index 3747349..bc2ac34 100644
72
71
  const symbolsToFetch = symbols.filter(symbol => {
73
72
  const cached = fileDescriptorCache.get(symbol);
74
73
  if (cached) {
75
- @@ -149,7 +156,7 @@ class Client {
74
+ @@ -149,7 +155,7 @@ class Client {
76
75
  (_b = (_a = response
77
76
  .getFileDescriptorResponse()) === null || _a === void 0 ? void 0 : _a.getFileDescriptorProtoList()) === null || _b === void 0 ? void 0 : _b.forEach(descriptorByte => {
78
77
  if (descriptorByte instanceof Uint8Array) {
@@ -82,11 +81,11 @@ index 3747349..bc2ac34 100644
82
81
  result.push(fileDescriptorProto);
83
82
  }
84
83
  diff --git a/node_modules/grpc-reflection-js/build/src/client.js.map b/node_modules/grpc-reflection-js/build/src/client.js.map
85
- index e589db9..0284c65 100644
84
+ index e589db9..e61c3b7 100644
86
85
  --- a/node_modules/grpc-reflection-js/build/src/client.js.map
87
86
  +++ b/node_modules/grpc-reflection-js/build/src/client.js.map
88
87
  @@ -1 +1 @@
89
88
  -{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
90
89
 
91
- +{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
90
+ +{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
92
91