@sima-land/isomorph 11.0.0-alpha.35 → 11.0.0-alpha.36
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/http/errors.d.ts +12 -0
- package/http/errors.js +17 -1
- package/http/errors.js.map +1 -1
- package/http/index.d.ts +2 -2
- package/http/index.js +3 -1
- package/http/index.js.map +1 -1
- package/package.json +7 -6
- package/preset/isomorphic/constants.d.ts +7 -0
- package/preset/isomorphic/constants.js +11 -0
- package/preset/isomorphic/constants.js.map +1 -0
- package/preset/isomorphic/providers/index.d.ts +22 -0
- package/preset/isomorphic/providers/index.js +38 -0
- package/preset/isomorphic/providers/index.js.map +1 -0
- package/preset/isomorphic/types.d.ts +43 -0
- package/{http-client → preset/isomorphic}/types.js.map +1 -1
- package/preset/{parts/utils.d.ts → isomorphic/utils/index.d.ts} +14 -6
- package/preset/{parts/utils.js → isomorphic/utils/index.js} +31 -5
- package/preset/isomorphic/utils/index.js.map +1 -0
- package/preset/node/handler/index.d.ts +10 -0
- package/preset/node/handler/index.js +38 -0
- package/preset/node/handler/index.js.map +1 -0
- package/preset/node/handler/providers/index.d.ts +35 -0
- package/preset/node/handler/providers/index.js +184 -0
- package/preset/node/handler/providers/index.js.map +1 -0
- package/preset/node/handler/utils/index.d.ts +46 -0
- package/preset/node/handler/utils/index.js +81 -0
- package/preset/node/handler/utils/index.js.map +1 -0
- package/preset/node/index.d.ts +2 -29
- package/preset/node/index.js +6 -289
- package/preset/node/index.js.map +1 -1
- package/preset/node/node/index.d.ts +8 -0
- package/preset/node/node/index.js +49 -0
- package/preset/node/node/index.js.map +1 -0
- package/preset/node/node/providers/index.d.ts +112 -0
- package/preset/node/node/providers/index.js +392 -0
- package/preset/node/node/providers/index.js.map +1 -0
- package/{http-client/middleware/tracing.d.ts → preset/node/node/utils/http-client/index.d.ts} +9 -0
- package/{http-client/middleware/tracing.js → preset/node/node/utils/http-client/index.js} +32 -3
- package/preset/node/node/utils/http-client/index.js.map +1 -0
- package/preset/node/node/utils/http-server/index.d.ts +7 -0
- package/preset/node/node/utils/http-server/index.js +21 -0
- package/preset/node/node/utils/http-server/index.js.map +1 -0
- package/preset/web/index.d.ts +8 -0
- package/preset/web/index.js +30 -0
- package/preset/web/index.js.map +1 -0
- package/preset/web/providers/index.d.ts +35 -0
- package/preset/{browser → web/providers}/index.js +32 -32
- package/preset/web/providers/index.js.map +1 -0
- package/tokens.d.ts +11 -11
- package/tokens.js +1 -2
- package/tokens.js.map +1 -1
- package/utils/axios/index.d.ts +4 -0
- package/utils/axios/index.js +13 -0
- package/utils/axios/index.js.map +1 -0
- package/utils/axios/middleware/cookie.d.ts +8 -0
- package/utils/axios/middleware/cookie.js +26 -0
- package/utils/axios/middleware/cookie.js.map +1 -0
- package/utils/axios/middleware/log.js.map +1 -0
- package/{http-client → utils/axios}/sauce/index.d.ts +1 -1
- package/{http-client → utils/axios}/sauce/index.js +1 -1
- package/utils/axios/sauce/index.js.map +1 -0
- package/{http-client/utils.d.ts → utils/axios/utils/index.d.ts} +0 -7
- package/{http-client/utils.js → utils/axios/utils/index.js} +2 -28
- package/utils/axios/utils/index.js.map +1 -0
- package/utils/express/handler/health-check.js.map +1 -0
- package/utils/express/index.d.ts +2 -0
- package/utils/express/index.js +8 -0
- package/utils/express/index.js.map +1 -0
- package/utils/express/utils/index.d.ts +7 -0
- package/utils/express/utils/index.js +20 -0
- package/utils/express/utils/index.js.map +1 -0
- package/utils/react/error-handlers/index.d.ts +1 -1
- package/utils/react/error-handlers/index.js.map +1 -1
- package/utils/web/analytics/data-layer.js +16 -0
- package/utils/web/analytics/data-layer.js.map +1 -0
- package/utils/web/analytics/oko.d.ts +6 -0
- package/utils/web/analytics/oko.js +16 -0
- package/utils/web/analytics/oko.js.map +1 -0
- package/utils/{browser → web}/storage/index.d.ts +1 -0
- package/utils/{browser → web}/storage/index.js +1 -0
- package/utils/web/storage/index.js.map +1 -0
- package/http-client/middleware/cookie.d.ts +0 -20
- package/http-client/middleware/cookie.js +0 -64
- package/http-client/middleware/cookie.js.map +0 -1
- package/http-client/middleware/headers.d.ts +0 -13
- package/http-client/middleware/headers.js +0 -25
- package/http-client/middleware/headers.js.map +0 -1
- package/http-client/middleware/log.js.map +0 -1
- package/http-client/middleware/tracing.js.map +0 -1
- package/http-client/sauce/index.js.map +0 -1
- package/http-client/types.d.ts +0 -6
- package/http-client/utils.js.map +0 -1
- package/http-server/constants.d.ts +0 -4
- package/http-server/constants.js +0 -8
- package/http-server/constants.js.map +0 -1
- package/http-server/errors.d.ts +0 -11
- package/http-server/errors.js +0 -18
- package/http-server/errors.js.map +0 -1
- package/http-server/handler/health-check.js.map +0 -1
- package/http-server/middleware/tracing.d.ts +0 -14
- package/http-server/middleware/tracing.js +0 -51
- package/http-server/middleware/tracing.js.map +0 -1
- package/http-server/types.d.ts +0 -20
- package/http-server/types.js +0 -3
- package/http-server/types.js.map +0 -1
- package/http-server/utils.d.ts +0 -43
- package/http-server/utils.js +0 -134
- package/http-server/utils.js.map +0 -1
- package/preset/browser/index.d.ts +0 -17
- package/preset/browser/index.js.map +0 -1
- package/preset/node/handler.d.ts +0 -20
- package/preset/node/handler.js +0 -208
- package/preset/node/handler.js.map +0 -1
- package/preset/parts/providers.d.ts +0 -7
- package/preset/parts/providers.js +0 -26
- package/preset/parts/providers.js.map +0 -1
- package/preset/parts/types.d.ts +0 -14
- package/preset/parts/types.js +0 -3
- package/preset/parts/types.js.map +0 -1
- package/preset/parts/utils.js.map +0 -1
- package/utils/browser/analytics/data-layer.js +0 -14
- package/utils/browser/analytics/data-layer.js.map +0 -1
- package/utils/browser/analytics/oko.d.ts +0 -13
- package/utils/browser/analytics/oko.js +0 -40
- package/utils/browser/analytics/oko.js.map +0 -1
- package/utils/browser/storage/index.js.map +0 -1
- /package/{http-client → preset/isomorphic}/types.js +0 -0
- /package/{http-client → utils/axios}/middleware/log.d.ts +0 -0
- /package/{http-client → utils/axios}/middleware/log.js +0 -0
- /package/{http-server → utils/express}/handler/health-check.d.ts +0 -0
- /package/{http-server → utils/express}/handler/health-check.js +0 -0
- /package/utils/{browser → web}/analytics/data-layer.d.ts +0 -0
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.hideFirstId = exports.getRequestInfo = exports.tracingMiddleware = void 0;
|
|
3
|
+
exports.getRequestHeaders = exports.hideFirstId = exports.getRequestInfo = exports.tracingMiddleware = void 0;
|
|
4
4
|
const api_1 = require("@opentelemetry/api");
|
|
5
5
|
const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
|
|
6
|
-
const
|
|
6
|
+
const http_server_1 = require("../http-server");
|
|
7
|
+
const utils_1 = require("../../../../isomorphic/utils");
|
|
7
8
|
/**
|
|
8
9
|
* Возвращает новый middleware для трассировки исходящих запросов.
|
|
9
10
|
* @param tracer Трейсер.
|
|
@@ -77,4 +78,32 @@ function hideFirstId(url) {
|
|
|
77
78
|
return found ? [url.replace(found[0], '{id}'), Number(found[0])] : [url, undefined];
|
|
78
79
|
}
|
|
79
80
|
exports.hideFirstId = hideFirstId;
|
|
80
|
-
|
|
81
|
+
/**
|
|
82
|
+
* Формирует заголовки для исходящих запросов с сервера по соглашению.
|
|
83
|
+
* @param config Конфиг.
|
|
84
|
+
* @param request Входящий запрос.
|
|
85
|
+
* @return Заголовки для исходящих запросов.
|
|
86
|
+
*/
|
|
87
|
+
function getRequestHeaders(config, request) {
|
|
88
|
+
const result = {
|
|
89
|
+
'User-Agent': `simaland-${config.appName}/${config.appVersion}`,
|
|
90
|
+
};
|
|
91
|
+
const clientIp = (0, http_server_1.getClientIp)(request);
|
|
92
|
+
if (clientIp) {
|
|
93
|
+
result['X-Client-Ip'] = clientIp;
|
|
94
|
+
}
|
|
95
|
+
const cookie = request.get('cookie');
|
|
96
|
+
if (cookie) {
|
|
97
|
+
result.Cookie = cookie;
|
|
98
|
+
}
|
|
99
|
+
// добавляем специфичные заголовки
|
|
100
|
+
for (const key of Object.keys(request.headers)) {
|
|
101
|
+
const value = request.header(key);
|
|
102
|
+
if (key.toLowerCase().indexOf('simaland-') === 0 && value) {
|
|
103
|
+
result[key] = value;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return result;
|
|
107
|
+
}
|
|
108
|
+
exports.getRequestHeaders = getRequestHeaders;
|
|
109
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/preset/node/node/utils/http-client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getClientIp = void 0;
|
|
7
|
+
const node_net_1 = __importDefault(require("node:net"));
|
|
8
|
+
/**
|
|
9
|
+
* Определяет IP входящего запроса.
|
|
10
|
+
* @param request Входящий запрос.
|
|
11
|
+
* @return IP.
|
|
12
|
+
*/
|
|
13
|
+
function getClientIp(request) {
|
|
14
|
+
const headerValue = request.get('x-client-ip') ||
|
|
15
|
+
request.get('x-forwarded-for') ||
|
|
16
|
+
request.socket.remoteAddress ||
|
|
17
|
+
'';
|
|
18
|
+
return node_net_1.default.isIP(headerValue) ? headerValue : undefined;
|
|
19
|
+
}
|
|
20
|
+
exports.getClientIp = getClientIp;
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/preset/node/node/utils/http-server/index.ts"],"names":[],"mappings":";;;;;;AACA,wDAA2B;AAE3B;;;;GAIG;AACH,SAAgB,WAAW,CAAC,OAAgB;IAC1C,MAAM,WAAW,GACf,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC9B,OAAO,CAAC,MAAM,CAAC,aAAa;QAC5B,EAAE,CAAC;IAEL,OAAO,kBAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC;AARD,kCAQC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Preset } from '../../di';
|
|
2
|
+
import { PresetTuner } from '../isomorphic/types';
|
|
3
|
+
/**
|
|
4
|
+
* Возвращает preset с зависимостями для frontend-микросервисов в браузере.
|
|
5
|
+
* @param customize Получит функцию с помощью которой можно переопределить предустановленные провайдеры.
|
|
6
|
+
* @return Preset.
|
|
7
|
+
*/
|
|
8
|
+
export declare function PresetWeb(customize?: PresetTuner): Preset;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PresetWeb = void 0;
|
|
4
|
+
const di_1 = require("../../di");
|
|
5
|
+
const tokens_1 = require("../../tokens");
|
|
6
|
+
const providers_1 = require("../isomorphic/providers");
|
|
7
|
+
const providers_2 = require("./providers");
|
|
8
|
+
/**
|
|
9
|
+
* Возвращает preset с зависимостями для frontend-микросервисов в браузере.
|
|
10
|
+
* @param customize Получит функцию с помощью которой можно переопределить предустановленные провайдеры.
|
|
11
|
+
* @return Preset.
|
|
12
|
+
*/
|
|
13
|
+
function PresetWeb(customize) {
|
|
14
|
+
// ВАЖНО: используем .set() вместо аргумента defaults функции createPreset из-за скорости
|
|
15
|
+
const preset = (0, di_1.createPreset)();
|
|
16
|
+
preset.set(tokens_1.KnownToken.Config.source, providers_2.provideConfigSource);
|
|
17
|
+
preset.set(tokens_1.KnownToken.Config.base, providers_1.provideBaseConfig);
|
|
18
|
+
preset.set(tokens_1.KnownToken.logger, providers_2.provideLogger);
|
|
19
|
+
preset.set(tokens_1.KnownToken.sagaMiddleware, providers_1.provideSagaMiddleware);
|
|
20
|
+
preset.set(tokens_1.KnownToken.Http.Client.factory, providers_2.provideHttpClientFactory);
|
|
21
|
+
preset.set(tokens_1.KnownToken.Http.Client.Middleware.Log.handler, providers_1.provideHttpClientLogHandler);
|
|
22
|
+
preset.set(tokens_1.KnownToken.SsrBridge.clientSide, providers_2.provideBridgeClientSide);
|
|
23
|
+
preset.set(tokens_1.KnownToken.Http.Api.knownHosts, providers_2.provideKnownHttpApiHosts);
|
|
24
|
+
if (customize) {
|
|
25
|
+
customize({ override: preset.set.bind(preset) });
|
|
26
|
+
}
|
|
27
|
+
return preset;
|
|
28
|
+
}
|
|
29
|
+
exports.PresetWeb = PresetWeb;
|
|
30
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/preset/web/index.ts"],"names":[],"mappings":";;;AAAA,iCAAgD;AAChD,yCAA0C;AAE1C,uDAIiC;AACjC,2CAMqB;AAErB;;;;GAIG;AACH,SAAgB,SAAS,CAAC,SAAuB;IAC/C,yFAAyF;IACzF,MAAM,MAAM,GAAG,IAAA,iBAAY,GAAE,CAAC;IAE9B,MAAM,CAAC,GAAG,CAAC,mBAAU,CAAC,MAAM,CAAC,MAAM,EAAE,+BAAmB,CAAC,CAAC;IAC1D,MAAM,CAAC,GAAG,CAAC,mBAAU,CAAC,MAAM,CAAC,IAAI,EAAE,6BAAiB,CAAC,CAAC;IACtD,MAAM,CAAC,GAAG,CAAC,mBAAU,CAAC,MAAM,EAAE,yBAAa,CAAC,CAAC;IAC7C,MAAM,CAAC,GAAG,CAAC,mBAAU,CAAC,cAAc,EAAE,iCAAqB,CAAC,CAAC;IAC7D,MAAM,CAAC,GAAG,CAAC,mBAAU,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,oCAAwB,CAAC,CAAC;IACrE,MAAM,CAAC,GAAG,CAAC,mBAAU,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,uCAA2B,CAAC,CAAC;IACvF,MAAM,CAAC,GAAG,CAAC,mBAAU,CAAC,SAAS,CAAC,UAAU,EAAE,mCAAuB,CAAC,CAAC;IACrE,MAAM,CAAC,GAAG,CAAC,mBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,oCAAwB,CAAC,CAAC;IAErE,IAAI,SAAS,EAAE;QACb,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;KAClD;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAlBD,8BAkBC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { ConfigSource } from '../../../config';
|
|
2
|
+
import { Resolve } from '../../../di';
|
|
3
|
+
import { Logger } from '../../../log';
|
|
4
|
+
import { BridgeClientSide } from '../../../utils/ssr';
|
|
5
|
+
import { KnownHttpApiKey, StrictMap } from '../../isomorphic/types';
|
|
6
|
+
import { CreateAxiosDefaults } from 'axios';
|
|
7
|
+
/**
|
|
8
|
+
* Провайдер источника конфигурации.
|
|
9
|
+
* @return Источник конфигурации.
|
|
10
|
+
*/
|
|
11
|
+
export declare function provideConfigSource(): ConfigSource;
|
|
12
|
+
/**
|
|
13
|
+
* Провайдер Logger'а.
|
|
14
|
+
* @param resolve Функция для получения зависимости по токену.
|
|
15
|
+
* @return Logger.
|
|
16
|
+
*/
|
|
17
|
+
export declare function provideLogger(resolve: Resolve): Logger;
|
|
18
|
+
/**
|
|
19
|
+
* Провайдер клиентской части "моста" для передачи данных между сервером и клиентом.
|
|
20
|
+
* @param resolve Функция для получения зависимости по токену.
|
|
21
|
+
* @return Клиентская часть "моста".
|
|
22
|
+
*/
|
|
23
|
+
export declare function provideBridgeClientSide(resolve: Resolve): BridgeClientSide<unknown>;
|
|
24
|
+
/**
|
|
25
|
+
* Провайдер известных http-хостов.
|
|
26
|
+
* @param resolve Функция для получения зависимости по токену.
|
|
27
|
+
* @return Пул известных http-хостов.
|
|
28
|
+
*/
|
|
29
|
+
export declare function provideKnownHttpApiHosts(resolve: Resolve): StrictMap<KnownHttpApiKey>;
|
|
30
|
+
/**
|
|
31
|
+
* Провайдер фабрики http-клиентов.
|
|
32
|
+
* @param resolve Функция для получения зависимости по токену.
|
|
33
|
+
* @return Фабрика.
|
|
34
|
+
*/
|
|
35
|
+
export declare function provideHttpClientFactory(resolve: Resolve): (config?: CreateAxiosDefaults) => import("middleware-axios").AxiosInstanceWrapper;
|
|
@@ -1,40 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.provideHttpClientFactory = exports.provideKnownHttpApiHosts = exports.provideBridgeClientSide = exports.provideLogger = exports.provideConfigSource =
|
|
4
|
-
/* eslint-disable require-jsdoc, jsdoc/require-jsdoc */
|
|
5
|
-
const di_1 = require("../../di");
|
|
6
|
-
const tokens_1 = require("../../tokens");
|
|
7
|
-
const config_1 = require("../../config");
|
|
8
|
-
const log_1 = require("../../log");
|
|
9
|
-
const sentry_1 = require("../../log/handler/sentry");
|
|
3
|
+
exports.provideHttpClientFactory = exports.provideKnownHttpApiHosts = exports.provideBridgeClientSide = exports.provideLogger = exports.provideConfigSource = void 0;
|
|
10
4
|
const browser_1 = require("@sentry/browser");
|
|
5
|
+
const config_1 = require("../../../config");
|
|
6
|
+
const log_1 = require("../../../log");
|
|
7
|
+
const tokens_1 = require("../../../tokens");
|
|
8
|
+
const sentry_1 = require("../../../log/handler/sentry");
|
|
9
|
+
const ssr_1 = require("../../../utils/ssr");
|
|
10
|
+
const utils_1 = require("../../isomorphic/utils");
|
|
11
11
|
const middleware_axios_1 = require("middleware-axios");
|
|
12
|
-
const
|
|
13
|
-
const utils_1 = require("../parts/utils");
|
|
14
|
-
const log_2 = require("../../http-client/middleware/log");
|
|
15
|
-
const providers_1 = require("../parts/providers");
|
|
12
|
+
const axios_1 = require("../../../utils/axios");
|
|
16
13
|
/**
|
|
17
|
-
*
|
|
18
|
-
* @
|
|
19
|
-
* @return Preset.
|
|
14
|
+
* Провайдер источника конфигурации.
|
|
15
|
+
* @return Источник конфигурации.
|
|
20
16
|
*/
|
|
21
|
-
function PresetBrowser(customize) {
|
|
22
|
-
// ВАЖНО: используем .set() вместо аргумента defaults функции createPreset из-за скорости
|
|
23
|
-
const preset = (0, di_1.createPreset)();
|
|
24
|
-
preset.set(tokens_1.KnownToken.Config.source, provideConfigSource);
|
|
25
|
-
preset.set(tokens_1.KnownToken.Config.base, providers_1.provideBaseConfig);
|
|
26
|
-
preset.set(tokens_1.KnownToken.logger, provideLogger);
|
|
27
|
-
preset.set(tokens_1.KnownToken.sagaMiddleware, providers_1.provideSagaMiddleware);
|
|
28
|
-
preset.set(tokens_1.KnownToken.Http.Client.factory, provideHttpClientFactory);
|
|
29
|
-
preset.set(tokens_1.KnownToken.Http.Client.Middleware.Log.handler, providers_1.provideHttpClientLogHandler);
|
|
30
|
-
preset.set(tokens_1.KnownToken.SsrBridge.clientSide, provideBridgeClientSide);
|
|
31
|
-
preset.set(tokens_1.KnownToken.Http.Api.knownHosts, provideKnownHttpApiHosts);
|
|
32
|
-
if (customize) {
|
|
33
|
-
customize({ override: preset.set.bind(preset) });
|
|
34
|
-
}
|
|
35
|
-
return preset;
|
|
36
|
-
}
|
|
37
|
-
exports.PresetBrowser = PresetBrowser;
|
|
38
17
|
function provideConfigSource() {
|
|
39
18
|
// ВАЖНО: по умолчанию рассчитываем на process.env который предоставляется сборщиком (например webpack)
|
|
40
19
|
if (typeof process !== 'undefined' && process.env) {
|
|
@@ -43,6 +22,11 @@ function provideConfigSource() {
|
|
|
43
22
|
return (0, config_1.createConfigSource)({});
|
|
44
23
|
}
|
|
45
24
|
exports.provideConfigSource = provideConfigSource;
|
|
25
|
+
/**
|
|
26
|
+
* Провайдер Logger'а.
|
|
27
|
+
* @param resolve Функция для получения зависимости по токену.
|
|
28
|
+
* @return Logger.
|
|
29
|
+
*/
|
|
46
30
|
function provideLogger(resolve) {
|
|
47
31
|
const source = resolve(tokens_1.KnownToken.Config.source);
|
|
48
32
|
const client = new browser_1.BrowserClient({
|
|
@@ -60,11 +44,21 @@ function provideLogger(resolve) {
|
|
|
60
44
|
return logger;
|
|
61
45
|
}
|
|
62
46
|
exports.provideLogger = provideLogger;
|
|
47
|
+
/**
|
|
48
|
+
* Провайдер клиентской части "моста" для передачи данных между сервером и клиентом.
|
|
49
|
+
* @param resolve Функция для получения зависимости по токену.
|
|
50
|
+
* @return Клиентская часть "моста".
|
|
51
|
+
*/
|
|
63
52
|
function provideBridgeClientSide(resolve) {
|
|
64
53
|
const config = resolve(tokens_1.KnownToken.Config.base);
|
|
65
54
|
return ssr_1.SsrBridge.resolve(config.appName);
|
|
66
55
|
}
|
|
67
56
|
exports.provideBridgeClientSide = provideBridgeClientSide;
|
|
57
|
+
/**
|
|
58
|
+
* Провайдер известных http-хостов.
|
|
59
|
+
* @param resolve Функция для получения зависимости по токену.
|
|
60
|
+
* @return Пул известных http-хостов.
|
|
61
|
+
*/
|
|
68
62
|
function provideKnownHttpApiHosts(resolve) {
|
|
69
63
|
const source = resolve(tokens_1.KnownToken.Config.source);
|
|
70
64
|
return new utils_1.HttpApiHostPool({
|
|
@@ -75,12 +69,18 @@ function provideKnownHttpApiHosts(resolve) {
|
|
|
75
69
|
}, source);
|
|
76
70
|
}
|
|
77
71
|
exports.provideKnownHttpApiHosts = provideKnownHttpApiHosts;
|
|
72
|
+
/**
|
|
73
|
+
* Провайдер фабрики http-клиентов.
|
|
74
|
+
* @param resolve Функция для получения зависимости по токену.
|
|
75
|
+
* @return Фабрика.
|
|
76
|
+
*/
|
|
78
77
|
function provideHttpClientFactory(resolve) {
|
|
79
78
|
const logHandler = resolve(tokens_1.KnownToken.Http.Client.Middleware.Log.handler);
|
|
80
79
|
return function createHttpClient(config = {}) {
|
|
80
|
+
// @todo убрать as any
|
|
81
81
|
const client = (0, middleware_axios_1.create)(config);
|
|
82
82
|
client.use(utils_1.HttpStatus.axiosMiddleware());
|
|
83
|
-
client.use((0,
|
|
83
|
+
client.use((0, axios_1.logMiddleware)(logHandler));
|
|
84
84
|
return client;
|
|
85
85
|
};
|
|
86
86
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/preset/web/providers/index.ts"],"names":[],"mappings":";;;AAAA,6CAMyB;AACzB,4CAAmE;AAEnE,sCAAoD;AACpD,4CAA6C;AAC7C,wDAAkE;AAClE,4CAAiE;AAEjE,kDAAqE;AAErE,uDAA0C;AAC1C,gDAAqD;AAErD;;;GAGG;AACH,SAAgB,mBAAmB;IACjC,uGAAuG;IACvG,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE;QACjD,OAAO,IAAA,2BAAkB,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC;KACxC;IAED,OAAO,IAAA,2BAAkB,EAAC,EAAE,CAAC,CAAC;AAChC,CAAC;AAPD,kDAOC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,OAAgB;IAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEjD,MAAM,MAAM,GAAG,IAAI,uBAAa,CAAC;QAC/B,SAAS,EAAE,4BAAkB;QAC7B,WAAW,EAAE,4BAAkB;QAC/B,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACxC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACzC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,2BAA2B,CAAC;QACxD,YAAY,EAAE,CAAC,GAAG,6BAAmB,CAAC;KACvC,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC;IAE5B,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAExC,MAAM,MAAM,GAAG,IAAA,kBAAY,GAAE,CAAC;IAE9B,MAAM,CAAC,SAAS,CAAC,IAAA,4BAAmB,EAAC,GAAG,CAAC,CAAC,CAAC;IAE3C,OAAO,MAAM,CAAC;AAChB,CAAC;AArBD,sCAqBC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB,CAAC,OAAgB;IACtD,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE/C,OAAO,eAAS,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC;AAJD,0DAIC;AAED;;;;GAIG;AACH,SAAgB,wBAAwB,CAAC,OAAgB;IACvD,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEjD,OAAO,IAAI,uBAAe,CACxB;QACE,KAAK,EAAE,sBAAsB;QAC7B,MAAM,EAAE,4BAA4B;QACpC,MAAM,EAAE,4BAA4B;QACpC,MAAM,EAAE,4BAA4B;KACrC,EACD,MAAM,CACP,CAAC;AACJ,CAAC;AAZD,4DAYC;AAED;;;;GAIG;AACH,SAAgB,wBAAwB,CAAC,OAAgB;IACvD,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAU,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAE1E,OAAO,SAAS,gBAAgB,CAAC,SAA8B,EAAE;QAC/D,sBAAsB;QACtB,MAAM,MAAM,GAAG,IAAA,yBAAM,EAAC,MAAa,CAAC,CAAC;QAErC,MAAM,CAAC,GAAG,CAAC,kBAAU,CAAC,eAAe,EAAE,CAAC,CAAC;QACzC,MAAM,CAAC,GAAG,CAAC,IAAA,qBAAa,EAAC,UAAU,CAAC,CAAC,CAAC;QAEtC,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAZD,4DAYC"}
|
package/tokens.d.ts
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
/// <reference types="qs" />
|
|
2
2
|
import type * as express from 'express';
|
|
3
|
-
import type { PageAssets, HandlerContext } from './http-server/types';
|
|
4
|
-
import type { SagaExtendedMiddleware } from './utils/redux-saga';
|
|
5
|
-
import type { Logger } from './log/types';
|
|
6
|
-
import type { HttpClientFactory } from './http-client/types';
|
|
7
3
|
import type { BaseConfig } from './config/types';
|
|
8
|
-
import type {
|
|
4
|
+
import type { Logger } from './log/types';
|
|
9
5
|
import type { Cache } from './cache/types';
|
|
6
|
+
import type { LogMiddlewareHandlerInit } from './utils/axios/middleware/log';
|
|
7
|
+
import type { SagaExtendedMiddleware } from './utils/redux-saga';
|
|
8
|
+
import type { BridgeClientSide, BridgeServerSide } from './utils/ssr';
|
|
9
|
+
import type { Tracer } from '@opentelemetry/api';
|
|
10
10
|
import type { BasicTracerProvider, SpanExporter } from '@opentelemetry/sdk-trace-base';
|
|
11
11
|
import type { Resource } from '@opentelemetry/resources';
|
|
12
|
-
import type { StrictMap, KnownHttpApiKey } from './preset/parts/types';
|
|
13
|
-
import type { BridgeClientSide, BridgeServerSide } from './utils/ssr';
|
|
14
|
-
import type { PageResponse } from './http-server/utils';
|
|
15
|
-
import type { LogMiddlewareHandlerInit } from './http-client/middleware/log';
|
|
16
12
|
import type { ElementType, ReactNode } from 'react';
|
|
13
|
+
import type { HandlerContext, KnownHttpApiKey, PageAssets, StrictMap } from './preset/isomorphic/types';
|
|
14
|
+
import type { SpecificExtras } from './preset/node/handler/utils';
|
|
15
|
+
import type { CreateAxiosDefaults } from 'axios';
|
|
16
|
+
import type { AxiosInstanceWrapper } from 'middleware-axios';
|
|
17
17
|
export declare const KnownToken: {
|
|
18
18
|
readonly Config: {
|
|
19
19
|
readonly source: import("./di").Token<import("@humanwhocodes/env").Env>;
|
|
@@ -36,7 +36,7 @@ export declare const KnownToken: {
|
|
|
36
36
|
readonly knownHosts: import("./di").Token<StrictMap<KnownHttpApiKey>>;
|
|
37
37
|
};
|
|
38
38
|
readonly Client: {
|
|
39
|
-
readonly factory: import("./di").Token<
|
|
39
|
+
readonly factory: import("./di").Token<(defaults?: CreateAxiosDefaults) => AxiosInstanceWrapper>;
|
|
40
40
|
readonly Middleware: {
|
|
41
41
|
readonly Log: {
|
|
42
42
|
readonly handler: import("./di").Token<LogMiddlewareHandlerInit>;
|
|
@@ -63,7 +63,7 @@ export declare const KnownToken: {
|
|
|
63
63
|
readonly specificParams: import("./di").Token<Record<string, unknown>>;
|
|
64
64
|
};
|
|
65
65
|
readonly Response: {
|
|
66
|
-
readonly
|
|
66
|
+
readonly specificExtras: import("./di").Token<SpecificExtras>;
|
|
67
67
|
};
|
|
68
68
|
readonly Page: {
|
|
69
69
|
readonly assets: import("./di").Token<PageAssets | (() => PageAssets | Promise<PageAssets>)>;
|
package/tokens.js
CHANGED
|
@@ -63,8 +63,7 @@ exports.KnownToken = {
|
|
|
63
63
|
specificParams: (0, di_1.createToken)('request/specific-params'),
|
|
64
64
|
},
|
|
65
65
|
Response: {
|
|
66
|
-
|
|
67
|
-
builder: (0, di_1.createToken)('response/builder'),
|
|
66
|
+
specificExtras: (0, di_1.createToken)('response/specific-extras'),
|
|
68
67
|
},
|
|
69
68
|
Page: {
|
|
70
69
|
assets: (0, di_1.createToken)('page/assets'),
|
package/tokens.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":";;;AAAA,6BAAmC;
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":";;;AAAA,6BAAmC;AAwBtB,QAAA,UAAU,GAAG;IACxB,SAAS;IACT,MAAM,EAAE;QACN,MAAM,EAAE,IAAA,gBAAW,EAAe,eAAe,CAAC;QAClD,IAAI,EAAE,IAAA,gBAAW,EAAa,aAAa,CAAC;KAC7C;IAED,QAAQ;IACR,KAAK,EAAE,IAAA,gBAAW,EAAQ,OAAO,CAAC;IAElC,MAAM;IACN,MAAM,EAAE,IAAA,gBAAW,EAAS,QAAQ,CAAC;IAErC,cAAc;IACd,+CAA+C;IAC/C,cAAc,EAAE,IAAA,gBAAW,EAAyB,iBAAiB,CAAC;IAEtE,UAAU;IACV,OAAO,EAAE;QACP,MAAM,EAAE,IAAA,gBAAW,EAAS,gBAAgB,CAAC;QAC7C,YAAY,EAAE,IAAA,gBAAW,EAAe,uBAAuB,CAAC;QAChE,cAAc,EAAE,IAAA,gBAAW,EAAsB,yBAAyB,CAAC;QAE3E,mDAAmD;QACnD,sBAAsB,EAAE,IAAA,gBAAW,EAAW,kBAAkB,CAAC;KAClE;IAED,UAAU;IACV,OAAO,EAAE;QACP,OAAO,EAAE,IAAA,gBAAW,EAAsB,kBAAkB,CAAC;KAC9D;IAED,OAAO;IACP,IAAI,EAAE;QACJ,GAAG,EAAE;YACH,UAAU,EAAE,IAAA,gBAAW,EAA6B,sBAAsB,CAAC;SAC5E;QAED,+BAA+B;QAC/B,MAAM,EAAE;YACN,OAAO,EACL,IAAA,gBAAW,EAA2D,gBAAgB,CAAC;YACzF,UAAU,EAAE;gBACV,GAAG,EAAE;oBACH,OAAO,EAAE,IAAA,gBAAW,EAA2B,aAAa,CAAC;iBAC9D;aACF;SACF;QAED,iCAAiC;QACjC,MAAM,EAAE;YACN,OAAO,EAAE,IAAA,gBAAW,EAA4B,gBAAgB,CAAC;YACjE,QAAQ,EAAE;gBACR,WAAW,EAAE,IAAA,gBAAW,EAAkB,sBAAsB,CAAC;aAClE;YACD,UAAU,EAAE;gBACV,OAAO,EAAE,IAAA,gBAAW,EAAkB,oBAAoB,CAAC;gBAC3D,GAAG,EAAE,IAAA,gBAAW,EAAkB,gBAAgB,CAAC;gBACnD,OAAO,EAAE,IAAA,gBAAW,EAAkB,oBAAoB,CAAC;gBAC3D,OAAO,EAAE,IAAA,gBAAW,EAAkB,oBAAoB,CAAC;gBAC3D,KAAK,EAAE,IAAA,gBAAW,EAA8B,kBAAkB,CAAC;aACpE;SACF;QAED,wCAAwC;QACxC,OAAO,EAAE;YACP,IAAI,EAAE,IAAA,gBAAW,EAAa,cAAc,CAAC;YAC7C,OAAO,EAAE,IAAA,gBAAW,EAAiB,iBAAiB,CAAC;YACvD,OAAO,EAAE;gBACP,cAAc,EAAE,IAAA,gBAAW,EAA0B,yBAAyB,CAAC;aAChF;YACD,QAAQ,EAAE;gBACR,cAAc,EAAE,IAAA,gBAAW,EAAiB,0BAA0B,CAAC;aACxE;YACD,IAAI,EAAE;gBACJ,MAAM,EAAE,IAAA,gBAAW,EAAwD,aAAa,CAAC;gBACzF,MAAM,EAAE,IAAA,gBAAW,EAAuC,aAAa,CAAC;gBACxE,MAAM,EAAE,IAAA,gBAAW,EAA2C,aAAa,CAAC;aAC7E;SACF;KACF;IAED,MAAM;IACN,SAAS,EAAE;QACT,UAAU,EAAE,IAAA,gBAAW,EAA4B,wBAAwB,CAAC;QAC5E,UAAU,EAAE,IAAA,gBAAW,EAAmB,wBAAwB,CAAC;KACpE;CACO,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { type Sauce, type SauceResponse, sauce, formatResultInfo } from './sauce';
|
|
2
|
+
export { applyAxiosDefaults } from './utils';
|
|
3
|
+
export { type SharedData, type DoneSharedData, type FailSharedData, type LogMiddlewareHandler, type LogMiddlewareHandlerFactory, type LogMiddlewareHandlerInit, logMiddleware, } from './middleware/log';
|
|
4
|
+
export { cookieMiddleware } from './middleware/cookie';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cookieMiddleware = exports.logMiddleware = exports.applyAxiosDefaults = exports.formatResultInfo = exports.sauce = void 0;
|
|
4
|
+
var sauce_1 = require("./sauce");
|
|
5
|
+
Object.defineProperty(exports, "sauce", { enumerable: true, get: function () { return sauce_1.sauce; } });
|
|
6
|
+
Object.defineProperty(exports, "formatResultInfo", { enumerable: true, get: function () { return sauce_1.formatResultInfo; } });
|
|
7
|
+
var utils_1 = require("./utils");
|
|
8
|
+
Object.defineProperty(exports, "applyAxiosDefaults", { enumerable: true, get: function () { return utils_1.applyAxiosDefaults; } });
|
|
9
|
+
var log_1 = require("./middleware/log");
|
|
10
|
+
Object.defineProperty(exports, "logMiddleware", { enumerable: true, get: function () { return log_1.logMiddleware; } });
|
|
11
|
+
var cookie_1 = require("./middleware/cookie");
|
|
12
|
+
Object.defineProperty(exports, "cookieMiddleware", { enumerable: true, get: function () { return cookie_1.cookieMiddleware; } });
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/axios/index.ts"],"names":[],"mappings":";;;AAAA,iCAAkF;AAAzC,8FAAA,KAAK,OAAA;AAAE,yGAAA,gBAAgB,OAAA;AAChE,iCAA6C;AAApC,2GAAA,kBAAkB,OAAA;AAC3B,wCAQ0B;AADxB,oGAAA,aAAa,OAAA;AAEf,8CAAuD;AAA9C,0GAAA,gBAAgB,OAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Middleware } from 'middleware-axios';
|
|
2
|
+
import type { CookieStore } from '../../../http';
|
|
3
|
+
/**
|
|
4
|
+
* Возвращает новый middleware для работы с cookie на сервере.
|
|
5
|
+
* @param store Хранилище.
|
|
6
|
+
* @return Middleware.
|
|
7
|
+
*/
|
|
8
|
+
export declare function cookieMiddleware(store: CookieStore): Middleware<any>;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cookieMiddleware = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Возвращает новый middleware для работы с cookie на сервере.
|
|
6
|
+
* @param store Хранилище.
|
|
7
|
+
* @return Middleware.
|
|
8
|
+
*/
|
|
9
|
+
function cookieMiddleware(store) {
|
|
10
|
+
return async (config, next) => {
|
|
11
|
+
const result = await next({
|
|
12
|
+
...config,
|
|
13
|
+
headers: {
|
|
14
|
+
...config.headers,
|
|
15
|
+
// @todo учитывать Domain, Path, Expires и тд
|
|
16
|
+
// @todo учитывать редиректы с куками
|
|
17
|
+
Cookie: store.getCookies(),
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
if (result.headers['set-cookie']) {
|
|
21
|
+
result.headers['set-cookie'].forEach(item => store.setCookie(item));
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
exports.cookieMiddleware = cookieMiddleware;
|
|
26
|
+
//# sourceMappingURL=cookie.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../../../src/utils/axios/middleware/cookie.ts"],"names":[],"mappings":";;;AAGA;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,KAAkB;IACjD,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC;YACxB,GAAG,MAAM;YACT,OAAO,EAAE;gBACP,GAAG,MAAM,CAAC,OAAO;gBAEjB,6CAA6C;gBAC7C,qCAAqC;gBACrC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE;aAC3B;SACF,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAChC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;SACrE;IACH,CAAC,CAAC;AACJ,CAAC;AAjBD,4CAiBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../../../src/utils/axios/middleware/log.ts"],"names":[],"mappings":";;;AA4BA;;;;GAIG;AACH,SAAgB,aAAa,CAAC,WAAqC;IACjE,OAAO,KAAK,UAAU,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;QAC9C,MAAM,MAAM,GAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,OAAO,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAEtF,IAAI;YACF,MAAM,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAEpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;YAEpC,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;SACtD;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAE5C,8DAA8D;YAC9D,MAAM,KAAK,CAAC;SACb;IACH,CAAC,CAAC;AACJ,CAAC;AAlBD,sCAkBC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AxiosInstance, AxiosResponse } from 'axios';
|
|
2
|
-
import { SafetyInfo } from '../../
|
|
2
|
+
import { SafetyInfo } from '../../function';
|
|
3
3
|
import type { AxiosInstanceWrapper, MethodName } from 'middleware-axios';
|
|
4
4
|
export type SauceResponse<T = any> = {
|
|
5
5
|
ok: true;
|
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.formatResultInfo = exports.sauce = void 0;
|
|
7
7
|
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const function_1 = require("../../
|
|
8
|
+
const function_1 = require("../../function");
|
|
9
9
|
/**
|
|
10
10
|
* Оборачивает экземпляр axios. Все методы обертки возвращают promise, которые никогда не попадают в состояние rejected.
|
|
11
11
|
* @param instance Экземпляр axios или AxiosInstanceWrapper.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/axios/sauce/index.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA4D;AAC5D,6CAAyD;AAoCzD;;;;GAIG;AACH,SAAgB,KAAK,CAAC,QAA8C;IAClE,OAAO;QACL,OAAO,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;QACxD,GAAG,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;QAChD,MAAM,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;QACtD,IAAI,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;QAClD,OAAO,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;QACxD,IAAI,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;QAClD,GAAG,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;QAChD,KAAK,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;KACrD,CAAC;AACJ,CAAC;AAXD,sBAWC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAI,IAAkC;IACpE,IAAI,IAAI,CAAC,EAAE,EAAE;QACX,OAAO;YACL,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;SAC3B,CAAC;KACH;SAAM;QACL,OAAO;YACL,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,eAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS;YAC5E,MAAM,EAAE,eAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS;YAChF,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;KACH;AACH,CAAC;AAfD,4CAeC"}
|
|
@@ -1,11 +1,4 @@
|
|
|
1
1
|
import type { AxiosDefaults, AxiosRequestConfig } from 'axios';
|
|
2
|
-
/**
|
|
3
|
-
* Объединяет значения опций baseURL и url (axios) в одну строку для логирования.
|
|
4
|
-
* @param baseURL Опция baseURL.
|
|
5
|
-
* @param url Опция url.
|
|
6
|
-
* @return Отображение. Не является валидным URL.
|
|
7
|
-
*/
|
|
8
|
-
export declare function displayUrl(baseURL?: AxiosRequestConfig['baseURL'], url?: AxiosRequestConfig['url']): string;
|
|
9
2
|
/**
|
|
10
3
|
* Сливает в один объект конфиг и настройки по умолчанию.
|
|
11
4
|
* @param config Конфигурация запроса.
|
|
@@ -1,32 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.applyAxiosDefaults =
|
|
4
|
-
/**
|
|
5
|
-
* Объединяет значения опций baseURL и url (axios) в одну строку для логирования.
|
|
6
|
-
* @param baseURL Опция baseURL.
|
|
7
|
-
* @param url Опция url.
|
|
8
|
-
* @return Отображение. Не является валидным URL.
|
|
9
|
-
*/
|
|
10
|
-
function displayUrl(baseURL = '', url = '') {
|
|
11
|
-
let result;
|
|
12
|
-
switch (true) {
|
|
13
|
-
case Boolean(baseURL && url):
|
|
14
|
-
result = `${baseURL.replace(/\/$/, '')}/${url.replace(/^\//, '')}`;
|
|
15
|
-
break;
|
|
16
|
-
case Boolean(baseURL) && !url:
|
|
17
|
-
result = baseURL;
|
|
18
|
-
break;
|
|
19
|
-
case !baseURL && Boolean(url):
|
|
20
|
-
result = url;
|
|
21
|
-
break;
|
|
22
|
-
case !baseURL && !url:
|
|
23
|
-
default:
|
|
24
|
-
result = '[empty]';
|
|
25
|
-
break;
|
|
26
|
-
}
|
|
27
|
-
return result;
|
|
28
|
-
}
|
|
29
|
-
exports.displayUrl = displayUrl;
|
|
3
|
+
exports.applyAxiosDefaults = void 0;
|
|
30
4
|
/**
|
|
31
5
|
* Сливает в один объект конфиг и настройки по умолчанию.
|
|
32
6
|
* @param config Конфигурация запроса.
|
|
@@ -48,4 +22,4 @@ function applyAxiosDefaults(config, defaults) {
|
|
|
48
22
|
};
|
|
49
23
|
}
|
|
50
24
|
exports.applyAxiosDefaults = applyAxiosDefaults;
|
|
51
|
-
//# sourceMappingURL=
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/axios/utils/index.ts"],"names":[],"mappings":";;;AAEA;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAChC,MAA0B,EAC1B,QAAuB;IAEvB,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,YAAY,EAAE,GAAG,QAAQ,CAAC;IAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC;IAEzD,OAAO;QACL,MAAM;QACN,GAAG,YAAY;QACf,GAAG,MAAM;QACT,OAAO,EAAE;YACP,GAAG,eAAe,CAAC,MAAM,CAAC,WAAW,EAAmC,CAAC;YACzE,GAAG,MAAM,CAAC,OAAO;SAClB;KACF,CAAC;AACJ,CAAC;AAhBD,gDAgBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health-check.js","sourceRoot":"","sources":["../../../../src/utils/express/handler/health-check.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,SAAgB,WAAW;IACzB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAClB,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC;AACJ,CAAC;AAND,kCAMC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.composeMiddleware = exports.healthCheck = void 0;
|
|
4
|
+
var health_check_1 = require("./handler/health-check");
|
|
5
|
+
Object.defineProperty(exports, "healthCheck", { enumerable: true, get: function () { return health_check_1.healthCheck; } });
|
|
6
|
+
var utils_1 = require("./utils");
|
|
7
|
+
Object.defineProperty(exports, "composeMiddleware", { enumerable: true, get: function () { return utils_1.composeMiddleware; } });
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/express/index.ts"],"names":[],"mappings":";;;AAAA,uDAAqD;AAA5C,2GAAA,WAAW,OAAA;AACpB,iCAA4C;AAAnC,0GAAA,iBAAiB,OAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.composeMiddleware = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Объединяет промежуточные слои в один.
|
|
6
|
+
* @param list Промежуточные слои.
|
|
7
|
+
* @return Промежуточный слой.
|
|
8
|
+
*/
|
|
9
|
+
function composeMiddleware(list) {
|
|
10
|
+
return list.reduce((a, b) => (req, res, next) => {
|
|
11
|
+
a(req, res, err => {
|
|
12
|
+
if (err) {
|
|
13
|
+
return next(err);
|
|
14
|
+
}
|
|
15
|
+
b(req, res, next);
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
exports.composeMiddleware = composeMiddleware;
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/express/utils/index.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,IAAe;IAC/C,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC9C,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;YAChB,IAAI,GAAG,EAAE;gBACP,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;aAClB;YAED,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAVD,8CAUC"}
|
|
@@ -25,7 +25,7 @@ export declare class ErrorBoundary extends Component<Props, {
|
|
|
25
25
|
hasError: boolean;
|
|
26
26
|
};
|
|
27
27
|
/** @inheritDoc */
|
|
28
|
-
componentDidCatch(error: Error, errorInfo:
|
|
28
|
+
componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
|
|
29
29
|
/**
|
|
30
30
|
* Рендер.
|
|
31
31
|
* @return Дочерний элемент либо запасное значение.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/react/error-handlers/index.tsx"],"names":[],"mappings":";;;;AAAA,iCAAkE;AAgBlE;;GAEG;AACH,MAAa,aAAc,SAAQ,iBAAuC;IACxE;;OAEG;IACH,YAAY,KAAY;QACtB,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,IAAI,CAAC,KAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,kBAAkB;IAClB,MAAM,CAAC,wBAAwB;QAC7B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED,kBAAkB;IAClB,iBAAiB,CAAC,KAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/react/error-handlers/index.tsx"],"names":[],"mappings":";;;;AAAA,iCAAkE;AAgBlE;;GAEG;AACH,MAAa,aAAc,SAAQ,iBAAuC;IACxE;;OAEG;IACH,YAAY,KAAY;QACtB,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,IAAI,CAAC,KAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,kBAAkB;IAClB,MAAM,CAAC,wBAAwB;QAC7B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED,kBAAkB;IAClB,iBAAiB,CAAC,KAAY,EAAE,SAAoB;QAClD,8GAA8G;QAC9G,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAE/B,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAE1C,OAAO,2DAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAI,CAAC;IAC1D,CAAC;CACF;AAhCD,sCAgCC;AAED;;;;;GAKG;AACH,SAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAS;IACjE,OAAO,CACL,uBAAC,gBAAQ,IAAC,QAAQ,EAAE,QAAQ,YAC1B,uBAAC,aAAa,IAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,YAChD,QAAQ,GACK,GACP,CACZ,CAAC;AACJ,CAAC;AARD,oCAQC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.dataLayerPush = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Отправка аналитики в dataLayer.
|
|
6
|
+
* @param eventData Данные события для отправки.
|
|
7
|
+
*/
|
|
8
|
+
function dataLayerPush(eventData) {
|
|
9
|
+
const target = window;
|
|
10
|
+
if (typeof target.dataLayer?.push === 'function') {
|
|
11
|
+
// копируем объект так как window.dataLayer.push может менять аргумент в процессе работы
|
|
12
|
+
target.dataLayer.push({ ...eventData });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.dataLayerPush = dataLayerPush;
|
|
16
|
+
//# sourceMappingURL=data-layer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-layer.js","sourceRoot":"","sources":["../../../../src/utils/web/analytics/data-layer.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,aAAa,CAAC,SAA8B;IAC1D,MAAM,MAAM,GAAQ,MAAM,CAAC;IAE3B,IAAI,OAAO,MAAM,CAAC,SAAS,EAAE,IAAI,KAAK,UAAU,EAAE;QAChD,wFAAwF;QACxF,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;KACzC;AACH,CAAC;AAPD,sCAOC"}
|