@tramvai/module-page-render-mode 5.49.1 → 6.59.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.
package/lib/error.es.js CHANGED
@@ -1,11 +1,12 @@
1
1
  import { SilentError } from '@tinkoff/errors';
2
2
 
3
3
  class StopCommandLineRunnerError extends SilentError {
4
+ static errorName = 'StopCommandLineRunnerError';
5
+ name;
4
6
  constructor() {
5
7
  super('Prevent CommandLineRunner from execution');
6
8
  this.name = StopCommandLineRunnerError.errorName;
7
9
  }
8
10
  }
9
- StopCommandLineRunnerError.errorName = 'StopCommandLineRunnerError';
10
11
 
11
12
  export { StopCommandLineRunnerError };
package/lib/error.js CHANGED
@@ -5,11 +5,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var errors = require('@tinkoff/errors');
6
6
 
7
7
  class StopCommandLineRunnerError extends errors.SilentError {
8
+ static errorName = 'StopCommandLineRunnerError';
9
+ name;
8
10
  constructor() {
9
11
  super('Prevent CommandLineRunner from execution');
10
12
  this.name = StopCommandLineRunnerError.errorName;
11
13
  }
12
14
  }
13
- StopCommandLineRunnerError.errorName = 'StopCommandLineRunnerError';
14
15
 
15
16
  exports.StopCommandLineRunnerError = StopCommandLineRunnerError;
@@ -12,12 +12,11 @@ export declare class BackgroundFetchService {
12
12
  backgroundFetchEnabled: BackgroundCacheEnabled;
13
13
  });
14
14
  enabled(): boolean;
