@tramvai/module-http-client 1.78.1 → 1.79.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.
@@ -1,8 +1,8 @@
1
1
  import type { MakeRequest } from '@tinkoff/request-core';
2
2
  import type { APP_INFO_TOKEN } from '@tramvai/core';
3
- import type { API_CLIENT_PASS_HEADERS, HTTP_CLIENT_AGENT, HTTP_CLIENT_FACTORY } from '@tramvai/tokens-http-client';
3
+ import type { API_CLIENT_PASS_HEADERS, HTTP_CLIENT_AGENT, HTTP_CLIENT_FACTORY, DISABLE_CIRCUIT_BREAKER } from '@tramvai/tokens-http-client';
4
4
  import type { LOGGER_TOKEN, CREATE_CACHE_TOKEN, ENV_MANAGER_TOKEN, REQUEST_MANAGER_TOKEN } from '@tramvai/tokens-common';
5
- export declare const httpClientFactory: ({ logger, envManager, appInfo, requestManager, headersList, createCache, tinkoffRequestRegistry, agent, }: {
5
+ export declare const httpClientFactory: ({ logger, envManager, appInfo, requestManager, headersList, createCache, tinkoffRequestRegistry, agent, disableCircuitBreaker, }: {
6
6
  logger: typeof LOGGER_TOKEN;
7
7
  envManager: typeof ENV_MANAGER_TOKEN;
8
8
  appInfo: typeof APP_INFO_TOKEN;
@@ -11,4 +11,5 @@ export declare const httpClientFactory: ({ logger, envManager, appInfo, requestM
11
11
  createCache?: typeof CREATE_CACHE_TOKEN;
12
12
  tinkoffRequestRegistry: Map<string, MakeRequest>;
13
13
  agent?: typeof HTTP_CLIENT_AGENT;
14
+ disableCircuitBreaker: typeof DISABLE_CIRCUIT_BREAKER;
14
15
  }) => typeof HTTP_CLIENT_FACTORY;
@@ -1,7 +1,7 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import { createToken } from '@tinkoff/dippy';
3
3
  import { Module, provide, Scope, APP_INFO_TOKEN } from '@tramvai/core';
4
- import { PAPI_SERVICE, HTTP_CLIENT_FACTORY, API_CLIENT_PASS_HEADERS, HTTP_CLIENT_AGENT, HTTP_CLIENT } from '@tramvai/tokens-http-client';
4
+ import { PAPI_SERVICE, HTTP_CLIENT_FACTORY, API_CLIENT_PASS_HEADERS, HTTP_CLIENT_AGENT, DISABLE_CIRCUIT_BREAKER, HTTP_CLIENT } from '@tramvai/tokens-http-client';
5
5
  export * from '@tramvai/tokens-http-client';
6
6
  import { LOGGER_TOKEN, ENV_MANAGER_TOKEN, REQUEST_MANAGER_TOKEN, ENV_USED_TOKEN, CREATE_CACHE_TOKEN } from '@tramvai/tokens-common';
7
7
  import isNil from '@tinkoff/utils/is/nil';
@@ -56,7 +56,7 @@ const environmentDependentOptions = typeof window === 'undefined'
56
56
  : {
57
57
  defaultTimeout: 30000,
58
58
  };
59
- const httpClientFactory = ({ logger, envManager, appInfo, requestManager, headersList, createCache, tinkoffRequestRegistry, agent, }) => {
59
+ const httpClientFactory = ({ logger, envManager, appInfo, requestManager, headersList, createCache, tinkoffRequestRegistry, agent, disableCircuitBreaker = false, }) => {
60
60
  return (options) => {
61
61
  if (!options.name) {
62
62
  throw Error(`Необходимо передать уникальное поле "name" для экземпляра HTTP клиента!`);
@@ -91,6 +91,10 @@ const httpClientFactory = ({ logger, envManager, appInfo, requestManager, header
91
91
  if (!isNil(forceDisableCache)) {
92
92
  adapterOptions.disableCache = !!forceDisableCache;
93
93
  }
94
+ if (disableCircuitBreaker) {
95
+ adapterOptions.enableCircuitBreaker = false;
96
+ }
97
+ // environment variable in priority over disableCircuitBreaker
94
98
  if (!isNil(forceDisabledCircuitBreaker)) {
95
99
  adapterOptions.enableCircuitBreaker = !forceDisabledCircuitBreaker;
96
100
  }
@@ -175,6 +179,10 @@ HttpClientModule = __decorate([
175
179
  token: HTTP_CLIENT_AGENT,
176
180
  optional: true,
177
181
  },
182
+ disableCircuitBreaker: {
183
+ token: DISABLE_CIRCUIT_BREAKER,
184
+ optional: true,
185
+ },
178
186
  },
179
187
  }),
180
188
  provide({
package/lib/index.es.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import { createChildContainer, createToken } from '@tinkoff/dippy';
3
3
  import { Module, provide, Scope, DI_TOKEN, APP_INFO_TOKEN } from '@tramvai/core';
4
- import { PAPI_SERVICE, HTTP_CLIENT_FACTORY, API_CLIENT_PASS_HEADERS, HTTP_CLIENT_AGENT, HTTP_CLIENT } from '@tramvai/tokens-http-client';
4
+ import { PAPI_SERVICE, HTTP_CLIENT_FACTORY, API_CLIENT_PASS_HEADERS, HTTP_CLIENT_AGENT, DISABLE_CIRCUIT_BREAKER, HTTP_CLIENT } from '@tramvai/tokens-http-client';
5
5
  export * from '@tramvai/tokens-http-client';
6
6
  import { LOGGER_TOKEN, ENV_MANAGER_TOKEN, REQUEST_MANAGER_TOKEN, ENV_USED_TOKEN, CREATE_CACHE_TOKEN } from '@tramvai/tokens-common';
7
7
  import isNil from '@tinkoff/utils/is/nil';
@@ -86,7 +86,7 @@ const environmentDependentOptions = typeof window === 'undefined'
86
86
  : {
87
87
  defaultTimeout: 30000,
88
88
  };
89
- const httpClientFactory = ({ logger, envManager, appInfo, requestManager, headersList, createCache, tinkoffRequestRegistry, agent, }) => {
89
+ const httpClientFactory = ({ logger, envManager, appInfo, requestManager, headersList, createCache, tinkoffRequestRegistry, agent, disableCircuitBreaker = false, }) => {
90
90
  return (options) => {
91
91
  if (!options.name) {
92
92
  throw Error(`Необходимо передать уникальное поле "name" для экземпляра HTTP клиента!`);
@@ -121,6 +121,10 @@ const httpClientFactory = ({ logger, envManager, appInfo, requestManager, header
121
121
  if (!isNil(forceDisableCache)) {
122
122
  adapterOptions.disableCache = !!forceDisableCache;
123
123
  }
124
+ if (disableCircuitBreaker) {
125
+ adapterOptions.enableCircuitBreaker = false;
126
+ }
127
+ // environment variable in priority over disableCircuitBreaker
124
128
  if (!isNil(forceDisabledCircuitBreaker)) {
125
129
  adapterOptions.enableCircuitBreaker = !forceDisabledCircuitBreaker;
126
130
  }
@@ -222,6 +226,10 @@ HttpClientModule = __decorate([
222
226
  token: HTTP_CLIENT_AGENT,
223
227
  optional: true,
224
228
  },
229
+ disableCircuitBreaker: {
230
+ token: DISABLE_CIRCUIT_BREAKER,
231
+ optional: true,
232
+ },
225
233
  },
226
234
  }),
227
235
  provide({
package/lib/index.js CHANGED
@@ -97,7 +97,7 @@ const environmentDependentOptions = typeof window === 'undefined'
97
97
  : {
98
98
  defaultTimeout: 30000,
99
99
  };
100
- const httpClientFactory = ({ logger, envManager, appInfo, requestManager, headersList, createCache, tinkoffRequestRegistry, agent, }) => {
100
+ const httpClientFactory = ({ logger, envManager, appInfo, requestManager, headersList, createCache, tinkoffRequestRegistry, agent, disableCircuitBreaker = false, }) => {
101
101
  return (options) => {
102
102
  if (!options.name) {
103
103
  throw Error(`Необходимо передать уникальное поле "name" для экземпляра HTTP клиента!`);
@@ -132,6 +132,10 @@ const httpClientFactory = ({ logger, envManager, appInfo, requestManager, header
132
132
  if (!isNil__default["default"](forceDisableCache)) {
133
133
  adapterOptions.disableCache = !!forceDisableCache;
134
134
  }
135
+ if (disableCircuitBreaker) {
136
+ adapterOptions.enableCircuitBreaker = false;
137
+ }
138
+ // environment variable in priority over disableCircuitBreaker
135
139
  if (!isNil__default["default"](forceDisabledCircuitBreaker)) {
136
140
  adapterOptions.enableCircuitBreaker = !forceDisabledCircuitBreaker;
137
141
  }
@@ -233,6 +237,10 @@ exports.HttpClientModule = tslib.__decorate([
233
237
  token: tokensHttpClient.HTTP_CLIENT_AGENT,
234
238
  optional: true,
235
239
  },
240
+ disableCircuitBreaker: {
241
+ token: tokensHttpClient.DISABLE_CIRCUIT_BREAKER,
242
+ optional: true,
243
+ },
236
244
  },
237
245
  }),
238
246
  core.provide({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tramvai/module-http-client",
3
- "version": "1.78.1",
3
+ "version": "1.79.0",
4
4
  "initialVersion": "0.58.99",
5
5
  "description": "",
6
6
  "main": "lib/index.js",
@@ -25,22 +25,22 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "@tramvai/http-client": "0.1.25",
28
- "@tramvai/tinkoff-request-http-client-adapter": "0.8.284",
29
- "@tramvai/tokens-http-client": "1.78.1",
30
- "@tramvai/tokens-common": "1.78.1",
31
- "@tramvai/tokens-server": "1.78.1"
28
+ "@tramvai/tinkoff-request-http-client-adapter": "0.8.287",
29
+ "@tramvai/tokens-http-client": "1.79.0",
30
+ "@tramvai/tokens-common": "1.79.0",
31
+ "@tramvai/tokens-server": "1.79.0"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@tinkoff/request-core": "^0.8.9"
35
35
  },
36
36
  "peerDependencies": {
37
37
  "@tinkoff/utils": "^2.1.2",
38
- "@tramvai/core": "1.78.1",
39
- "@tramvai/module-common": "1.78.1",
40
- "@tramvai/papi": "1.78.1",
41
- "@tramvai/test-helpers": "1.78.1",
42
- "@tramvai/test-mocks": "1.78.1",
43
- "@tinkoff/dippy": "0.7.38",
38
+ "@tramvai/core": "1.79.0",
39
+ "@tramvai/module-common": "1.79.0",
40
+ "@tramvai/papi": "1.79.0",
41
+ "@tramvai/test-helpers": "1.79.0",
42
+ "@tramvai/test-mocks": "1.79.0",
43
+ "@tinkoff/dippy": "0.7.39",
44
44
  "node-fetch": "^2.6.1",
45
45
  "tslib": "^2.0.3"
46
46
  },