@sima-land/isomorph 11.0.0-alpha.50 → 11.0.0-alpha.52
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/dist/cjs/di/application.js +1 -1
- package/dist/cjs/di/application.js.map +1 -1
- package/dist/cjs/di/container.js +1 -1
- package/dist/cjs/di/container.js.map +1 -1
- package/dist/cjs/di/preset.js +1 -1
- package/dist/cjs/di/preset.js.map +1 -1
- package/dist/cjs/http/utils.js +16 -4
- package/dist/cjs/http/utils.js.map +1 -1
- package/dist/cjs/log/handler/sentry.js +18 -22
- package/dist/cjs/log/handler/sentry.js.map +1 -1
- package/dist/cjs/log/index.js +14 -0
- package/dist/cjs/log/index.js.map +1 -1
- package/dist/cjs/log/logger.js +1 -1
- package/dist/cjs/log/logger.js.map +1 -1
- package/dist/cjs/package.json +16 -16
- package/dist/cjs/preset/bun/providers/config-source.js +1 -1
- package/dist/cjs/preset/bun/providers/config-source.js.map +1 -1
- package/dist/cjs/preset/bun/providers/log-handler-sentry.js +5 -3
- package/dist/cjs/preset/bun/providers/log-handler-sentry.js.map +1 -1
- package/dist/cjs/preset/bun/providers/logger.js +1 -1
- package/dist/cjs/preset/bun/providers/logger.js.map +1 -1
- package/dist/cjs/preset/bun/providers/serve-metrics.js +1 -1
- package/dist/cjs/preset/bun/providers/serve-metrics.js.map +1 -1
- package/dist/cjs/preset/bun/providers/serve-middleware.js +2 -2
- package/dist/cjs/preset/bun/providers/serve-middleware.js.map +1 -1
- package/dist/cjs/preset/bun/providers/service-routes.js +1 -1
- package/dist/cjs/preset/bun/providers/service-routes.js.map +1 -1
- package/dist/cjs/preset/bun-handler/index.js +0 -2
- package/dist/cjs/preset/bun-handler/index.js.map +1 -1
- package/dist/cjs/preset/bun-handler/providers/fetch-middleware.js +1 -1
- package/dist/cjs/preset/bun-handler/providers/fetch-middleware.js.map +1 -1
- package/dist/cjs/preset/bun-handler/providers/handler-main.js +1 -1
- package/dist/cjs/preset/bun-handler/providers/handler-main.js.map +1 -1
- package/dist/cjs/preset/bun-handler/providers/specific-params.js +1 -1
- package/dist/cjs/preset/bun-handler/providers/specific-params.js.map +1 -1
- package/dist/cjs/preset/node/providers/express-error-middleware.js +1 -1
- package/dist/cjs/preset/node/providers/express-error-middleware.js.map +1 -1
- package/dist/cjs/preset/node/providers/express-request-middleware.js +6 -1
- package/dist/cjs/preset/node/providers/express-request-middleware.js.map +1 -1
- package/dist/cjs/preset/node/providers/log-handler-sentry.js +11 -7
- package/dist/cjs/preset/node/providers/log-handler-sentry.js.map +1 -1
- package/dist/cjs/preset/node/providers/main-express-app.js +1 -3
- package/dist/cjs/preset/node/providers/main-express-app.js.map +1 -1
- package/dist/cjs/preset/server/providers/fetch-middleware.js +1 -1
- package/dist/cjs/preset/server/providers/fetch-middleware.js.map +1 -1
- package/dist/cjs/preset/server/providers/serve.js +1 -1
- package/dist/cjs/preset/server/providers/serve.js.map +1 -1
- package/dist/cjs/preset/web/providers/logger.js +9 -6
- package/dist/cjs/preset/web/providers/logger.js.map +1 -1
- package/dist/cjs/utils/redux/remote-data.js +1 -1
- package/dist/cjs/utils/redux/remote-data.js.map +1 -1
- package/dist/cjs/utils/redux-saga/middleware.js +1 -1
- package/dist/cjs/utils/redux-saga/middleware.js.map +1 -1
- package/dist/cjs/utils/web/storage/index.js +1 -1
- package/dist/cjs/utils/web/storage/index.js.map +1 -1
- package/dist/cjs/utils/webpack/index.js +6 -0
- package/dist/cjs/utils/webpack/index.js.map +1 -1
- package/dist/esm/di/application.js +1 -1
- package/dist/esm/di/application.js.map +1 -1
- package/dist/esm/di/container.js +1 -1
- package/dist/esm/di/container.js.map +1 -1
- package/dist/esm/di/preset.js +1 -1
- package/dist/esm/di/preset.js.map +1 -1
- package/dist/esm/http/utils.js +16 -4
- package/dist/esm/http/utils.js.map +1 -1
- package/dist/esm/log/handler/sentry.js +18 -22
- package/dist/esm/log/handler/sentry.js.map +1 -1
- package/dist/esm/log/index.js +2 -0
- package/dist/esm/log/index.js.map +1 -1
- package/dist/esm/log/logger.js +1 -1
- package/dist/esm/log/logger.js.map +1 -1
- package/dist/esm/package.json +16 -16
- package/dist/esm/preset/bun/providers/config-source.js +1 -1
- package/dist/esm/preset/bun/providers/config-source.js.map +1 -1
- package/dist/esm/preset/bun/providers/log-handler-sentry.js +6 -4
- package/dist/esm/preset/bun/providers/log-handler-sentry.js.map +1 -1
- package/dist/esm/preset/bun/providers/logger.js +1 -1
- package/dist/esm/preset/bun/providers/logger.js.map +1 -1
- package/dist/esm/preset/bun/providers/serve-metrics.js +1 -1
- package/dist/esm/preset/bun/providers/serve-metrics.js.map +1 -1
- package/dist/esm/preset/bun/providers/serve-middleware.js +3 -3
- package/dist/esm/preset/bun/providers/serve-middleware.js.map +1 -1
- package/dist/esm/preset/bun/providers/service-routes.js +1 -1
- package/dist/esm/preset/bun/providers/service-routes.js.map +1 -1
- package/dist/esm/preset/bun-handler/index.js +0 -1
- package/dist/esm/preset/bun-handler/index.js.map +1 -1
- package/dist/esm/preset/bun-handler/providers/fetch-middleware.js +1 -1
- package/dist/esm/preset/bun-handler/providers/fetch-middleware.js.map +1 -1
- package/dist/esm/preset/bun-handler/providers/handler-main.js +1 -1
- package/dist/esm/preset/bun-handler/providers/handler-main.js.map +1 -1
- package/dist/esm/preset/bun-handler/providers/specific-params.js +1 -1
- package/dist/esm/preset/bun-handler/providers/specific-params.js.map +1 -1
- package/dist/esm/preset/node/providers/express-error-middleware.js +2 -3
- package/dist/esm/preset/node/providers/express-error-middleware.js.map +1 -1
- package/dist/esm/preset/node/providers/express-request-middleware.js +7 -3
- package/dist/esm/preset/node/providers/express-request-middleware.js.map +1 -1
- package/dist/esm/preset/node/providers/log-handler-sentry.js +11 -5
- package/dist/esm/preset/node/providers/log-handler-sentry.js.map +1 -1
- package/dist/esm/preset/node/providers/main-express-app.js +1 -3
- package/dist/esm/preset/node/providers/main-express-app.js.map +1 -1
- package/dist/esm/preset/server/providers/fetch-middleware.js +1 -1
- package/dist/esm/preset/server/providers/fetch-middleware.js.map +1 -1
- package/dist/esm/preset/server/providers/serve.js +1 -1
- package/dist/esm/preset/server/providers/serve.js.map +1 -1
- package/dist/esm/preset/web/providers/logger.js +10 -7
- package/dist/esm/preset/web/providers/logger.js.map +1 -1
- package/dist/esm/utils/redux/remote-data.js +1 -1
- package/dist/esm/utils/redux/remote-data.js.map +1 -1
- package/dist/esm/utils/redux-saga/middleware.js +1 -1
- package/dist/esm/utils/redux-saga/middleware.js.map +1 -1
- package/dist/esm/utils/web/storage/index.js +1 -1
- package/dist/esm/utils/web/storage/index.js.map +1 -1
- package/dist/esm/utils/webpack/index.js +2 -3
- package/dist/esm/utils/webpack/index.js.map +1 -1
- package/dist/types/http/utils.d.ts.map +1 -1
- package/dist/types/log/handler/sentry.d.ts +3 -3
- package/dist/types/log/handler/sentry.d.ts.map +1 -1
- package/dist/types/log/index.d.ts +2 -0
- package/dist/types/log/index.d.ts.map +1 -1
- package/dist/types/preset/bun/providers/log-handler-sentry.d.ts.map +1 -1
- package/dist/types/preset/bun-handler/index.d.ts.map +1 -1
- package/dist/types/preset/node/providers/express-error-middleware.d.ts.map +1 -1
- package/dist/types/preset/node/providers/express-request-middleware.d.ts.map +1 -1
- package/dist/types/preset/node/providers/log-handler-sentry.d.ts.map +1 -1
- package/dist/types/preset/node/providers/main-express-app.d.ts.map +1 -1
- package/dist/types/preset/web/providers/logger.d.ts.map +1 -1
- package/dist/types/utils/webpack/index.d.ts +4 -6
- package/dist/types/utils/webpack/index.d.ts.map +1 -1
- package/package.json +21 -21
|
@@ -7,7 +7,7 @@ exports.CURRENT_APP = void 0;
|
|
|
7
7
|
exports.createApplication = createApplication;
|
|
8
8
|
var _errors = require("./errors");
|
|
9
9
|
var _token = require("./token");
|
|
10
|
-
/* eslint-disable
|
|
10
|
+
/* eslint-disable jsdoc/require-jsdoc */
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Токен, с помощью которого можно достать из приложения само приложение.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.js","names":["_errors","require","_token","CURRENT_APP","exports","createToken","ApplicationImplementation","constructor","providers","Map","components","presets","initialized","toString","bind","token","has","_key","AlreadyBoundError","toValue","value","set","toProvider","provider","get","resolve","chain","preset","apply","nextChain","includes","CircularDependencyError","component","otherToken","parent","NothingBoundError","attach","Error","push","invoke","tokens","fn","map","createApplication"],"sources":["../../../src/di/application.ts"],"sourcesContent":["/* eslint-disable
|
|
1
|
+
{"version":3,"file":"application.js","names":["_errors","require","_token","CURRENT_APP","exports","createToken","ApplicationImplementation","constructor","providers","Map","components","presets","initialized","toString","bind","token","has","_key","AlreadyBoundError","toValue","value","set","toProvider","provider","get","resolve","chain","preset","apply","nextChain","includes","CircularDependencyError","component","otherToken","parent","NothingBoundError","attach","Error","push","invoke","tokens","fn","map","createApplication"],"sources":["../../../src/di/application.ts"],"sourcesContent":["/* eslint-disable jsdoc/require-jsdoc */\nimport type { Application, Provider, Token, Binding, ExtractType, Preset } from './types';\nimport { AlreadyBoundError, CircularDependencyError, NothingBoundError } from './errors';\nimport { createToken } from './token';\n\n/**\n * Токен, с помощью которого можно достать из приложения само приложение.\n */\nexport const CURRENT_APP = createToken<Application>('application/self');\n\n/**\n * Реализация Application.\n */\nclass ApplicationImplementation implements Application {\n /** Родительское приложение. */\n private parent?: ApplicationImplementation;\n\n /** Зарегистрированные пресеты. */\n private presets: Preset[];\n\n /** Зарегистрированные провайдеры. */\n private providers: Map<symbol, Provider<unknown>>;\n\n /** Инициализированные компоненты (синглтоны). */\n private components: Map<symbol, unknown>;\n\n /** Инициализировано ли приложение. */\n private initialized: boolean;\n\n constructor() {\n this.providers = new Map();\n this.components = new Map();\n this.presets = [];\n this.initialized = false;\n }\n\n toString() {\n return 'Application';\n }\n\n bind<T>(token: Token<T>): Binding<T> {\n if (this.providers.has(token._key)) {\n throw new AlreadyBoundError(token, this.toString());\n }\n\n return {\n toValue: value => {\n this.providers.set(token._key, () => value);\n },\n toProvider: provider => {\n this.providers.set(token._key, provider);\n },\n };\n }\n\n get<T>(token: Token<T>): T {\n return this.resolve(token, []);\n }\n\n protected resolve<T>(token: Token<T>, chain: Token<any>[]): T {\n if (!this.initialized) {\n this.bind(CURRENT_APP).toValue(this);\n\n for (const preset of this.presets) {\n preset.apply(this);\n }\n\n this.initialized = true;\n }\n\n const nextChain = () => [...chain, token];\n\n if (chain.includes(token)) {\n throw new CircularDependencyError(nextChain(), this.toString());\n }\n\n if (this.components.has(token._key)) {\n return this.components.get(token._key) as T;\n }\n\n if (this.providers.has(token._key)) {\n const provider = this.providers.get(token._key) as Provider<T>;\n\n const component = provider(otherToken => this.resolve(otherToken, nextChain()));\n\n // ВАЖНО: всегда как singleton\n this.components.set(token._key, component);\n\n return component as T;\n }\n\n if (this.parent) {\n // ВАЖНО: передаём именно chain а не nextChain()\n return this.parent.resolve(token, chain);\n }\n\n throw new NothingBoundError(token, this.toString());\n }\n\n attach(parent: ApplicationImplementation): void {\n if (this.parent) {\n throw new Error('Cannot reattach application');\n }\n\n this.parent = parent;\n }\n\n preset(preset: Preset): void {\n this.presets.push(preset);\n }\n\n invoke<Tokens extends readonly Token<any>[]>(\n tokens: [...Tokens],\n fn: (...args: ExtractType<Tokens>) => void,\n ): void {\n fn(...(tokens.map(token => this.get(token)) as any));\n }\n}\n\n/**\n * Возвращает новое DI-приложение.\n * @return DI-приложение.\n */\nexport function createApplication(): Application {\n return new ApplicationImplementation();\n}\n"],"mappings":"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"}
|
package/dist/cjs/di/container.js
CHANGED
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.createContainer = createContainer;
|
|
7
7
|
var _errors = require("./errors");
|
|
8
|
-
/* eslint-disable
|
|
8
|
+
/* eslint-disable jsdoc/require-jsdoc */
|
|
9
9
|
|
|
10
10
|
class ContainerImplementation {
|
|
11
11
|
constructor() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","names":["_errors","require","ContainerImplementation","constructor","cache","Map","registry","set","token","provider","has","_key","AlreadyBoundError","get","resolve","chain","includes","CircularDependencyError","push","Error","value","otherToken","NothingBoundError","createContainer"],"sources":["../../../src/di/container.ts"],"sourcesContent":["/* eslint-disable
|
|
1
|
+
{"version":3,"file":"container.js","names":["_errors","require","ContainerImplementation","constructor","cache","Map","registry","set","token","provider","has","_key","AlreadyBoundError","get","resolve","chain","includes","CircularDependencyError","push","Error","value","otherToken","NothingBoundError","createContainer"],"sources":["../../../src/di/container.ts"],"sourcesContent":["/* eslint-disable jsdoc/require-jsdoc */\nimport type { Container, Provider, Token } from './types';\nimport { AlreadyBoundError, CircularDependencyError, NothingBoundError } from './errors';\n\nclass ContainerImplementation implements Container {\n cache: Map<symbol, any>;\n registry: Map<symbol, Provider<any>>;\n\n constructor() {\n this.cache = new Map<symbol, any>();\n this.registry = new Map<symbol, Provider<any>>();\n }\n\n set<T>(token: Token<T>, provider: Provider<T>): void {\n if (this.registry.has(token._key)) {\n throw new AlreadyBoundError(token);\n }\n\n this.registry.set(token._key, provider);\n }\n\n get<T>(token: Token<T>): T {\n return this.resolve(token, []);\n }\n\n private resolve<T>(token: Token<T>, chain: Token<any>[]): T {\n if (chain.includes(token)) {\n throw new CircularDependencyError([...chain, token]);\n } else {\n chain.push(token);\n }\n\n if (this.cache.has(token._key)) {\n return this.cache.get(token._key);\n } else if (this.registry.has(token._key)) {\n const provider = this.registry.get(token._key);\n\n if (typeof provider !== 'function') {\n throw new Error('Provider is not a function');\n }\n\n const value = provider(otherToken => this.resolve(otherToken, chain));\n\n // всегда как singleton\n this.cache.set(token._key, value);\n\n return value;\n } else {\n throw new NothingBoundError(token);\n }\n }\n}\n\n/**\n * Возвращает новый DI-контейнер.\n * @return DI-контейнер.\n */\nexport function createContainer(): Container {\n return new ContainerImplementation();\n}\n"],"mappings":";;;;;;AAEA,IAAAA,OAAA,GAAAC,OAAA;AAFA;;AAIA,MAAMC,uBAAuB,CAAsB;EAIjDC,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACC,KAAK,GAAG,IAAIC,GAAG,CAAc,CAAC;IACnC,IAAI,CAACC,QAAQ,GAAG,IAAID,GAAG,CAAwB,CAAC;EAClD;EAEAE,GAAGA,CAAIC,KAAe,EAAEC,QAAqB,EAAQ;IACnD,IAAI,IAAI,CAACH,QAAQ,CAACI,GAAG,CAACF,KAAK,CAACG,IAAI,CAAC,EAAE;MACjC,MAAM,IAAIC,yBAAiB,CAACJ,KAAK,CAAC;IACpC;IAEA,IAAI,CAACF,QAAQ,CAACC,GAAG,CAACC,KAAK,CAACG,IAAI,EAAEF,QAAQ,CAAC;EACzC;EAEAI,GAAGA,CAAIL,KAAe,EAAK;IACzB,OAAO,IAAI,CAACM,OAAO,CAACN,KAAK,EAAE,EAAE,CAAC;EAChC;EAEQM,OAAOA,CAAIN,KAAe,EAAEO,KAAmB,EAAK;IAC1D,IAAIA,KAAK,CAACC,QAAQ,CAACR,KAAK,CAAC,EAAE;MACzB,MAAM,IAAIS,+BAAuB,CAAC,CAAC,GAAGF,KAAK,EAAEP,KAAK,CAAC,CAAC;IACtD,CAAC,MAAM;MACLO,KAAK,CAACG,IAAI,CAACV,KAAK,CAAC;IACnB;IAEA,IAAI,IAAI,CAACJ,KAAK,CAACM,GAAG,CAACF,KAAK,CAACG,IAAI,CAAC,EAAE;MAC9B,OAAO,IAAI,CAACP,KAAK,CAACS,GAAG,CAACL,KAAK,CAACG,IAAI,CAAC;IACnC,CAAC,MAAM,IAAI,IAAI,CAACL,QAAQ,CAACI,GAAG,CAACF,KAAK,CAACG,IAAI,CAAC,EAAE;MACxC,MAAMF,QAAQ,GAAG,IAAI,CAACH,QAAQ,CAACO,GAAG,CAACL,KAAK,CAACG,IAAI,CAAC;MAE9C,IAAI,OAAOF,QAAQ,KAAK,UAAU,EAAE;QAClC,MAAM,IAAIU,KAAK,CAAC,4BAA4B,CAAC;MAC/C;MAEA,MAAMC,KAAK,GAAGX,QAAQ,CAACY,UAAU,IAAI,IAAI,CAACP,OAAO,CAACO,UAAU,EAAEN,KAAK,CAAC,CAAC;;MAErE;MACA,IAAI,CAACX,KAAK,CAACG,GAAG,CAACC,KAAK,CAACG,IAAI,EAAES,KAAK,CAAC;MAEjC,OAAOA,KAAK;IACd,CAAC,MAAM;MACL,MAAM,IAAIE,yBAAiB,CAACd,KAAK,CAAC;IACpC;EACF;AACF;;AAEA;AACA;AACA;AACA;AACO,SAASe,eAAeA,CAAA,EAAc;EAC3C,OAAO,IAAIrB,uBAAuB,CAAC,CAAC;AACtC"}
|
package/dist/cjs/di/preset.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preset.js","names":["PresetImplementation","constructor","defaults","registry","Map","set","token","provider","apply","app","bind","toProvider","createPreset"],"sources":["../../../src/di/preset.ts"],"sourcesContent":["/* eslint-disable
|
|
1
|
+
{"version":3,"file":"preset.js","names":["PresetImplementation","constructor","defaults","registry","Map","set","token","provider","apply","app","bind","toProvider","createPreset"],"sources":["../../../src/di/preset.ts"],"sourcesContent":["/* eslint-disable jsdoc/require-jsdoc */\nimport type { Application, Provider, Token, Preset } from './types';\n\ntype PresetEntry<T = any> = [Token<T>, Provider<T>];\n\nclass PresetImplementation implements Preset {\n private registry: Map<Token<any>, Provider<any>>;\n\n constructor(defaults?: Iterable<PresetEntry>) {\n this.registry = new Map<Token<any>, Provider<any>>(defaults);\n }\n\n set<T>(token: Token<T>, provider: Provider<T>): this {\n this.registry.set(token, provider);\n return this;\n }\n\n apply(app: Application): void {\n for (const [token, provider] of this.registry) {\n app.bind(token).toProvider(provider);\n }\n }\n}\n\n/**\n * Возвращает новый \"preset\" для DI-приложения - набор предустановленных компонентов которые можно переопределять.\n * @param defaults Предустановленные зависимости.\n * @return Preset.\n */\nexport function createPreset(defaults?: PresetEntry[]): Preset {\n return new PresetImplementation(defaults);\n}\n"],"mappings":";;;;;;AAAA;;AAKA,MAAMA,oBAAoB,CAAmB;EAG3CC,WAAWA,CAACC,QAAgC,EAAE;IAC5C,IAAI,CAACC,QAAQ,GAAG,IAAIC,GAAG,CAA4BF,QAAQ,CAAC;EAC9D;EAEAG,GAAGA,CAAIC,KAAe,EAAEC,QAAqB,EAAQ;IACnD,IAAI,CAACJ,QAAQ,CAACE,GAAG,CAACC,KAAK,EAAEC,QAAQ,CAAC;IAClC,OAAO,IAAI;EACb;EAEAC,KAAKA,CAACC,GAAgB,EAAQ;IAC5B,KAAK,MAAM,CAACH,KAAK,EAAEC,QAAQ,CAAC,IAAI,IAAI,CAACJ,QAAQ,EAAE;MAC7CM,GAAG,CAACC,IAAI,CAACJ,KAAK,CAAC,CAACK,UAAU,CAACJ,QAAQ,CAAC;IACtC;EACF;AACF;;AAEA;AACA;AACA;AACA;AACA;AACO,SAASK,YAAYA,CAACV,QAAwB,EAAU;EAC7D,OAAO,IAAIF,oBAAoB,CAACE,QAAQ,CAAC;AAC3C"}
|
package/dist/cjs/http/utils.js
CHANGED
|
@@ -57,11 +57,21 @@ const FetchUtil = exports.FetchUtil = {
|
|
|
57
57
|
eitherResponse({
|
|
58
58
|
parseBody = response => response.json()
|
|
59
59
|
} = {}) {
|
|
60
|
-
|
|
60
|
+
/** @inheritdoc */
|
|
61
|
+
const parse = async response => {
|
|
62
|
+
try {
|
|
63
|
+
return await parseBody(response);
|
|
64
|
+
} catch {
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
return [
|
|
69
|
+
// then
|
|
70
|
+
async response => {
|
|
61
71
|
if (!response.ok) {
|
|
62
72
|
return {
|
|
63
73
|
ok: false,
|
|
64
|
-
data: await
|
|
74
|
+
data: await parse(response),
|
|
65
75
|
error: new Error(`Request failed with status code ${response.status}`),
|
|
66
76
|
status: response.status,
|
|
67
77
|
statusText: response.statusText,
|
|
@@ -70,13 +80,15 @@ const FetchUtil = exports.FetchUtil = {
|
|
|
70
80
|
}
|
|
71
81
|
return {
|
|
72
82
|
ok: true,
|
|
73
|
-
data: await
|
|
83
|
+
data: await parse(response),
|
|
74
84
|
error: null,
|
|
75
85
|
status: response.status,
|
|
76
86
|
statusText: response.statusText,
|
|
77
87
|
headers: response.headers
|
|
78
88
|
};
|
|
79
|
-
},
|
|
89
|
+
},
|
|
90
|
+
// catch
|
|
91
|
+
async error => ({
|
|
80
92
|
ok: false,
|
|
81
93
|
error
|
|
82
94
|
})];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["FetchUtil","exports","setParams","url","params","paramName","paramValue","Object","entries","searchParams","delete","undefined","set","String","withParams","resultUrl","URL","withoutParams","search","eitherResponse","parseBody","response","json","
|
|
1
|
+
{"version":3,"file":"utils.js","names":["FetchUtil","exports","setParams","url","params","paramName","paramValue","Object","entries","searchParams","delete","undefined","set","String","withParams","resultUrl","URL","withoutParams","search","eitherResponse","parseBody","response","json","parse","ok","data","error","Error","status","statusText","headers"],"sources":["../../../src/http/utils.ts"],"sourcesContent":["import type { URLSearchParamsInit, ResponseDone, ResponseFail } from './types';\n\n/**\n * Утилиты для работы с URL, URLSearchParams, Headers, Request, Response.\n */\nexport const FetchUtil = {\n /**\n * Получив параметры применит их к переданному URL.\n * @param url URL.\n * @param params Параметры.\n */\n setParams(url: URL, params: URLSearchParamsInit): void {\n for (const [paramName, paramValue] of Object.entries(params)) {\n if (paramValue === null) {\n url.searchParams.delete(paramName);\n continue;\n }\n\n if (paramValue !== undefined) {\n url.searchParams.set(paramName, String(paramValue));\n continue;\n }\n }\n },\n\n // @todo resetPrams?\n\n /**\n * Получив URL и параметры вернет новый URL с примененными параметрами.\n * @param url URL.\n * @param params Параметры.\n * @return URL.\n */\n withParams(url: string | URL, params: URLSearchParamsInit): URL {\n const resultUrl = new URL(url);\n\n FetchUtil.setParams(resultUrl, params);\n\n return resultUrl;\n },\n\n /**\n * Получив URL вернет его копию но без параметров.\n * @param url URL.\n * @return URL.\n */\n withoutParams(url: string | URL): URL {\n const resultUrl = new URL(url);\n\n resultUrl.search = '';\n\n return resultUrl;\n },\n\n /**\n * Возвращает кортеж обработчиков для Promise из fetch.\n * Полученный Promise никогда не уйдет в состояние rejected.\n * @param options Опции.\n * @return Кортеж.\n */\n eitherResponse<T = unknown>({\n parseBody = response => response.json(),\n }: {\n /** Парсер body. */\n parseBody?: (response: Response) => Promise<T>;\n } = {}) {\n /** @inheritdoc */\n const parse = async (response: Response): Promise<T | null> => {\n try {\n return await parseBody(response);\n } catch {\n return null;\n }\n };\n\n return [\n // then\n async (response: Response): Promise<ResponseDone<T> | ResponseFail<T>> => {\n if (!response.ok) {\n return {\n ok: false,\n data: (await parse(response)) as T,\n error: new Error(`Request failed with status code ${response.status}`),\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n };\n }\n\n return {\n ok: true,\n data: (await parse(response)) as T,\n error: null,\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n };\n },\n\n // catch\n async (error: unknown): Promise<ResponseFail<T>> => ({\n ok: false,\n error,\n }),\n ] as const;\n },\n} as const;\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACO,MAAMA,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG;EACvB;AACF;AACA;AACA;AACA;EACEE,SAASA,CAACC,GAAQ,EAAEC,MAA2B,EAAQ;IACrD,KAAK,MAAM,CAACC,SAAS,EAAEC,UAAU,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACJ,MAAM,CAAC,EAAE;MAC5D,IAAIE,UAAU,KAAK,IAAI,EAAE;QACvBH,GAAG,CAACM,YAAY,CAACC,MAAM,CAACL,SAAS,CAAC;QAClC;MACF;MAEA,IAAIC,UAAU,KAAKK,SAAS,EAAE;QAC5BR,GAAG,CAACM,YAAY,CAACG,GAAG,CAACP,SAAS,EAAEQ,MAAM,CAACP,UAAU,CAAC,CAAC;QACnD;MACF;IACF;EACF,CAAC;EAED;;EAEA;AACF;AACA;AACA;AACA;AACA;EACEQ,UAAUA,CAACX,GAAiB,EAAEC,MAA2B,EAAO;IAC9D,MAAMW,SAAS,GAAG,IAAIC,GAAG,CAACb,GAAG,CAAC;IAE9BH,SAAS,CAACE,SAAS,CAACa,SAAS,EAAEX,MAAM,CAAC;IAEtC,OAAOW,SAAS;EAClB,CAAC;EAED;AACF;AACA;AACA;AACA;EACEE,aAAaA,CAACd,GAAiB,EAAO;IACpC,MAAMY,SAAS,GAAG,IAAIC,GAAG,CAACb,GAAG,CAAC;IAE9BY,SAAS,CAACG,MAAM,GAAG,EAAE;IAErB,OAAOH,SAAS;EAClB,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;EACEI,cAAcA,CAAc;IAC1BC,SAAS,GAAGC,QAAQ,IAAIA,QAAQ,CAACC,IAAI,CAAC;EAIxC,CAAC,GAAG,CAAC,CAAC,EAAE;IACN;IACA,MAAMC,KAAK,GAAG,MAAOF,QAAkB,IAAwB;MAC7D,IAAI;QACF,OAAO,MAAMD,SAAS,CAACC,QAAQ,CAAC;MAClC,CAAC,CAAC,MAAM;QACN,OAAO,IAAI;MACb;IACF,CAAC;IAED,OAAO;IACL;IACA,MAAOA,QAAkB,IAAiD;MACxE,IAAI,CAACA,QAAQ,CAACG,EAAE,EAAE;QAChB,OAAO;UACLA,EAAE,EAAE,KAAK;UACTC,IAAI,EAAG,MAAMF,KAAK,CAACF,QAAQ,CAAO;UAClCK,KAAK,EAAE,IAAIC,KAAK,CAAE,mCAAkCN,QAAQ,CAACO,MAAO,EAAC,CAAC;UACtEA,MAAM,EAAEP,QAAQ,CAACO,MAAM;UACvBC,UAAU,EAAER,QAAQ,CAACQ,UAAU;UAC/BC,OAAO,EAAET,QAAQ,CAACS;QACpB,CAAC;MACH;MAEA,OAAO;QACLN,EAAE,EAAE,IAAI;QACRC,IAAI,EAAG,MAAMF,KAAK,CAACF,QAAQ,CAAO;QAClCK,KAAK,EAAE,IAAI;QACXE,MAAM,EAAEP,QAAQ,CAACO,MAAM;QACvBC,UAAU,EAAER,QAAQ,CAACQ,UAAU;QAC/BC,OAAO,EAAET,QAAQ,CAACS;MACpB,CAAC;IACH,CAAC;IAED;IACA,MAAOJ,KAAc,KAAgC;MACnDF,EAAE,EAAE,KAAK;MACTE;IACF,CAAC,CAAC,CACH;EACH;AACF,CAAU"}
|
|
@@ -7,16 +7,16 @@ exports.createSentryHandler = createSentryHandler;
|
|
|
7
7
|
var _log = require("../../log");
|
|
8
8
|
/**
|
|
9
9
|
* Возвращает новый handler для logger'а для отправки событий в Sentry.
|
|
10
|
-
* @param
|
|
10
|
+
* @param scopeInit Sentry Hub или функция которая его вернёт.
|
|
11
11
|
* @return Handler.
|
|
12
12
|
*/
|
|
13
|
-
function createSentryHandler(
|
|
14
|
-
const
|
|
13
|
+
function createSentryHandler(scopeInit) {
|
|
14
|
+
const getScope = typeof scopeInit === 'function' ? scopeInit : () => scopeInit;
|
|
15
15
|
return event => {
|
|
16
|
-
// ВАЖНО: каждый входящий http-запрос должен иметь свой собственный hub
|
|
16
|
+
// ВАЖНО: каждый входящий http-запрос должен иметь свой собственный hub (ныне scope)
|
|
17
17
|
// подробности: https://github.com/getsentry/sentry-javascript/discussions/5648
|
|
18
18
|
// поэтому если передана функция - вызываем каждый раз (внутри обработчика)
|
|
19
|
-
const
|
|
19
|
+
const scope = getScope();
|
|
20
20
|
|
|
21
21
|
// error
|
|
22
22
|
if (event.type === 'error') {
|
|
@@ -27,30 +27,26 @@ function createSentryHandler(hubInit) {
|
|
|
27
27
|
context,
|
|
28
28
|
extra
|
|
29
29
|
} = error.data;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
if (level) {
|
|
31
|
+
scope.setLevel(level);
|
|
32
|
+
}
|
|
33
|
+
if (context) {
|
|
34
|
+
const list = Array.isArray(context) ? context : [context];
|
|
35
|
+
for (const item of list) {
|
|
36
|
+
scope.setContext(item.key, item.data);
|
|
33
37
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
if (extra) {
|
|
41
|
-
scope.setExtra(extra.key, extra.data);
|
|
42
|
-
}
|
|
43
|
-
hub.captureException(error);
|
|
44
|
-
});
|
|
45
|
-
} else {
|
|
46
|
-
hub.captureException(error);
|
|
38
|
+
}
|
|
39
|
+
if (extra) {
|
|
40
|
+
scope.setExtra(extra.key, extra.data);
|
|
41
|
+
}
|
|
47
42
|
}
|
|
43
|
+
scope.captureException(error);
|
|
48
44
|
}
|
|
49
45
|
|
|
50
46
|
// breadcrumb
|
|
51
47
|
if (event.data instanceof _log.Breadcrumb) {
|
|
52
48
|
const breadcrumb = event.data.data;
|
|
53
|
-
|
|
49
|
+
scope.addBreadcrumb(breadcrumb);
|
|
54
50
|
}
|
|
55
51
|
};
|
|
56
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sentry.js","names":["_log","require","createSentryHandler","
|
|
1
|
+
{"version":3,"file":"sentry.js","names":["_log","require","createSentryHandler","scopeInit","getScope","event","scope","type","error","data","DetailedError","level","context","extra","setLevel","list","Array","isArray","item","setContext","key","setExtra","captureException","Breadcrumb","breadcrumb","addBreadcrumb"],"sources":["../../../../src/log/handler/sentry.ts"],"sourcesContent":["import type { LogHandler } from '../types';\nimport type { Scope } from '@sentry/types';\nimport { Breadcrumb, DetailedError } from '../../log';\n\n/**\n * Возвращает новый handler для logger'а для отправки событий в Sentry.\n * @param scopeInit Sentry Hub или функция которая его вернёт.\n * @return Handler.\n */\nexport function createSentryHandler(scopeInit: Scope | (() => Scope)): LogHandler {\n const getScope = typeof scopeInit === 'function' ? scopeInit : () => scopeInit;\n\n return event => {\n // ВАЖНО: каждый входящий http-запрос должен иметь свой собственный hub (ныне scope)\n // подробности: https://github.com/getsentry/sentry-javascript/discussions/5648\n // поэтому если передана функция - вызываем каждый раз (внутри обработчика)\n const scope = getScope();\n\n // error\n if (event.type === 'error') {\n const error = event.data;\n\n if (error instanceof DetailedError) {\n const { level, context, extra } = error.data;\n\n if (level) {\n scope.setLevel(level);\n }\n\n if (context) {\n const list = Array.isArray(context) ? context : [context];\n\n for (const item of list) {\n scope.setContext(item.key, item.data);\n }\n }\n\n if (extra) {\n scope.setExtra(extra.key, extra.data);\n }\n }\n\n scope.captureException(error);\n }\n\n // breadcrumb\n if (event.data instanceof Breadcrumb) {\n const breadcrumb = event.data.data;\n\n scope.addBreadcrumb(breadcrumb);\n }\n };\n}\n"],"mappings":";;;;;;AAEA,IAAAA,IAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,SAASC,mBAAmBA,CAACC,SAAgC,EAAc;EAChF,MAAMC,QAAQ,GAAG,OAAOD,SAAS,KAAK,UAAU,GAAGA,SAAS,GAAG,MAAMA,SAAS;EAE9E,OAAOE,KAAK,IAAI;IACd;IACA;IACA;IACA,MAAMC,KAAK,GAAGF,QAAQ,CAAC,CAAC;;IAExB;IACA,IAAIC,KAAK,CAACE,IAAI,KAAK,OAAO,EAAE;MAC1B,MAAMC,KAAK,GAAGH,KAAK,CAACI,IAAI;MAExB,IAAID,KAAK,YAAYE,kBAAa,EAAE;QAClC,MAAM;UAAEC,KAAK;UAAEC,OAAO;UAAEC;QAAM,CAAC,GAAGL,KAAK,CAACC,IAAI;QAE5C,IAAIE,KAAK,EAAE;UACTL,KAAK,CAACQ,QAAQ,CAACH,KAAK,CAAC;QACvB;QAEA,IAAIC,OAAO,EAAE;UACX,MAAMG,IAAI,GAAGC,KAAK,CAACC,OAAO,CAACL,OAAO,CAAC,GAAGA,OAAO,GAAG,CAACA,OAAO,CAAC;UAEzD,KAAK,MAAMM,IAAI,IAAIH,IAAI,EAAE;YACvBT,KAAK,CAACa,UAAU,CAACD,IAAI,CAACE,GAAG,EAAEF,IAAI,CAACT,IAAI,CAAC;UACvC;QACF;QAEA,IAAII,KAAK,EAAE;UACTP,KAAK,CAACe,QAAQ,CAACR,KAAK,CAACO,GAAG,EAAEP,KAAK,CAACJ,IAAI,CAAC;QACvC;MACF;MAEAH,KAAK,CAACgB,gBAAgB,CAACd,KAAK,CAAC;IAC/B;;IAEA;IACA,IAAIH,KAAK,CAACI,IAAI,YAAYc,eAAU,EAAE;MACpC,MAAMC,UAAU,GAAGnB,KAAK,CAACI,IAAI,CAACA,IAAI;MAElCH,KAAK,CAACmB,aAAa,CAACD,UAAU,CAAC;IACjC;EACF,CAAC;AACH"}
|
package/dist/cjs/log/index.js
CHANGED
|
@@ -21,6 +21,20 @@ Object.defineProperty(exports, "createLogger", {
|
|
|
21
21
|
return _logger.createLogger;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "createPinoHandler", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _pino.createPinoHandler;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(exports, "createSentryHandler", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return _sentry.createSentryHandler;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
24
36
|
var _logger = require("./logger");
|
|
25
37
|
var _errors = require("./errors");
|
|
38
|
+
var _pino = require("./handler/pino");
|
|
39
|
+
var _sentry = require("./handler/sentry");
|
|
26
40
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_logger","require","_errors"],"sources":["../../../src/log/index.ts"],"sourcesContent":["export type {\n Logger,\n LogEvent,\n LogLevel,\n LogHandler,\n ErrorDetails,\n BreadcrumbDetails,\n ContextData,\n} from './types';\n\nexport { createLogger } from './logger';\nexport { DetailedError, Breadcrumb } from './errors';\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["_logger","require","_errors","_pino","_sentry"],"sources":["../../../src/log/index.ts"],"sourcesContent":["export type {\n Logger,\n LogEvent,\n LogLevel,\n LogHandler,\n ErrorDetails,\n BreadcrumbDetails,\n ContextData,\n} from './types';\n\nexport { createLogger } from './logger';\nexport { DetailedError, Breadcrumb } from './errors';\nexport { createPinoHandler } from './handler/pino';\nexport { createSentryHandler } from './handler/sentry';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA"}
|
package/dist/cjs/log/logger.js
CHANGED
|
@@ -11,7 +11,7 @@ exports.createLogger = createLogger;
|
|
|
11
11
|
function createLogger() {
|
|
12
12
|
const handlers = [];
|
|
13
13
|
|
|
14
|
-
// eslint-disable-next-line
|
|
14
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
15
15
|
const createMethod = type => data => {
|
|
16
16
|
const event = {
|
|
17
17
|
type,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","names":["createLogger","handlers","createMethod","type","data","event","handler","log","info","warn","error","debug","subscribe","push"],"sources":["../../../src/log/logger.ts"],"sourcesContent":["import type { Logger, LogEvent, LogLevel, LogHandler } from './types';\n\n/**\n * Возвращает новый logger - объект для журналирования событий подобно console.\n * @return Logger.\n */\nexport function createLogger(): Logger {\n const handlers: LogHandler[] = [];\n\n // eslint-disable-next-line
|
|
1
|
+
{"version":3,"file":"logger.js","names":["createLogger","handlers","createMethod","type","data","event","handler","log","info","warn","error","debug","subscribe","push"],"sources":["../../../src/log/logger.ts"],"sourcesContent":["import type { Logger, LogEvent, LogLevel, LogHandler } from './types';\n\n/**\n * Возвращает новый logger - объект для журналирования событий подобно console.\n * @return Logger.\n */\nexport function createLogger(): Logger {\n const handlers: LogHandler[] = [];\n\n // eslint-disable-next-line jsdoc/require-jsdoc\n const createMethod = (type: LogLevel) => (data: any) => {\n const event: LogEvent = { type, data };\n\n for (const handler of handlers) {\n handler(event);\n }\n };\n\n return {\n log: createMethod('log'),\n info: createMethod('info'),\n warn: createMethod('warn'),\n error: createMethod('error'),\n debug: createMethod('debug'),\n\n subscribe: handler => {\n handlers.push(handler);\n },\n };\n}\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACO,SAASA,YAAYA,CAAA,EAAW;EACrC,MAAMC,QAAsB,GAAG,EAAE;;EAEjC;EACA,MAAMC,YAAY,GAAIC,IAAc,IAAMC,IAAS,IAAK;IACtD,MAAMC,KAAe,GAAG;MAAEF,IAAI;MAAEC;IAAK,CAAC;IAEtC,KAAK,MAAME,OAAO,IAAIL,QAAQ,EAAE;MAC9BK,OAAO,CAACD,KAAK,CAAC;IAChB;EACF,CAAC;EAED,OAAO;IACLE,GAAG,EAAEL,YAAY,CAAC,KAAK,CAAC;IACxBM,IAAI,EAAEN,YAAY,CAAC,MAAM,CAAC;IAC1BO,IAAI,EAAEP,YAAY,CAAC,MAAM,CAAC;IAC1BQ,KAAK,EAAER,YAAY,CAAC,OAAO,CAAC;IAC5BS,KAAK,EAAET,YAAY,CAAC,OAAO,CAAC;IAE5BU,SAAS,EAAEN,OAAO,IAAI;MACpBL,QAAQ,CAACY,IAAI,CAACP,OAAO,CAAC;IACxB;EACF,CAAC;AACH"}
|
package/dist/cjs/package.json
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "commonjs",
|
|
3
3
|
"name": "@sima-land/isomorph",
|
|
4
|
-
"version": "11.0.0-alpha.
|
|
4
|
+
"version": "11.0.0-alpha.52",
|
|
5
5
|
"dependencies": {
|
|
6
6
|
"@humanwhocodes/env": "^3.0.5",
|
|
7
7
|
"@krutoo/fetch-tools": "^0.0.16",
|
|
8
|
-
"@opentelemetry/api": "^1.
|
|
9
|
-
"@opentelemetry/exporter-prometheus": "^0.
|
|
10
|
-
"@opentelemetry/exporter-trace-otlp-http": "^0.
|
|
11
|
-
"@opentelemetry/propagator-jaeger": "^1.
|
|
12
|
-
"@opentelemetry/resources": "^1.
|
|
13
|
-
"@opentelemetry/sdk-metrics": "^1.
|
|
14
|
-
"@opentelemetry/sdk-trace-base": "^1.
|
|
15
|
-
"@opentelemetry/sdk-trace-node": "^1.
|
|
16
|
-
"@opentelemetry/semantic-conventions": "^1.
|
|
17
|
-
"@sentry/browser": "^
|
|
18
|
-
"@sentry/bun": "^
|
|
19
|
-
"@sentry/node": "^
|
|
8
|
+
"@opentelemetry/api": "^1.9.0",
|
|
9
|
+
"@opentelemetry/exporter-prometheus": "^0.52.1",
|
|
10
|
+
"@opentelemetry/exporter-trace-otlp-http": "^0.52.1",
|
|
11
|
+
"@opentelemetry/propagator-jaeger": "^1.25.1",
|
|
12
|
+
"@opentelemetry/resources": "^1.25.1",
|
|
13
|
+
"@opentelemetry/sdk-metrics": "^1.25.1",
|
|
14
|
+
"@opentelemetry/sdk-trace-base": "^1.25.1",
|
|
15
|
+
"@opentelemetry/sdk-trace-node": "^1.25.1",
|
|
16
|
+
"@opentelemetry/semantic-conventions": "^1.25.1",
|
|
17
|
+
"@sentry/browser": "^8.13.0",
|
|
18
|
+
"@sentry/bun": "^8.13.0",
|
|
19
|
+
"@sentry/node": "^8.13.0",
|
|
20
20
|
"accepts": "^1.3.8",
|
|
21
21
|
"dotenv": "^16.3.1",
|
|
22
|
-
"express": "^4.
|
|
22
|
+
"express": "^4.21.0",
|
|
23
23
|
"http-proxy-middleware": "^3.0.0",
|
|
24
24
|
"jsesc": "^3.0.2",
|
|
25
|
-
"middleware-axios": "^
|
|
25
|
+
"middleware-axios": "^3.0.0",
|
|
26
26
|
"pino": "^8.14.1",
|
|
27
27
|
"pino-pretty": "^9.1.1",
|
|
28
28
|
"prom-client": "^14.2.0",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|
|
32
32
|
"@reduxjs/toolkit": "^1.9.5",
|
|
33
|
-
"axios": "^1.
|
|
33
|
+
"axios": "^1.7.4",
|
|
34
34
|
"react": "^17.0 || ^18.0",
|
|
35
35
|
"react-dom": "^17.0 || ^18.0",
|
|
36
36
|
"react-redux": "^8.0.5",
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.provideConfigSource = provideConfigSource;
|
|
7
7
|
var _config = require("../../../config");
|
|
8
|
-
/* eslint-disable
|
|
8
|
+
/* eslint-disable jsdoc/require-jsdoc */
|
|
9
9
|
|
|
10
10
|
function provideConfigSource() {
|
|
11
11
|
return (0, _config.createConfigSource)(Bun.env);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-source.js","names":["_config","require","provideConfigSource","createConfigSource","Bun","env"],"sources":["../../../../../src/preset/bun/providers/config-source.ts"],"sourcesContent":["/* eslint-disable
|
|
1
|
+
{"version":3,"file":"config-source.js","names":["_config","require","provideConfigSource","createConfigSource","Bun","env"],"sources":["../../../../../src/preset/bun/providers/config-source.ts"],"sourcesContent":["/* eslint-disable jsdoc/require-jsdoc */\nimport { ConfigSource, createConfigSource } from '../../../config';\n\nexport function provideConfigSource(): ConfigSource {\n return createConfigSource(Bun.env);\n}\n"],"mappings":";;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AADA;;AAGO,SAASC,mBAAmBA,CAAA,EAAiB;EAClD,OAAO,IAAAC,0BAAkB,EAACC,GAAG,CAACC,GAAG,CAAC;AACpC"}
|
|
@@ -7,18 +7,20 @@ exports.provideLogHandlerSentry = provideLogHandlerSentry;
|
|
|
7
7
|
var _tokens = require("../../../tokens");
|
|
8
8
|
var _bun = require("@sentry/bun");
|
|
9
9
|
var _sentry = require("../../../log/handler/sentry");
|
|
10
|
-
/* eslint-disable
|
|
10
|
+
/* eslint-disable jsdoc/require-jsdoc */
|
|
11
11
|
|
|
12
12
|
function provideLogHandlerSentry(resolve) {
|
|
13
13
|
const source = resolve(_tokens.KnownToken.Config.source);
|
|
14
14
|
(0, _bun.init)({
|
|
15
15
|
dsn: source.require('SENTRY_DSN'),
|
|
16
16
|
release: source.require('SENTRY_RELEASE'),
|
|
17
|
-
environment: source.require('SENTRY_ENVIRONMENT')
|
|
17
|
+
environment: source.require('SENTRY_ENVIRONMENT'),
|
|
18
|
+
tracesSampleRate: Number(source.get('SENTRY_TRACES_SAMPLE_RATE', 0)),
|
|
19
|
+
integrations: [...(0, _bun.getDefaultIntegrations)({})]
|
|
18
20
|
});
|
|
19
21
|
|
|
20
22
|
// ВАЖНО: передаем функцию чтобы брать текущий hub в момент вызова метода logger'а
|
|
21
23
|
// это нужно чтобы хлебные крошки в ошибках Sentry группировались по запросам
|
|
22
|
-
return (0, _sentry.createSentryHandler)(_bun.
|
|
24
|
+
return (0, _sentry.createSentryHandler)(_bun.getCurrentScope);
|
|
23
25
|
}
|
|
24
26
|
//# sourceMappingURL=log-handler-sentry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log-handler-sentry.js","names":["_tokens","require","_bun","_sentry","provideLogHandlerSentry","resolve","source","KnownToken","Config","init","dsn","release","environment","createSentryHandler","
|
|
1
|
+
{"version":3,"file":"log-handler-sentry.js","names":["_tokens","require","_bun","_sentry","provideLogHandlerSentry","resolve","source","KnownToken","Config","init","dsn","release","environment","tracesSampleRate","Number","get","integrations","getDefaultIntegrations","createSentryHandler","getCurrentScope"],"sources":["../../../../../src/preset/bun/providers/log-handler-sentry.ts"],"sourcesContent":["/* eslint-disable jsdoc/require-jsdoc */\nimport { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\nimport { getCurrentScope, getDefaultIntegrations, init } from '@sentry/bun';\nimport { createSentryHandler } from '../../../log/handler/sentry';\n\nexport function provideLogHandlerSentry(resolve: Resolve) {\n const source = resolve(KnownToken.Config.source);\n\n init({\n dsn: source.require('SENTRY_DSN'),\n release: source.require('SENTRY_RELEASE'),\n environment: source.require('SENTRY_ENVIRONMENT'),\n tracesSampleRate: Number(source.get('SENTRY_TRACES_SAMPLE_RATE', 0)),\n integrations: [...getDefaultIntegrations({})],\n });\n\n // ВАЖНО: передаем функцию чтобы брать текущий hub в момент вызова метода logger'а\n // это нужно чтобы хлебные крошки в ошибках Sentry группировались по запросам\n return createSentryHandler(getCurrentScope);\n}\n"],"mappings":";;;;;;AAEA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAJA;;AAMO,SAASG,uBAAuBA,CAACC,OAAgB,EAAE;EACxD,MAAMC,MAAM,GAAGD,OAAO,CAACE,kBAAU,CAACC,MAAM,CAACF,MAAM,CAAC;EAEhD,IAAAG,SAAI,EAAC;IACHC,GAAG,EAAEJ,MAAM,CAACL,OAAO,CAAC,YAAY,CAAC;IACjCU,OAAO,EAAEL,MAAM,CAACL,OAAO,CAAC,gBAAgB,CAAC;IACzCW,WAAW,EAAEN,MAAM,CAACL,OAAO,CAAC,oBAAoB,CAAC;IACjDY,gBAAgB,EAAEC,MAAM,CAACR,MAAM,CAACS,GAAG,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;IACpEC,YAAY,EAAE,CAAC,GAAG,IAAAC,2BAAsB,EAAC,CAAC,CAAC,CAAC;EAC9C,CAAC,CAAC;;EAEF;EACA;EACA,OAAO,IAAAC,2BAAmB,EAACC,oBAAe,CAAC;AAC7C"}
|
|
@@ -7,7 +7,7 @@ exports.provideLogger = provideLogger;
|
|
|
7
7
|
var _log = require("../../../log");
|
|
8
8
|
var _logHandlerPino = require("../../node/providers/log-handler-pino");
|
|
9
9
|
var _logHandlerSentry = require("./log-handler-sentry");
|
|
10
|
-
/* eslint-disable
|
|
10
|
+
/* eslint-disable jsdoc/require-jsdoc */
|
|
11
11
|
|
|
12
12
|
function provideLogger(resolve) {
|
|
13
13
|
const logger = (0, _log.createLogger)();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","names":["_log","require","_logHandlerPino","_logHandlerSentry","provideLogger","resolve","logger","createLogger","subscribe","provideLogHandlerPino","provideLogHandlerSentry"],"sources":["../../../../../src/preset/bun/providers/logger.ts"],"sourcesContent":["/* eslint-disable
|
|
1
|
+
{"version":3,"file":"logger.js","names":["_log","require","_logHandlerPino","_logHandlerSentry","provideLogger","resolve","logger","createLogger","subscribe","provideLogHandlerPino","provideLogHandlerSentry"],"sources":["../../../../../src/preset/bun/providers/logger.ts"],"sourcesContent":["/* eslint-disable jsdoc/require-jsdoc */\nimport { Resolve } from '../../../di';\nimport { Logger, createLogger } from '../../../log';\nimport { provideLogHandlerPino } from '../../node/providers/log-handler-pino';\nimport { provideLogHandlerSentry } from './log-handler-sentry';\n\nexport function provideLogger(resolve: Resolve): Logger {\n const logger = createLogger();\n\n logger.subscribe(provideLogHandlerPino(resolve));\n logger.subscribe(provideLogHandlerSentry(resolve));\n\n return logger;\n}\n"],"mappings":";;;;;;AAEA,IAAAA,IAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAJA;;AAMO,SAASG,aAAaA,CAACC,OAAgB,EAAU;EACtD,MAAMC,MAAM,GAAG,IAAAC,iBAAY,EAAC,CAAC;EAE7BD,MAAM,CAACE,SAAS,CAAC,IAAAC,qCAAqB,EAACJ,OAAO,CAAC,CAAC;EAChDC,MAAM,CAACE,SAAS,CAAC,IAAAE,yCAAuB,EAACL,OAAO,CAAC,CAAC;EAElD,OAAOC,MAAM;AACf"}
|
|
@@ -7,7 +7,7 @@ exports.provideServeMetrics = provideServeMetrics;
|
|
|
7
7
|
var _fetchTools = require("@krutoo/fetch-tools");
|
|
8
8
|
var _promClient = _interopRequireDefault(require("prom-client"));
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
/* eslint-disable
|
|
10
|
+
/* eslint-disable jsdoc/require-jsdoc */
|
|
11
11
|
|
|
12
12
|
function provideServeMetrics() {
|
|
13
13
|
// @todo задействовать когда Bun реализует pref_hooks.monitorEventLoopDelay (https://github.com/siimon/prom-client/issues/570)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve-metrics.js","names":["_fetchTools","require","_promClient","_interopRequireDefault","obj","__esModule","default","provideServeMetrics","router","route","get","metrics","PromClient","register","headers","Headers","set","contentType","Response"],"sources":["../../../../../src/preset/bun/providers/serve-metrics.ts"],"sourcesContent":["/* eslint-disable
|
|
1
|
+
{"version":3,"file":"serve-metrics.js","names":["_fetchTools","require","_promClient","_interopRequireDefault","obj","__esModule","default","provideServeMetrics","router","route","get","metrics","PromClient","register","headers","Headers","set","contentType","Response"],"sources":["../../../../../src/preset/bun/providers/serve-metrics.ts"],"sourcesContent":["/* eslint-disable jsdoc/require-jsdoc */\nimport { Handler } from '../../../http';\nimport { route, router } from '@krutoo/fetch-tools';\nimport PromClient from 'prom-client';\n\nexport function provideServeMetrics(): Handler {\n // @todo задействовать когда Bun реализует pref_hooks.monitorEventLoopDelay (https://github.com/siimon/prom-client/issues/570)\n // PromClient.collectDefaultMetrics();\n\n return router(\n route.get('/', async () => {\n const metrics = await PromClient.register.metrics();\n const headers = new Headers();\n\n headers.set('Content-Type', PromClient.register.contentType);\n\n return new Response(metrics, { headers });\n }),\n );\n}\n"],"mappings":";;;;;;AAEA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAqC,SAAAE,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAHrC;;AAKO,SAASG,mBAAmBA,CAAA,EAAY;EAC7C;EACA;;EAEA,OAAO,IAAAC,kBAAM,EACXC,iBAAK,CAACC,GAAG,CAAC,GAAG,EAAE,YAAY;IACzB,MAAMC,OAAO,GAAG,MAAMC,mBAAU,CAACC,QAAQ,CAACF,OAAO,CAAC,CAAC;IACnD,MAAMG,OAAO,GAAG,IAAIC,OAAO,CAAC,CAAC;IAE7BD,OAAO,CAACE,GAAG,CAAC,cAAc,EAAEJ,mBAAU,CAACC,QAAQ,CAACI,WAAW,CAAC;IAE5D,OAAO,IAAIC,QAAQ,CAACP,OAAO,EAAE;MAAEG;IAAQ,CAAC,CAAC;EAC3C,CAAC,CACH,CAAC;AACH"}
|
|
@@ -9,14 +9,14 @@ var _bun = require("@sentry/bun");
|
|
|
9
9
|
var _getServeLogging = require("../../server/utils/get-serve-logging");
|
|
10
10
|
var _getServeErrorLogging = require("../../server/utils/get-serve-error-logging");
|
|
11
11
|
var _getServeMeasuring = require("../../node/utils/get-serve-measuring");
|
|
12
|
-
/* eslint-disable
|
|
12
|
+
/* eslint-disable jsdoc/require-jsdoc */
|
|
13
13
|
|
|
14
14
|
function provideServeMiddleware(resolve) {
|
|
15
15
|
const config = resolve(_tokens.KnownToken.Config.base);
|
|
16
16
|
const logger = resolve(_tokens.KnownToken.logger);
|
|
17
17
|
return [
|
|
18
18
|
// ВАЖНО: изолируем хлебные крошки чтобы они группировались по входящим запросам
|
|
19
|
-
(request, next) => (0, _bun.
|
|
19
|
+
(request, next) => (0, _bun.withIsolationScope)(async () => next(request)),
|
|
20
20
|
// ВАЖНО: слой логирования ошибки ПЕРЕД остальными слоями чтобы не упустить ошибки выше
|
|
21
21
|
(0, _getServeErrorLogging.getServeErrorLogging)(logger),
|
|
22
22
|
// @todo tracing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve-middleware.js","names":["_tokens","require","_bun","_getServeLogging","_getServeErrorLogging","_getServeMeasuring","provideServeMiddleware","resolve","config","KnownToken","Config","base","logger","request","next","
|
|
1
|
+
{"version":3,"file":"serve-middleware.js","names":["_tokens","require","_bun","_getServeLogging","_getServeErrorLogging","_getServeMeasuring","provideServeMiddleware","resolve","config","KnownToken","Config","base","logger","request","next","withIsolationScope","getServeErrorLogging","getServeMeasuring","getServeLogging"],"sources":["../../../../../src/preset/bun/providers/serve-middleware.ts"],"sourcesContent":["/* eslint-disable jsdoc/require-jsdoc */\nimport { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\nimport { withIsolationScope } from '@sentry/bun';\nimport { ServerMiddleware } from '../../server/types';\nimport { getServeLogging } from '../../server/utils/get-serve-logging';\nimport { getServeErrorLogging } from '../../server/utils/get-serve-error-logging';\nimport { getServeMeasuring } from '../../node/utils/get-serve-measuring';\n\nexport function provideServeMiddleware(resolve: Resolve): ServerMiddleware[] {\n const config = resolve(KnownToken.Config.base);\n const logger = resolve(KnownToken.logger);\n\n return [\n // ВАЖНО: изолируем хлебные крошки чтобы они группировались по входящим запросам\n (request, next) => withIsolationScope(async () => next(request)),\n\n // ВАЖНО: слой логирования ошибки ПЕРЕД остальными слоями чтобы не упустить ошибки выше\n getServeErrorLogging(logger),\n\n // @todo tracing\n\n // метрики\n getServeMeasuring(config),\n\n // ВАЖНО: слой логирования запроса и ответа ПОСЛЕ остальных слоев чтобы использовать актуальные данные\n getServeLogging(logger),\n ];\n}\n"],"mappings":";;;;;;AAEA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAEA,IAAAE,gBAAA,GAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAJ,OAAA;AAPA;;AASO,SAASK,sBAAsBA,CAACC,OAAgB,EAAsB;EAC3E,MAAMC,MAAM,GAAGD,OAAO,CAACE,kBAAU,CAACC,MAAM,CAACC,IAAI,CAAC;EAC9C,MAAMC,MAAM,GAAGL,OAAO,CAACE,kBAAU,CAACG,MAAM,CAAC;EAEzC,OAAO;EACL;EACA,CAACC,OAAO,EAAEC,IAAI,KAAK,IAAAC,uBAAkB,EAAC,YAAYD,IAAI,CAACD,OAAO,CAAC,CAAC;EAEhE;EACA,IAAAG,0CAAoB,EAACJ,MAAM,CAAC;EAE5B;;EAEA;EACA,IAAAK,oCAAiB,EAACT,MAAM,CAAC;EAEzB;EACA,IAAAU,gCAAe,EAACN,MAAM,CAAC,CACxB;AACH"}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.provideServiceRoutes = provideServiceRoutes;
|
|
7
7
|
var _getStatsHandler = require("../utils/get-stats-handler");
|
|
8
8
|
var _getHealthCheck = require("../../server/utils/get-health-check");
|
|
9
|
-
/* eslint-disable
|
|
9
|
+
/* eslint-disable jsdoc/require-jsdoc */
|
|
10
10
|
|
|
11
11
|
function provideServiceRoutes() {
|
|
12
12
|
return [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-routes.js","names":["_getStatsHandler","require","_getHealthCheck","provideServiceRoutes","getHealthCheck","getStatsHandler"],"sources":["../../../../../src/preset/bun/providers/service-routes.ts"],"sourcesContent":["/* eslint-disable
|
|
1
|
+
{"version":3,"file":"service-routes.js","names":["_getStatsHandler","require","_getHealthCheck","provideServiceRoutes","getHealthCheck","getStatsHandler"],"sources":["../../../../../src/preset/bun/providers/service-routes.ts"],"sourcesContent":["/* eslint-disable jsdoc/require-jsdoc */\nimport { ServerHandler } from '../../server/types';\nimport { getStatsHandler } from '../utils/get-stats-handler';\nimport { getHealthCheck } from '../../server/utils/get-health-check';\n\nexport function provideServiceRoutes(): Array<[string, ServerHandler]> {\n return [\n // служебные маршруты (без промежуточных слоев)\n ['/healthcheck', getHealthCheck()],\n ['/stats', getStatsHandler()],\n ];\n}\n"],"mappings":";;;;;;AAEA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAHA;;AAKO,SAASE,oBAAoBA,CAAA,EAAmC;EACrE,OAAO;EACL;EACA,CAAC,cAAc,EAAE,IAAAC,8BAAc,EAAC,CAAC,CAAC,EAClC,CAAC,QAAQ,EAAE,IAAAC,gCAAe,EAAC,CAAC,CAAC,CAC9B;AACH"}
|
|
@@ -20,8 +20,6 @@ var _elementToString = require("../server/providers/element-to-string");
|
|
|
20
20
|
var _formatPageResponse = require("../server/providers/format-page-response");
|
|
21
21
|
var _acceptType = require("./providers/accept-type");
|
|
22
22
|
var _responseEvents = require("../server/providers/response-events");
|
|
23
|
-
/* eslint-disable require-jsdoc, jsdoc/require-jsdoc */
|
|
24
|
-
|
|
25
23
|
/**
|
|
26
24
|
* Возвращает preset с зависимостями для формирования обработчика входящего http-запроса.
|
|
27
25
|
* @param customize Получит функцию с помощью которой можно переопределить предустановленные провайдеры.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_di","require","_tokens","_abortController","_fetch","_reduxMiddlewareSaga","_pageRender","_fetchLogHandler","_fetchMiddleware","_handlerMain","_pageHelmet","_specificParams","_specificExtras","_elementToString","_formatPageResponse","_acceptType","_responseEvents","PresetBunHandler","customize","preset","createPreset","set","KnownToken","Http","fetch","provideFetch","Fetch","abortController","provideAbortController","middleware","provideFetchMiddleware","Middleware","Log","handler","provideFetchLogHandler","Handler","main","provideHandlerMain","Request","acceptType","provideAcceptType","specificParams","provideSpecificParams","Response","events","provideResponseEvents","specificExtras","SpecificExtras","Page","assets","js","css","helmet","providePageHelmet","render","providePageRender","elementToString","provideElementToString","formatResponse","provideFormatPageResponse","Redux","saga","provideReduxMiddlewareSaga","override","bind"],"sources":["../../../../src/preset/bun-handler/index.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["_di","require","_tokens","_abortController","_fetch","_reduxMiddlewareSaga","_pageRender","_fetchLogHandler","_fetchMiddleware","_handlerMain","_pageHelmet","_specificParams","_specificExtras","_elementToString","_formatPageResponse","_acceptType","_responseEvents","PresetBunHandler","customize","preset","createPreset","set","KnownToken","Http","fetch","provideFetch","Fetch","abortController","provideAbortController","middleware","provideFetchMiddleware","Middleware","Log","handler","provideFetchLogHandler","Handler","main","provideHandlerMain","Request","acceptType","provideAcceptType","specificParams","provideSpecificParams","Response","events","provideResponseEvents","specificExtras","SpecificExtras","Page","assets","js","css","helmet","providePageHelmet","render","providePageRender","elementToString","provideElementToString","formatResponse","provideFormatPageResponse","Redux","saga","provideReduxMiddlewareSaga","override","bind"],"sources":["../../../../src/preset/bun-handler/index.ts"],"sourcesContent":["import { createPreset } from '../../di';\nimport { KnownToken } from '../../tokens';\nimport { PresetTuner } from '../isomorphic';\nimport { provideAbortController } from '../isomorphic/providers/abort-controller';\nimport { provideFetch } from '../isomorphic/providers/fetch';\nimport { provideReduxMiddlewareSaga } from '../isomorphic/providers/redux-middleware-saga';\nimport { providePageRender } from '../server/providers/page-render';\nimport { provideFetchLogHandler } from '../server/providers/fetch-log-handler';\nimport { provideFetchMiddleware } from './providers/fetch-middleware';\nimport { provideHandlerMain } from './providers/handler-main';\nimport { providePageHelmet } from '../server/providers/page-helmet';\nimport { provideSpecificParams } from './providers/specific-params';\nimport { SpecificExtras } from '../server/utils/specific-extras';\nimport { provideElementToString } from '../server/providers/element-to-string';\nimport { provideFormatPageResponse } from '../server/providers/format-page-response';\nimport { provideAcceptType } from './providers/accept-type';\nimport { provideResponseEvents } from '../server/providers/response-events';\n\n/**\n * Возвращает preset с зависимостями для формирования обработчика входящего http-запроса.\n * @param customize Получит функцию с помощью которой можно переопределить предустановленные провайдеры.\n * @todo Возможно стоит переименовать в PresetPageHandler.\n * @return Preset.\n */\nexport function PresetBunHandler(customize?: PresetTuner) {\n const preset = createPreset();\n\n // http fetch\n preset.set(KnownToken.Http.fetch, provideFetch);\n preset.set(KnownToken.Http.Fetch.abortController, provideAbortController);\n preset.set(KnownToken.Http.Fetch.middleware, provideFetchMiddleware);\n preset.set(KnownToken.Http.Fetch.Middleware.Log.handler, provideFetchLogHandler);\n\n // handler\n preset.set(KnownToken.Http.Handler.main, provideHandlerMain);\n preset.set(KnownToken.Http.Handler.Request.acceptType, provideAcceptType);\n preset.set(KnownToken.Http.Handler.Request.specificParams, provideSpecificParams);\n preset.set(KnownToken.Http.Handler.Response.events, provideResponseEvents);\n preset.set(KnownToken.Http.Handler.Response.specificExtras, () => new SpecificExtras());\n preset.set(KnownToken.Http.Handler.Page.assets, () => ({ js: '', css: '' }));\n preset.set(KnownToken.Http.Handler.Page.helmet, providePageHelmet);\n preset.set(KnownToken.Http.Handler.Page.render, providePageRender);\n preset.set(KnownToken.Http.Handler.Page.elementToString, provideElementToString);\n preset.set(KnownToken.Http.Handler.Page.formatResponse, provideFormatPageResponse);\n\n // redux saga\n preset.set(KnownToken.Redux.Middleware.saga, provideReduxMiddlewareSaga);\n\n if (customize) {\n customize({ override: preset.set.bind(preset) });\n }\n\n return preset;\n}\n"],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ var _getFetchErrorLogging = require("../../isomorphic/utils/get-fetch-error-logg
|
|
|
10
10
|
var _getFetchExtraAborting = require("../../isomorphic/utils/get-fetch-extra-aborting");
|
|
11
11
|
var _getFetchLogging = require("../../isomorphic/utils/get-fetch-logging");
|
|
12
12
|
var _getForwardedHeaders = require("../../server/utils/get-forwarded-headers");
|
|
13
|
-
/* eslint-disable
|
|
13
|
+
/* eslint-disable jsdoc/require-jsdoc */
|
|
14
14
|
|
|
15
15
|
function provideFetchMiddleware(resolve) {
|
|
16
16
|
const config = resolve(_tokens.KnownToken.Config.base);
|