15
- revalidate({ key, path, port, deviceType, modern, }: {
15
+ revalidate({ key, path, port, deviceType, }: {
16
16
  key: string;
17
17
  path: string;
18
18
  port: string;
19
19
  deviceType: string;
20
- modern: string;
21
20
  }): Promise<void | {
22
21
  body: string;
23
22
  headers: {
@@ -3,24 +3,22 @@ import { format } from '@tinkoff/url';
3
3
 
4
4
  const userAgentByDeviceType = {
5
5
  /** Chrome on Mobile */
6
- 'mobile-modern': 'Mozilla/5.0 (Linux; Android 7.0; SM-G930V Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.3071.125 Mobile Safari/537.36',
7
- /** Old Chrome on Mobile */
8
- 'mobile-default': 'Mozilla/5.0 (Linux; Android 7.0; SM-G930V Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.3071.125 Mobile Safari/537.36',
9
- /** Chrome on Mac OS */
10
- 'desktop-modern': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.3987.87 Safari/537.36',
11
- /** Old Chrome on Mac OS */
12
- 'desktop-default': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.3987.87 Safari/537.36',
6
+ mobile: 'Mozilla/5.0 (Linux; Android 7.0; SM-G930V Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.3071.125 Mobile Safari/537.36',
7
+ /** Chrome on Desktop */
8
+ desktop: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.3987.87 Safari/537.36',
13
9
  };
14
10
  class BackgroundFetchService {
11
+ requests = new Set();
12
+ log;
13
+ backgroundFetchEnabled;
15
14
  constructor({ logger, backgroundFetchEnabled, }) {
16
- this.requests = new Set();
17
15
  this.log = logger('static-pages');
18
16
  this.backgroundFetchEnabled = backgroundFetchEnabled;
19
17
  }
20
18
  enabled() {
21
19
  return this.backgroundFetchEnabled();
22
20
  }
23
- async revalidate({ key, path, port, deviceType, modern, }) {
21
+ async revalidate({ key, path, port, deviceType, }) {
24
22
  if (this.requests.has(key)) {
25
23
  return;
26
24
  }
@@ -37,7 +35,7 @@ class BackgroundFetchService {
37
35
  });
38
36
  return fetch(revalidateUrl, {
39
37
  headers: {
40
- 'User-Agent': userAgentByDeviceType[`${deviceType}-${modern}`],
38
+ 'User-Agent': userAgentByDeviceType[`${deviceType}`],
41
39
  'X-Tramvai-Static-Page-Revalidate': 'true',
42
40
  },
43
41
  timeout: 10000,
@@ -11,24 +11,22 @@ var fetch__default = /*#__PURE__*/_interopDefaultLegacy(fetch);
11
11
 
12
12
  const userAgentByDeviceType = {
13
13
  /** Chrome on Mobile */
14
- 'mobile-modern': 'Mozilla/5.0 (Linux; Android 7.0; SM-G930V Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.3071.125 Mobile Safari/537.36',
15
- /** Old Chrome on Mobile */
16
- 'mobile-default': 'Mozilla/5.0 (Linux; Android 7.0; SM-G930V Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.3071.125 Mobile Safari/537.36',
17
- /** Chrome on Mac OS */
18
- 'desktop-modern': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.3987.87 Safari/537.36',
19
- /** Old Chrome on Mac OS */
20
- 'desktop-default': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.3987.87 Safari/537.36',
14
+ mobile: 'Mozilla/5.0 (Linux; Android 7.0; SM-G930V Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.3071.125 Mobile Safari/537.36',
15
+ /** Chrome on Desktop */
16
+ desktop: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.3987.87 Safari/537.36',
21
17
  };
22
18
  class BackgroundFetchService {
19
+ requests = new Set();
20
+ log;
21
+ backgroundFetchEnabled;
23
22
  constructor({ logger, backgroundFetchEnabled, }) {
24
- this.requests = new Set();
25
23
  this.log = logger('static-pages');
26
24
  this.backgroundFetchEnabled = backgroundFetchEnabled;
27
25
  }
28
26
  enabled() {
29
27
  return this.backgroundFetchEnabled();
30
28
  }
31
- async revalidate({ key, path, port, deviceType, modern, }) {
29
+ async revalidate({ key, path, port, deviceType, }) {
32
30
  if (this.requests.has(key)) {
33
31
  return;
34
32
  }
@@ -45,7 +43,7 @@ class BackgroundFetchService {
45
43
  });
46
44
  return fetch__default["default"](revalidateUrl, {
47
45
  headers: {
48
- 'User-Agent': userAgentByDeviceType[`${deviceType}-${modern}`],
46
+ 'User-Agent': userAgentByDeviceType[`${deviceType}`],
49
47
  'X-Tramvai-Static-Page-Revalidate': 'true',
50
48
  },
51
49
  timeout: 10000,
@@ -2,7 +2,6 @@ import type { ExtractDependencyType } from '@tinkoff/dippy';
2
2
  import type { USER_AGENT_TOKEN } from '@tramvai/module-client-hints';
3
3
  import type { ENV_MANAGER_TOKEN, LOGGER_TOKEN, REQUEST_MANAGER_TOKEN, RESPONSE_MANAGER_TOKEN } from '@tramvai/tokens-common';
4
4
  import type { FASTIFY_RESPONSE } from '@tramvai/tokens-server-private';
5
- import type { MODERN_SATISFIES_TOKEN } from '@tramvai/tokens-render';
6
5
  import type { STATIC_PAGES_BACKGROUND_FETCH_SERVICE, STATIC_PAGES_GET_CACHE_KEY_TOKEN } from '../staticPages';
7
6
  import type { STATIC_PAGES_SHOULD_USE_CACHE, STATIC_PAGES_CACHE_TOKEN, STATIC_PAGES_MODIFY_CACHE, STATIC_PAGES_OPTIONS_TOKEN, STATIC_PAGES_CACHE_5xx_RESPONSE } from '../tokens';
8
7
  type ResponseManager = ExtractDependencyType<typeof RESPONSE_MANAGER_TOKEN>;
@@ -19,7 +18,6 @@ export declare class StaticPagesService {
19
18
  readonly path: string;
20
19
  readonly port: string;
21
20
  readonly deviceType: string;
22
- readonly modern: string;
23
21
  private responseManager;
24
22
  private response;
25
23
  private log;
@@ -29,14 +27,13 @@ export declare class StaticPagesService {
29
27
  private options;
30
28
  private cache5xxResponse;
31
29
  shouldUseCache: () => boolean;
32
- constructor({ getCacheKey, requestManager, response, responseManager, environmentManager, userAgent, modern, logger, cache, modifyCache, shouldUseCache, backgroundFetchService, options, cache5xxResponse, }: {
30
+ constructor({ getCacheKey, requestManager, response, responseManager, environmentManager, userAgent, logger, cache, modifyCache, shouldUseCache, backgroundFetchService, options, cache5xxResponse, }: {
33
31
  getCacheKey: ExtractDependencyType<typeof STATIC_PAGES_GET_CACHE_KEY_TOKEN>;
34
32
  requestManager: ExtractDependencyType<typeof REQUEST_MANAGER_TOKEN>;
35
33
  responseManager: ResponseManager;
36
34
  response: Response;
37
35
  environmentManager: ExtractDependencyType<typeof ENV_MANAGER_TOKEN>;
38
36
  userAgent: ExtractDependencyType<typeof USER_AGENT_TOKEN>;
39
- modern: ExtractDependencyType<typeof MODERN_SATISFIES_TOKEN>;
40
37
  logger: Logger;
41
38
  cache: Cache;
42
39
  modifyCache: ModifyCache;
@@ -2,12 +2,24 @@
2
2
  // COMMAND_LINE_EXECUTION_END_TOKEN with fresh server timings will not works for responses from cache
3
3
  const HEADERS_BLACKLIST = ['Set-Cookie', 'server-timing'];
4
4
  class StaticPagesService {
5
- constructor({ getCacheKey, requestManager, response, responseManager, environmentManager, userAgent, modern, logger, cache, modifyCache, shouldUseCache, backgroundFetchService, options, cache5xxResponse, }) {
5
+ key;
6
+ path;
7
+ port;
8
+ deviceType;
9
+ responseManager;
10
+ response;
11
+ log;
12
+ cache;
13
+ modifyCache;
14
+ backgroundFetchService;
15
+ options;
16
+ cache5xxResponse;
17
+ shouldUseCache;
18
+ constructor({ getCacheKey, requestManager, response, responseManager, environmentManager, userAgent, logger, cache, modifyCache, shouldUseCache, backgroundFetchService, options, cache5xxResponse, }) {
6
19
  this.key = getCacheKey();
7
20
  this.path = requestManager.getParsedUrl().pathname;
8
21
  this.port = environmentManager.get('PORT');
9
22
  this.deviceType = userAgent.mobileOS ? 'mobile' : 'desktop';
10
- this.modern = modern ? 'modern' : 'default';
11
23
  this.log = logger('static-pages');
12
24
  this.responseManager = responseManager;
13
25
  this.response = response;
@@ -80,7 +92,6 @@ class StaticPagesService {
80
92
  path: this.path,
81
93
  port: this.port,
82
94
  deviceType: this.deviceType,
83
- modern: this.modern,
84
95
  })
85
96
  .then((response) => {
86
97
  if (!response) {
@@ -6,12 +6,24 @@ Object.defineProperty(exports, '__esModule', { value: true });
6
6
  // COMMAND_LINE_EXECUTION_END_TOKEN with fresh server timings will not works for responses from cache
7
7
  const HEADERS_BLACKLIST = ['Set-Cookie', 'server-timing'];
8
8
  class StaticPagesService {
9
- constructor({ getCacheKey, requestManager, response, responseManager, environmentManager, userAgent, modern, logger, cache, modifyCache, shouldUseCache, backgroundFetchService, options, cache5xxResponse, }) {
9
+ key;
10
+ path;
11
+ port;
12
+ deviceType;
13
+ responseManager;
14
+ response;
15
+ log;
16
+ cache;
17
+ modifyCache;
18
+ backgroundFetchService;
19
+ options;
20
+ cache5xxResponse;
21
+ shouldUseCache;
22
+ constructor({ getCacheKey, requestManager, response, responseManager, environmentManager, userAgent, logger, cache, modifyCache, shouldUseCache, backgroundFetchService, options, cache5xxResponse, }) {
10
23
  this.key = getCacheKey();
11
24
  this.path = requestManager.getParsedUrl().pathname;
12
25
  this.port = environmentManager.get('PORT');
13
26
  this.deviceType = userAgent.mobileOS ? 'mobile' : 'desktop';
14
- this.modern = modern ? 'modern' : 'default';
15
27
  this.log = logger('static-pages');
16
28
  this.responseManager = responseManager;
17
29
  this.response = response;
@@ -84,7 +96,6 @@ class StaticPagesService {
84
96
  path: this.path,
85
97
  port: this.port,
86
98
  deviceType: this.deviceType,
87
- modern: this.modern,
88
99
  })
89
100
  .then((response) => {
90
101
  if (!response) {
@@ -53,11 +53,6 @@ export declare const staticPagesProviders: (import("@tinkoff/dippy/lib/Provider"
53
53
  userAgent: import("@tinkoff/user-agent").UserAgent & {
54
54
  __type?: "base token";
55
55
  };
56
- modern: (false & {
57
- __type?: "base token";
58
- }) | (true & {
59
- __type?: "base token";
60
- });
61
56
  }, () => string> | import("@tinkoff/dippy/lib/Provider").FactoryProviderWithDeps<{
62
57
  requestManager: import("@tramvai/tokens-common").RequestManager & {
63
58
  __type?: "base token";
@@ -65,11 +60,6 @@ export declare const staticPagesProviders: (import("@tinkoff/dippy/lib/Provider"
65
60
  userAgent: import("@tinkoff/user-agent").UserAgent & {
66
61
  __type?: "base token";
67
62
  };
68
- modern: (false & {
69
- __type?: "base token";
70
- }) | (true & {
71
- __type?: "base token";
72
- });
73
63
  }, () => string> | import("@tinkoff/dippy/lib/Provider").ClassProviderWithDeps<{
74
64
  requestManager: import("@tramvai/tokens-common").RequestManager & {
75
65
  __type?: "base token";
@@ -117,11 +107,6 @@ export declare const staticPagesProviders: (import("@tinkoff/dippy/lib/Provider"
117
107
  userAgent: import("@tinkoff/user-agent").UserAgent & {
118
108
  __type?: "base token";
119
109
  };
120
- modern: (false & {
121
- __type?: "base token";
122
- }) | (true & {
123
- __type?: "base token";
124
- });
125
110
  logger: import("@tramvai/tokens-common").Logger & ((configOrName: string | {
126
111
  [key: string]: any;
127
112
  name: string;
@@ -168,11 +153,6 @@ export declare const staticPagesProviders: (import("@tinkoff/dippy/lib/Provider"
168
153
  userAgent: import("@tinkoff/user-agent").UserAgent & {
169
154
  __type?: "base token";
170
155
  };
171
- modern: (false & {
172
- __type?: "base token";
173
- }) | (true & {
174
- __type?: "base token";
175
- });
176
156
  logger: import("@tramvai/tokens-common").Logger & ((configOrName: string | {
177
157
  [key: string]: any;
178
158
  name: string;
@@ -1,7 +1,6 @@
1
1
  import { createToken, provide, Scope, commandLineListTokens, DI_TOKEN } from '@tramvai/core';
2
2
  import { CREATE_CACHE_TOKEN, REQUEST_MANAGER_TOKEN, LOGGER_TOKEN, RESPONSE_MANAGER_TOKEN, ENV_MANAGER_TOKEN } from '@tramvai/tokens-common';
3
3
  import { FASTIFY_RESPONSE } from '@tramvai/tokens-server-private';
4
- import { MODERN_SATISFIES_TOKEN } from '@tramvai/tokens-render';
5
4
  import { PAGE_SERVICE_TOKEN } from '@tramvai/tokens-router';
6
5
  import { USER_AGENT_TOKEN } from '@tramvai/module-client-hints';
7
6
  import { SERVER_MODULE_PAPI_PRIVATE_ROUTE } from '@tramvai/tokens-server';
@@ -58,7 +57,7 @@ const staticPagesProviders = [
58
57
  }),
59
58
  provide({
60
59
  provide: STATIC_PAGES_GET_CACHE_KEY_TOKEN,
61
- useFactory: ({ requestManager, userAgent, modern }) => {
60
+ useFactory: ({ requestManager, userAgent }) => {
62
61
  return () => {
63
62
  const deviceType = userAgent.mobileOS ? 'mobile' : 'desktop';
64
63
  return getCacheKey({
@@ -66,14 +65,12 @@ const staticPagesProviders = [
66
65
  host: requestManager.getHost(),
67
66
  path: requestManager.getParsedUrl().pathname,
68
67
  deviceType,
69
- modern,
70
68
  });
71
69
  };
72
70
  },
73
71
  deps: {
74
72
  requestManager: REQUEST_MANAGER_TOKEN,
75
73
  userAgent: USER_AGENT_TOKEN,
76
- modern: MODERN_SATISFIES_TOKEN,
77
74
  },
78
75
  }),
79
76
  provide({
@@ -119,7 +116,6 @@ const staticPagesProviders = [
119
116
  response: FASTIFY_RESPONSE,
120
117
  environmentManager: ENV_MANAGER_TOKEN,
121
118
  userAgent: USER_AGENT_TOKEN,
122
- modern: MODERN_SATISFIES_TOKEN,
123
119
  logger: LOGGER_TOKEN,
124
120
  cache: STATIC_PAGES_CACHE_TOKEN,
125
121
  modifyCache: { token: STATIC_PAGES_MODIFY_CACHE, optional: true },
@@ -5,7 +5,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var core = require('@tramvai/core');
6
6
  var tokensCommon = require('@tramvai/tokens-common');
7
7
  var tokensServerPrivate = require('@tramvai/tokens-server-private');
8
- var tokensRender = require('@tramvai/tokens-render');
9
8
  var tokensRouter = require('@tramvai/tokens-router');
10
9
  var moduleClientHints = require('@tramvai/module-client-hints');
11
10
  var tokensServer = require('@tramvai/tokens-server');
@@ -62,7 +61,7 @@ const staticPagesProviders = [
62
61
  }),
63
62
  core.provide({
64
63
  provide: STATIC_PAGES_GET_CACHE_KEY_TOKEN,
65
- useFactory: ({ requestManager, userAgent, modern }) => {
64
+ useFactory: ({ requestManager, userAgent }) => {
66
65
  return () => {
67
66
  const deviceType = userAgent.mobileOS ? 'mobile' : 'desktop';
68
67
  return cacheKey.getCacheKey({
@@ -70,14 +69,12 @@ const staticPagesProviders = [
70
69
  host: requestManager.getHost(),
71
70
  path: requestManager.getParsedUrl().pathname,
72
71
  deviceType,
73
- modern,
74
72
  });
75
73
  };
76
74
  },
77
75
  deps: {
78
76
  requestManager: tokensCommon.REQUEST_MANAGER_TOKEN,
79
77
  userAgent: moduleClientHints.USER_AGENT_TOKEN,
80
- modern: tokensRender.MODERN_SATISFIES_TOKEN,
81
78
  },
82
79
  }),
83
80
  core.provide({
@@ -123,7 +120,6 @@ const staticPagesProviders = [
123
120
  response: tokensServerPrivate.FASTIFY_RESPONSE,
124
121
  environmentManager: tokensCommon.ENV_MANAGER_TOKEN,
125
122
  userAgent: moduleClientHints.USER_AGENT_TOKEN,
126
- modern: tokensRender.MODERN_SATISFIES_TOKEN,
127
123
  logger: tokensCommon.LOGGER_TOKEN,
128
124
  cache: tokens.STATIC_PAGES_CACHE_TOKEN,
129
125
  modifyCache: { token: tokens.STATIC_PAGES_MODIFY_CACHE, optional: true },
@@ -1,9 +1,8 @@
1
- export declare const getCacheKey: ({ method, host, path, deviceType, modern, }: {
1
+ export declare const getCacheKey: ({ method, host, path, deviceType, }: {
2
2
  method: string;
3
3
  host: string;
4
4
  path: string;
5
5
  deviceType: 'desktop' | 'mobile';
6
- modern: boolean;
7
6
  }) => string;
8
7
  export declare const parseCacheKey: (key: string) => string[];
9
8
  //# sourceMappingURL=cacheKey.d.ts.map
@@ -1,5 +1,5 @@
1
- const getCacheKey = ({ method, host, path, deviceType, modern, }) => {
2
- return `${method}=${host}=${path}=${deviceType}=${modern ? 'modern' : 'default'}`;
1
+ const getCacheKey = ({ method, host, path, deviceType, }) => {
2
+ return `${method}=${host}=${path}=${deviceType}`;
3
3
  };
4
4
 
5
5
  export { getCacheKey };
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const getCacheKey = ({ method, host, path, deviceType, modern, }) => {
6
- return `${method}=${host}=${path}=${deviceType}=${modern ? 'modern' : 'default'}`;
5
+ const getCacheKey = ({ method, host, path, deviceType, }) => {
6
+ return `${method}=${host}=${path}=${deviceType}`;
7
7
  };
8
8
 
9
9
  exports.getCacheKey = getCacheKey;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tramvai/module-page-render-mode",
3
- "version": "5.49.1",
3
+ "version": "6.59.0",
4
4
  "description": "Enable different rendering modes for pages",
5
5
  "main": "./lib/server.js",
6
6
  "module": "./lib/server.es.js",
@@ -23,25 +23,25 @@
23
23
  "registry": "https://registry.npmjs.org/"
24
24
  },
25
25
  "dependencies": {
26
- "node-fetch": "^2.6.1",
27
- "@tinkoff/errors": "0.6.2",
28
- "@tinkoff/url": "0.11.2"
26
+ "@tinkoff/errors": "0.7.1",
27
+ "@tinkoff/url": "0.12.1",
28
+ "node-fetch": "^2.6.1"
29
29
  },
30
30
  "peerDependencies": {
31
+ "@tinkoff/dippy": "0.12.3",
31
32
  "@tinkoff/utils": "^2.1.2",
32
- "@tinkoff/dippy": "0.11.4",
33
- "@tramvai/core": "5.49.1",
34
- "@tramvai/react": "5.49.1",
35
- "@tramvai/papi": "5.49.1",
36
- "@tramvai/module-router": "5.49.1",
37
- "@tramvai/module-client-hints": "5.49.1",
38
- "@tramvai/tokens-common": "5.49.1",
39
- "@tramvai/tokens-core": "5.49.1",
40
- "@tramvai/tokens-render": "5.49.1",
41
- "@tramvai/tokens-router": "5.49.1",
42
- "@tramvai/tokens-server": "5.49.1",
43
- "@tramvai/tokens-server-private": "5.49.1",
44
- "@tramvai/tokens-metrics": "5.49.1",
33
+ "@tramvai/core": "6.59.0",
34
+ "@tramvai/module-client-hints": "6.59.0",
35
+ "@tramvai/module-router": "6.59.0",
36
+ "@tramvai/papi": "6.59.0",
37
+ "@tramvai/react": "6.59.0",
38
+ "@tramvai/tokens-common": "6.59.0",
39
+ "@tramvai/tokens-core": "6.59.0",
40
+ "@tramvai/tokens-metrics": "6.59.0",
41
+ "@tramvai/tokens-render": "6.59.0",
42
+ "@tramvai/tokens-router": "6.59.0",
43
+ "@tramvai/tokens-server": "6.59.0",
44
+ "@tramvai/tokens-server-private": "6.59.0",
45
45
  "prom-client": "^14.2.0",
46
46
  "react": ">=16.14.0",
47
47
  "tslib": "^2.4.0"