@trpc/client 11.1.3-alpha-tmp-tsdown.24 → 11.1.3-alpha-tmp-tsdown.28
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/{TRPCClientError.js → TRPCClientError-CGgRtttT.cjs} +14 -4
- package/dist/{TRPCClientError.mjs → TRPCClientError-COkhCKf3.mjs} +1 -1
- package/dist/TRPCClientError-COkhCKf3.mjs.map +1 -0
- package/dist/httpBatchLink-CIC9PZ_Z.cjs +267 -0
- package/dist/httpBatchLink-DIfnmmcu.mjs +238 -0
- package/dist/httpBatchLink-DIfnmmcu.mjs.map +1 -0
- package/dist/{links/HTTPBatchLinkOptions.d.mts → httpBatchLink.d-BN2Iw_cK.d.mts} +13 -5
- package/dist/httpBatchLink.d-BN2Iw_cK.d.mts.map +1 -0
- package/dist/{links/HTTPBatchLinkOptions.d.ts → httpBatchLink.d-CLAuJKNV.d.cts} +13 -5
- package/dist/httpBatchLink.d-CLAuJKNV.d.cts.map +1 -0
- package/dist/httpLink-9bpwQ15c.mjs +90 -0
- package/dist/httpLink-9bpwQ15c.mjs.map +1 -0
- package/dist/{links/httpLink.js → httpLink-BbVj_TgM.cjs} +43 -9
- package/dist/{links/httpLink.d.ts → httpLink.d-CTSOARfE.d.mts} +3 -3
- package/dist/httpLink.d-CTSOARfE.d.mts.map +1 -0
- package/dist/httpLink.d-yMKfOlTU.d.cts +23 -0
- package/dist/httpLink.d-yMKfOlTU.d.cts.map +1 -0
- package/dist/{links/internals/httpUtils.mjs → httpUtils-3pbQzhUL.mjs} +13 -4
- package/dist/httpUtils-3pbQzhUL.mjs.map +1 -0
- package/dist/{links/internals/httpUtils.js → httpUtils-Buf6jCgh.cjs} +55 -10
- package/dist/{links/internals/httpUtils.d.ts → httpUtils.d-C8wPxU79.d.mts} +3 -3
- package/dist/httpUtils.d-C8wPxU79.d.mts.map +1 -0
- package/dist/{links/internals/httpUtils.d.mts → httpUtils.d-DNRVGNHs.d.cts} +3 -3
- package/dist/httpUtils.d-DNRVGNHs.d.cts.map +1 -0
- package/dist/index.cjs +731 -0
- package/dist/index.d.cts +197 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +197 -21
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +733 -19
- package/dist/index.mjs.map +1 -0
- package/dist/links/httpBatchLink.cjs +6 -0
- package/dist/links/httpBatchLink.d.cts +6 -0
- package/dist/links/httpBatchLink.d.mts +6 -15
- package/dist/links/httpBatchLink.mjs +5 -93
- package/dist/links/httpLink.cjs +6 -0
- package/dist/links/httpLink.d.cts +6 -0
- package/dist/links/httpLink.d.mts +6 -23
- package/dist/links/httpLink.mjs +5 -78
- package/dist/links/loggerLink.cjs +3 -0
- package/dist/links/loggerLink.d.cts +4 -0
- package/dist/links/loggerLink.d.mts +4 -55
- package/dist/links/loggerLink.mjs +2 -124
- package/dist/links/splitLink.cjs +3 -0
- package/dist/links/splitLink.d.cts +4 -0
- package/dist/links/splitLink.d.mts +4 -20
- package/dist/links/splitLink.mjs +2 -25
- package/dist/links/wsLink/wsLink.cjs +6 -0
- package/dist/links/wsLink/wsLink.d.cts +5 -0
- package/dist/links/wsLink/wsLink.d.mts +5 -14
- package/dist/links/wsLink/wsLink.mjs +4 -32
- package/dist/{links/loggerLink.js → loggerLink-CsDfg5Bb.cjs} +8 -3
- package/dist/loggerLink-PGBSQFcR.mjs +125 -0
- package/dist/loggerLink-PGBSQFcR.mjs.map +1 -0
- package/dist/{links/loggerLink.d.ts → loggerLink.d-CZjK1CXm.d.mts} +2 -3
- package/dist/loggerLink.d-CZjK1CXm.d.mts.map +1 -0
- package/dist/loggerLink.d-DU855urG.d.cts +54 -0
- package/dist/loggerLink.d-DU855urG.d.cts.map +1 -0
- package/dist/splitLink-BMgxggng.cjs +58 -0
- package/dist/{links/internals/createChain.mjs → splitLink-BVblHq4n.mjs} +23 -2
- package/dist/splitLink-BVblHq4n.mjs.map +1 -0
- package/dist/{links/splitLink.d.ts → splitLink.d-BAqgq0NG.d.mts} +2 -2
- package/dist/splitLink.d-BAqgq0NG.d.mts.map +1 -0
- package/dist/splitLink.d-GdevSkGW.d.cts +20 -0
- package/dist/splitLink.d-GdevSkGW.d.cts.map +1 -0
- package/dist/{links/internals/subscriptions.d.mts → subscriptions.d-Ciljg_dH.d.cts} +1 -1
- package/dist/subscriptions.d-Ciljg_dH.d.cts.map +1 -0
- package/dist/{links/internals/subscriptions.d.ts → subscriptions.d-U92STdZl.d.mts} +1 -1
- package/dist/subscriptions.d-U92STdZl.d.mts.map +1 -0
- package/dist/types.d-DXbqQLCC.d.mts +182 -0
- package/dist/types.d-DXbqQLCC.d.mts.map +1 -0
- package/dist/types.d-DqGYG6S_.d.cts +182 -0
- package/dist/types.d-DqGYG6S_.d.cts.map +1 -0
- package/dist/{internals/transformer.js → unstable-internals-CYBH4jbF.cjs} +6 -1
- package/dist/{internals/transformer.mjs → unstable-internals-DU4WecoG.mjs} +1 -1
- package/dist/unstable-internals-DU4WecoG.mjs.map +1 -0
- package/dist/unstable-internals.cjs +3 -0
- package/dist/{internals/transformer.d.mts → unstable-internals.d-DyLd-B0J.d.mts} +1 -1
- package/dist/unstable-internals.d-DyLd-B0J.d.mts.map +1 -0
- package/dist/{internals/transformer.d.ts → unstable-internals.d-kWsZTlQq.d.cts} +1 -1
- package/dist/unstable-internals.d-kWsZTlQq.d.cts.map +1 -0
- package/dist/unstable-internals.d.cts +3 -0
- package/dist/unstable-internals.d.mts +2 -2
- package/dist/unstable-internals.mjs +1 -1
- package/dist/wsLink-DbSHOzlB.mjs +698 -0
- package/dist/wsLink-DbSHOzlB.mjs.map +1 -0
- package/dist/wsLink-DhJ50EC5.cjs +715 -0
- package/dist/wsLink.d-BqO7ltN_.d.mts +194 -0
- package/dist/wsLink.d-BqO7ltN_.d.mts.map +1 -0
- package/dist/wsLink.d-DtZjg09g.d.cts +194 -0
- package/dist/wsLink.d-DtZjg09g.d.cts.map +1 -0
- package/links/httpBatchLink/package.json +1 -1
- package/links/httpLink/package.json +1 -1
- package/links/loggerLink/package.json +1 -1
- package/links/splitLink/package.json +1 -1
- package/links/wsLink/wsLink/package.json +1 -1
- package/package.json +22 -21
- package/unstable-internals/package.json +1 -1
- package/dist/TRPCClientError.d.mts +0 -32
- package/dist/TRPCClientError.d.mts.map +0 -1
- package/dist/TRPCClientError.d.ts +0 -32
- package/dist/TRPCClientError.d.ts.map +0 -1
- package/dist/TRPCClientError.mjs.map +0 -1
- package/dist/_virtual/rolldown_runtime.mjs +0 -27
- package/dist/createTRPCClient.d.mts +0 -69
- package/dist/createTRPCClient.d.mts.map +0 -1
- package/dist/createTRPCClient.d.ts +0 -69
- package/dist/createTRPCClient.d.ts.map +0 -1
- package/dist/createTRPCClient.js +0 -48
- package/dist/createTRPCClient.mjs +0 -45
- package/dist/createTRPCClient.mjs.map +0 -1
- package/dist/createTRPCUntypedClient.d.mts +0 -8
- package/dist/createTRPCUntypedClient.d.mts.map +0 -1
- package/dist/createTRPCUntypedClient.d.ts +0 -8
- package/dist/createTRPCUntypedClient.d.ts.map +0 -1
- package/dist/createTRPCUntypedClient.js +0 -9
- package/dist/createTRPCUntypedClient.mjs +0 -10
- package/dist/createTRPCUntypedClient.mjs.map +0 -1
- package/dist/getFetch.d.mts +0 -9
- package/dist/getFetch.d.mts.map +0 -1
- package/dist/getFetch.d.ts +0 -9
- package/dist/getFetch.d.ts.map +0 -1
- package/dist/getFetch.js +0 -12
- package/dist/getFetch.mjs +0 -12
- package/dist/getFetch.mjs.map +0 -1
- package/dist/index.d.ts +0 -21
- package/dist/index.js +0 -43
- package/dist/internals/TRPCUntypedClient.d.mts +0 -45
- package/dist/internals/TRPCUntypedClient.d.mts.map +0 -1
- package/dist/internals/TRPCUntypedClient.d.ts +0 -45
- package/dist/internals/TRPCUntypedClient.d.ts.map +0 -1
- package/dist/internals/TRPCUntypedClient.js +0 -96
- package/dist/internals/TRPCUntypedClient.mjs +0 -96
- package/dist/internals/TRPCUntypedClient.mjs.map +0 -1
- package/dist/internals/dataLoader.js +0 -106
- package/dist/internals/dataLoader.mjs +0 -106
- package/dist/internals/dataLoader.mjs.map +0 -1
- package/dist/internals/inputWithTrackedEventId.js +0 -13
- package/dist/internals/inputWithTrackedEventId.mjs +0 -13
- package/dist/internals/inputWithTrackedEventId.mjs.map +0 -1
- package/dist/internals/signals.js +0 -46
- package/dist/internals/signals.mjs +0 -44
- package/dist/internals/signals.mjs.map +0 -1
- package/dist/internals/transformer.d.mts.map +0 -1
- package/dist/internals/transformer.d.ts.map +0 -1
- package/dist/internals/transformer.mjs.map +0 -1
- package/dist/internals/types.d.mts +0 -84
- package/dist/internals/types.d.mts.map +0 -1
- package/dist/internals/types.d.ts +0 -84
- package/dist/internals/types.d.ts.map +0 -1
- package/dist/links/HTTPBatchLinkOptions.d.mts.map +0 -1
- package/dist/links/HTTPBatchLinkOptions.d.ts.map +0 -1
- package/dist/links/httpBatchLink.d.mts.map +0 -1
- package/dist/links/httpBatchLink.d.ts +0 -15
- package/dist/links/httpBatchLink.d.ts.map +0 -1
- package/dist/links/httpBatchLink.js +0 -94
- package/dist/links/httpBatchLink.mjs.map +0 -1
- package/dist/links/httpBatchStreamLink.d.mts +0 -19
- package/dist/links/httpBatchStreamLink.d.mts.map +0 -1
- package/dist/links/httpBatchStreamLink.d.ts +0 -19
- package/dist/links/httpBatchStreamLink.d.ts.map +0 -1
- package/dist/links/httpBatchStreamLink.js +0 -126
- package/dist/links/httpBatchStreamLink.mjs +0 -125
- package/dist/links/httpBatchStreamLink.mjs.map +0 -1
- package/dist/links/httpLink.d.mts.map +0 -1
- package/dist/links/httpLink.d.ts.map +0 -1
- package/dist/links/httpLink.mjs.map +0 -1
- package/dist/links/httpSubscriptionLink.d.mts +0 -29
- package/dist/links/httpSubscriptionLink.d.mts.map +0 -1
- package/dist/links/httpSubscriptionLink.d.ts +0 -29
- package/dist/links/httpSubscriptionLink.d.ts.map +0 -1
- package/dist/links/httpSubscriptionLink.js +0 -142
- package/dist/links/httpSubscriptionLink.mjs +0 -141
- package/dist/links/httpSubscriptionLink.mjs.map +0 -1
- package/dist/links/internals/contentTypes.d.mts +0 -9
- package/dist/links/internals/contentTypes.d.mts.map +0 -1
- package/dist/links/internals/contentTypes.d.ts +0 -9
- package/dist/links/internals/contentTypes.d.ts.map +0 -1
- package/dist/links/internals/contentTypes.js +0 -16
- package/dist/links/internals/contentTypes.mjs +0 -14
- package/dist/links/internals/contentTypes.mjs.map +0 -1
- package/dist/links/internals/createChain.js +0 -26
- package/dist/links/internals/createChain.mjs.map +0 -1
- package/dist/links/internals/httpUtils.d.mts.map +0 -1
- package/dist/links/internals/httpUtils.d.ts.map +0 -1
- package/dist/links/internals/httpUtils.mjs.map +0 -1
- package/dist/links/internals/subscriptions.d.mts.map +0 -1
- package/dist/links/internals/subscriptions.d.ts.map +0 -1
- package/dist/links/internals/urlWithConnectionParams.d.mts +0 -24
- package/dist/links/internals/urlWithConnectionParams.d.mts.map +0 -1
- package/dist/links/internals/urlWithConnectionParams.d.ts +0 -24
- package/dist/links/internals/urlWithConnectionParams.d.ts.map +0 -1
- package/dist/links/internals/urlWithConnectionParams.js +0 -12
- package/dist/links/internals/urlWithConnectionParams.mjs +0 -12
- package/dist/links/internals/urlWithConnectionParams.mjs.map +0 -1
- package/dist/links/localLink.d.mts +0 -21
- package/dist/links/localLink.d.mts.map +0 -1
- package/dist/links/localLink.d.ts +0 -21
- package/dist/links/localLink.d.ts.map +0 -1
- package/dist/links/localLink.js +0 -192
- package/dist/links/localLink.mjs +0 -193
- package/dist/links/localLink.mjs.map +0 -1
- package/dist/links/loggerLink.d.mts.map +0 -1
- package/dist/links/loggerLink.d.ts.map +0 -1
- package/dist/links/loggerLink.mjs.map +0 -1
- package/dist/links/retryLink.d.mts +0 -36
- package/dist/links/retryLink.d.mts.map +0 -1
- package/dist/links/retryLink.d.ts +0 -36
- package/dist/links/retryLink.d.ts.map +0 -1
- package/dist/links/retryLink.js +0 -64
- package/dist/links/retryLink.mjs +0 -64
- package/dist/links/retryLink.mjs.map +0 -1
- package/dist/links/splitLink.d.mts.map +0 -1
- package/dist/links/splitLink.d.ts.map +0 -1
- package/dist/links/splitLink.js +0 -26
- package/dist/links/splitLink.mjs.map +0 -1
- package/dist/links/types.d.mts +0 -68
- package/dist/links/types.d.mts.map +0 -1
- package/dist/links/types.d.ts +0 -68
- package/dist/links/types.d.ts.map +0 -1
- package/dist/links/wsLink/createWsClient.d.mts +0 -9
- package/dist/links/wsLink/createWsClient.d.mts.map +0 -1
- package/dist/links/wsLink/createWsClient.d.ts +0 -9
- package/dist/links/wsLink/createWsClient.d.ts.map +0 -1
- package/dist/links/wsLink/createWsClient.js +0 -9
- package/dist/links/wsLink/createWsClient.mjs +0 -10
- package/dist/links/wsLink/createWsClient.mjs.map +0 -1
- package/dist/links/wsLink/wsClient/options.d.mts +0 -69
- package/dist/links/wsLink/wsClient/options.d.mts.map +0 -1
- package/dist/links/wsLink/wsClient/options.d.ts +0 -69
- package/dist/links/wsLink/wsClient/options.d.ts.map +0 -1
- package/dist/links/wsLink/wsClient/options.js +0 -24
- package/dist/links/wsLink/wsClient/options.mjs +0 -22
- package/dist/links/wsLink/wsClient/options.mjs.map +0 -1
- package/dist/links/wsLink/wsClient/requestManager.js +0 -136
- package/dist/links/wsLink/wsClient/requestManager.mjs +0 -137
- package/dist/links/wsLink/wsClient/requestManager.mjs.map +0 -1
- package/dist/links/wsLink/wsClient/utils.js +0 -77
- package/dist/links/wsLink/wsClient/utils.mjs +0 -74
- package/dist/links/wsLink/wsClient/utils.mjs.map +0 -1
- package/dist/links/wsLink/wsClient/wsClient.d.mts +0 -101
- package/dist/links/wsLink/wsClient/wsClient.d.mts.map +0 -1
- package/dist/links/wsLink/wsClient/wsClient.d.ts +0 -101
- package/dist/links/wsLink/wsClient/wsClient.d.ts.map +0 -1
- package/dist/links/wsLink/wsClient/wsClient.js +0 -276
- package/dist/links/wsLink/wsClient/wsClient.mjs +0 -276
- package/dist/links/wsLink/wsClient/wsClient.mjs.map +0 -1
- package/dist/links/wsLink/wsClient/wsConnection.js +0 -165
- package/dist/links/wsLink/wsClient/wsConnection.mjs +0 -164
- package/dist/links/wsLink/wsClient/wsConnection.mjs.map +0 -1
- package/dist/links/wsLink/wsLink.d.mts.map +0 -1
- package/dist/links/wsLink/wsLink.d.ts +0 -14
- package/dist/links/wsLink/wsLink.d.ts.map +0 -1
- package/dist/links/wsLink/wsLink.js +0 -34
- package/dist/links/wsLink/wsLink.mjs.map +0 -1
- package/dist/links.js +0 -11
- package/dist/links.mjs +0 -11
- package/dist/node_modules/.pnpm/@oxc-project_runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.js +0 -68
- package/dist/node_modules/.pnpm/@oxc-project_runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.mjs +0 -66
- package/dist/node_modules/.pnpm/@oxc-project_runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.mjs.map +0 -1
- package/dist/unstable-internals.d.ts +0 -3
- package/dist/unstable-internals.js +0 -3
- /package/dist/{_virtual/rolldown_runtime.js → chunk-DWy1uDak.cjs} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"retryLink.mjs","names":["opts: RetryLinkOptions<TInferrable>","next$: Unsubscribable","callNextTimeout: ReturnType<typeof setTimeout> | undefined","lastEventId: string | undefined","attempts: number"],"sources":["../../src/links/retryLink.ts"],"sourcesContent":["/* istanbul ignore file -- @preserve */\n// We're not actually exporting this link\nimport type { Unsubscribable } from '@trpc/server/observable';\nimport { observable } from '@trpc/server/observable';\nimport type { InferrableClientTypes } from '@trpc/server/unstable-core-do-not-import';\nimport { inputWithTrackedEventId } from '../internals/inputWithTrackedEventId';\nimport type { TRPCClientError } from '../TRPCClientError';\nimport type { Operation, TRPCLink } from './types';\n\ninterface RetryLinkOptions<TInferrable extends InferrableClientTypes> {\n /**\n * The retry function\n */\n retry: (opts: RetryFnOptions<TInferrable>) => boolean;\n /**\n * The delay between retries in ms (defaults to 0)\n */\n retryDelayMs?: (attempt: number) => number;\n}\n\ninterface RetryFnOptions<TInferrable extends InferrableClientTypes> {\n /**\n * The operation that failed\n */\n op: Operation;\n /**\n * The error that occurred\n */\n error: TRPCClientError<TInferrable>;\n /**\n * The number of attempts that have been made (including the first call)\n */\n attempts: number;\n}\n\n/**\n * @see https://trpc.io/docs/v11/client/links/retryLink\n */\nexport function retryLink<TInferrable extends InferrableClientTypes>(\n opts: RetryLinkOptions<TInferrable>,\n): TRPCLink<TInferrable> {\n // initialized config\n return () => {\n // initialized in app\n return (callOpts) => {\n // initialized for request\n return observable((observer) => {\n let next$: Unsubscribable;\n let callNextTimeout: ReturnType<typeof setTimeout> | undefined =\n undefined;\n\n let lastEventId: string | undefined = undefined;\n\n attempt(1);\n\n function opWithLastEventId() {\n const op = callOpts.op;\n if (!lastEventId) {\n return op;\n }\n\n return {\n ...op,\n input: inputWithTrackedEventId(op.input, lastEventId),\n };\n }\n\n function attempt(attempts: number) {\n const op = opWithLastEventId();\n\n next$ = callOpts.next(op).subscribe({\n error(error) {\n const shouldRetry = opts.retry({\n op,\n attempts,\n error,\n });\n if (!shouldRetry) {\n observer.error(error);\n return;\n }\n const delayMs = opts.retryDelayMs?.(attempts) ?? 0;\n\n if (delayMs <= 0) {\n attempt(attempts + 1);\n return;\n }\n callNextTimeout = setTimeout(\n () => attempt(attempts + 1),\n delayMs,\n );\n },\n next(envelope) {\n //\n if (\n (!envelope.result.type || envelope.result.type === 'data') &&\n envelope.result.id\n ) {\n //\n lastEventId = envelope.result.id;\n }\n\n observer.next(envelope);\n },\n complete() {\n observer.complete();\n },\n });\n }\n return () => {\n next$.unsubscribe();\n clearTimeout(callNextTimeout);\n };\n });\n };\n };\n}\n"],"mappings":";;;;;;;AAsCA,SAAgB,UACdA,MACuB;AAEvB,QAAO,MAAM;AAEX,SAAO,CAAC,aAAa;AAEnB,UAAO,WAAW,CAAC,aAAa;IAC9B,IAAIC;IACJ,IAAIC;IAGJ,IAAIC;AAEJ,YAAQ,EAAE;IAEV,SAAS,oBAAoB;KAC3B,MAAM,KAAK,SAAS;AACpB,UAAK,YACH,QAAO;AAGT,YAAO;MACL,GAAG;MACH,OAAO,wBAAwB,GAAG,OAAO,YAAY;KACtD;IACF;IAED,SAAS,QAAQC,UAAkB;KACjC,MAAM,KAAK,mBAAmB;AAE9B,aAAQ,SAAS,KAAK,GAAG,CAAC,UAAU;MAClC,MAAM,OAAO;OACX,MAAM,cAAc,KAAK,MAAM;QAC7B;QACA;QACA;OACD,EAAC;AACF,YAAK,aAAa;AAChB,iBAAS,MAAM,MAAM;AACrB;OACD;OACD,MAAM,UAAU,KAAK,eAAe,SAAS,IAAI;AAEjD,WAAI,WAAW,GAAG;AAChB,gBAAQ,WAAW,EAAE;AACrB;OACD;AACD,yBAAkB,WAChB,MAAM,QAAQ,WAAW,EAAE,EAC3B,QACD;MACF;MACD,KAAK,UAAU;AAEb,aACI,SAAS,OAAO,QAAQ,SAAS,OAAO,SAAS,WACnD,SAAS,OAAO,GAGhB,eAAc,SAAS,OAAO;AAGhC,gBAAS,KAAK,SAAS;MACxB;MACD,WAAW;AACT,gBAAS,UAAU;MACpB;KACF,EAAC;IACH;AACD,WAAO,MAAM;AACX,WAAM,aAAa;AACnB,kBAAa,gBAAgB;IAC9B;GACF,EAAC;EACH;CACF;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"splitLink.d.mts","names":[],"sources":["../../src/links/splitLink.ts"],"sourcesContent":[],"mappings":";;;;iBAQgB,0BAA0B,YAAY;kBACpC;EADF;;;EAAmC,IAAG,EAK9C,QAL8C,CAKrC,OALqC,CAAA,GAK1B,QAL0B,CAKjB,OALiB,CAAA,EAAA;EAAS;;;EAK/C,KAAqB,EAI5B,QAJ4B,CAInB,OAJmB,CAAA,GAIR,QAJQ,CAIC,OAJD,CAAA,EAAA;CAAO,CAAA,EAKxC,QALwB,CAKf,OALe,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"splitLink.d.ts","names":[],"sources":["../../src/links/splitLink.ts"],"sourcesContent":[],"mappings":";;;;iBAQgB,0BAA0B,YAAY;kBACpC;EADF;;;EAAmC,IAAG,EAK9C,QAL8C,CAKrC,OALqC,CAAA,GAK1B,QAL0B,CAKjB,OALiB,CAAA,EAAA;EAAS;;;EAK/C,KAAqB,EAI5B,QAJ4B,CAInB,OAJmB,CAAA,GAIR,QAJQ,CAIC,OAJD,CAAA,EAAA;CAAO,CAAA,EAKxC,QALwB,CAKf,OALe,CAAA"}
|
package/dist/links/splitLink.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.js');
|
|
2
|
-
const require_createChain = require('./internals/createChain.js');
|
|
3
|
-
const __trpc_server_observable = require_rolldown_runtime.__toESM(require("@trpc/server/observable"));
|
|
4
|
-
|
|
5
|
-
//#region src/links/splitLink.ts
|
|
6
|
-
function asArray(value) {
|
|
7
|
-
return Array.isArray(value) ? value : [value];
|
|
8
|
-
}
|
|
9
|
-
function splitLink(opts) {
|
|
10
|
-
return (runtime) => {
|
|
11
|
-
const yes = asArray(opts.true).map((link) => link(runtime));
|
|
12
|
-
const no = asArray(opts.false).map((link) => link(runtime));
|
|
13
|
-
return (props) => {
|
|
14
|
-
return (0, __trpc_server_observable.observable)((observer) => {
|
|
15
|
-
const links = opts.condition(props.op) ? yes : no;
|
|
16
|
-
return require_createChain.createChain({
|
|
17
|
-
op: props.op,
|
|
18
|
-
links
|
|
19
|
-
}).subscribe(observer);
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
//#endregion
|
|
26
|
-
exports.splitLink = splitLink;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"splitLink.mjs","names":["value: TType | TType[]","opts: {\n condition: (op: Operation) => boolean;\n /**\n * The link to execute next if the test function returns `true`.\n */\n true: TRPCLink<TRouter> | TRPCLink<TRouter>[];\n /**\n * The link to execute next if the test function returns `false`.\n */\n false: TRPCLink<TRouter> | TRPCLink<TRouter>[];\n}"],"sources":["../../src/links/splitLink.ts"],"sourcesContent":["import { observable } from '@trpc/server/observable';\nimport type { AnyRouter } from '@trpc/server/unstable-core-do-not-import';\nimport { createChain } from './internals/createChain';\nimport type { Operation, TRPCLink } from './types';\n\nfunction asArray<TType>(value: TType | TType[]) {\n return Array.isArray(value) ? value : [value];\n}\nexport function splitLink<TRouter extends AnyRouter = AnyRouter>(opts: {\n condition: (op: Operation) => boolean;\n /**\n * The link to execute next if the test function returns `true`.\n */\n true: TRPCLink<TRouter> | TRPCLink<TRouter>[];\n /**\n * The link to execute next if the test function returns `false`.\n */\n false: TRPCLink<TRouter> | TRPCLink<TRouter>[];\n}): TRPCLink<TRouter> {\n return (runtime) => {\n const yes = asArray(opts.true).map((link) => link(runtime));\n const no = asArray(opts.false).map((link) => link(runtime));\n return (props) => {\n return observable((observer) => {\n const links = opts.condition(props.op) ? yes : no;\n return createChain({ op: props.op, links }).subscribe(observer);\n });\n };\n };\n}\n"],"mappings":";;;;AAKA,SAAS,QAAeA,OAAwB;AAC9C,QAAO,MAAM,QAAQ,MAAM,GAAG,QAAQ,CAAC,KAAM;AAC9C;AACD,SAAgB,UAAiDC,MAU3C;AACpB,QAAO,CAAC,YAAY;EAClB,MAAM,MAAM,QAAQ,KAAK,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC;EAC3D,MAAM,KAAK,QAAQ,KAAK,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC;AAC3D,SAAO,CAAC,UAAU;AAChB,UAAO,WAAW,CAAC,aAAa;IAC9B,MAAM,QAAQ,KAAK,UAAU,MAAM,GAAG,GAAG,MAAM;AAC/C,WAAO,YAAY;KAAE,IAAI,MAAM;KAAI;IAAO,EAAC,CAAC,UAAU,SAAS;GAChE,EAAC;EACH;CACF;AACF"}
|
package/dist/links/types.d.mts
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { TRPCConnectionState } from "./internals/subscriptions.mjs";
|
|
2
|
-
import { ResponseEsque } from "../internals/types.mjs";
|
|
3
|
-
import { TRPCClientError } from "../TRPCClientError.mjs";
|
|
4
|
-
import { isFormData, isNonJsonSerializable, isOctetType } from "./internals/contentTypes.mjs";
|
|
5
|
-
import { Observable, Observer } from "@trpc/server/observable";
|
|
6
|
-
import { InferrableClientTypes, Maybe, TRPCResultMessage, TRPCSuccessResponse } from "@trpc/server/unstable-core-do-not-import";
|
|
7
|
-
|
|
8
|
-
//#region src/links/types.d.ts
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* @internal
|
|
12
|
-
*/
|
|
13
|
-
interface OperationContext extends Record<string, unknown> {}
|
|
14
|
-
/**
|
|
15
|
-
* @internal
|
|
16
|
-
*/
|
|
17
|
-
type Operation<TInput = unknown> = {
|
|
18
|
-
id: number;
|
|
19
|
-
type: 'mutation' | 'query' | 'subscription';
|
|
20
|
-
input: TInput;
|
|
21
|
-
path: string;
|
|
22
|
-
context: OperationContext;
|
|
23
|
-
signal: Maybe<AbortSignal>;
|
|
24
|
-
};
|
|
25
|
-
interface HeadersInitEsque {
|
|
26
|
-
[Symbol.iterator](): IterableIterator<[string, string]>;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* @internal
|
|
30
|
-
*/
|
|
31
|
-
type HTTPHeaders = HeadersInitEsque | Record<string, string[] | string | undefined>;
|
|
32
|
-
/**
|
|
33
|
-
* The default `fetch` implementation has an overloaded signature. By convention this library
|
|
34
|
-
* only uses the overload taking a string and options object.
|
|
35
|
-
*/
|
|
36
|
-
type TRPCFetch = (url: string, options?: RequestInit) => Promise<ResponseEsque>;
|
|
37
|
-
interface TRPCClientRuntime {}
|
|
38
|
-
/**
|
|
39
|
-
* @internal
|
|
40
|
-
*/
|
|
41
|
-
interface OperationResultEnvelope<TOutput, TError> {
|
|
42
|
-
result: TRPCResultMessage<TOutput>['result'] | TRPCSuccessResponse<TOutput>['result'] | TRPCConnectionState<TError>;
|
|
43
|
-
context?: OperationContext;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* @internal
|
|
47
|
-
*/
|
|
48
|
-
type OperationResultObservable<TInferrable extends InferrableClientTypes, TOutput> = Observable<OperationResultEnvelope<TOutput, TRPCClientError<TInferrable>>, TRPCClientError<TInferrable>>;
|
|
49
|
-
/**
|
|
50
|
-
* @internal
|
|
51
|
-
*/
|
|
52
|
-
type OperationResultObserver<TInferrable extends InferrableClientTypes, TOutput> = Observer<OperationResultEnvelope<TOutput, TRPCClientError<TInferrable>>, TRPCClientError<TInferrable>>;
|
|
53
|
-
/**
|
|
54
|
-
* @internal
|
|
55
|
-
*/
|
|
56
|
-
type OperationLink<TInferrable extends InferrableClientTypes, TInput = unknown, TOutput = unknown> = (opts: {
|
|
57
|
-
op: Operation<TInput>;
|
|
58
|
-
next: (op: Operation<TInput>) => OperationResultObservable<TInferrable, TOutput>;
|
|
59
|
-
}) => OperationResultObservable<TInferrable, TOutput>;
|
|
60
|
-
/**
|
|
61
|
-
* @public
|
|
62
|
-
*/
|
|
63
|
-
type TRPCLink<TInferrable extends InferrableClientTypes> = (opts: TRPCClientRuntime) => OperationLink<TInferrable>;
|
|
64
|
-
//# sourceMappingURL=types.d.ts.map
|
|
65
|
-
|
|
66
|
-
//#endregion
|
|
67
|
-
export { HTTPHeaders, Operation, OperationContext, OperationLink, OperationResultEnvelope, OperationResultObservable, OperationResultObserver, TRPCClientRuntime, TRPCFetch, TRPCLink };
|
|
68
|
-
//# sourceMappingURL=types.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.mts","names":[],"sources":["../../src/links/types.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;AAoBA;AAKY,UALK,gBAAA,SAAyB,MAKrB,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA;;;;AAMX,KANE,SAMF,CAAA,SAAA,OAAA,CAAA,GAAA;EAAK,EAAA,EAAA,MAAA;EAGL,IAAA,EAAA,UAAA,GAAgB,OAAA,GAAA,cACH;EAMX,KAAA,EAbH,MAaG;EAAW,IAAA,EAAA,MAAA;EAAA,OACnB,EAZO,gBAYP;EAAgB,MAChB,EAZM,KAYN,CAZY,WAYZ,CAAA;AAAM,CAAA;AAMV,UAfU,gBAAA,CAeW;EAAA,CAAA,MAAA,CAAA,QAAA,GAAA,EAdE,gBAcF,CAAA,CAAA,MAAA,EAAA,MAAA,CAAA,CAAA;;;;AAGT;AAEK,KAbL,WAAA,GACR,gBAY8B,GAX9B,MAW8B,CAAA,MAAA,EAAA,MAAA,EAAA,GAAA,MAAA,GAAA,SAAA,CAAA;AAOlC;;;;AAG0B,KAfd,SAAA,GAec,CAAA,GAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAbd,WAac,EAAA,GAZrB,OAYqB,CAZb,aAYa,CAAA;AAApB,UAVW,iBAAA,CAUX;;;AAEsB;AAMhB,UAXK,uBAWoB,CAAA,OAAA,EAAA,MAAA,CAAA,CAAA;EAAA,MAAA,EAT/B,iBAS+B,CATb,OASa,CAAA,CAAA,QAAA,CAAA,GAR/B,mBAQ+B,CARX,OAQW,CAAA,CAAA,QAAA,CAAA,GAP/B,mBAO+B,CAPX,MAOW,CAAA;EAAA,OACf,CAAA,EAPV,gBAOU;;;;;AAIJ,KALN,yBAKM,CAAA,oBAJI,qBAIJ,EAAA,OAAA,CAAA,GAFd,UAEc,CADhB,uBACgB,CADQ,OACR,EADiB,eACjB,CADiC,WACjC,CAAA,CAAA,EAAhB,eAAgB,CAAA,WAAA,CAAA,CAAA;;;AAFJ;AAQF,KAAA,uBAAuB,CAAA,oBACb,qBADa,EAAA,OAAA,CAAA,GAG/B,QAH+B,CAIjC,uBAJiC,CAIT,OAJS,EAIA,eAJA,CAIgB,WAJhB,CAAA,CAAA,EAKjC,eALiC,CAKjB,WALiB,CAAA,CAAA;;;;AAIgB,KAOvC,aAPuC,CAAA,oBAQ7B,qBAR6B,EAAA,SAAA,OAAA,EAAA,UAAA,OAAA,CAAA,GAAA,CAAA,IAAA,EAAA;EAAW,EAAA,EAYxD,SAZ6B,CAYnB,MAZmB,CAAA;EAAe,IAAhD,EAAA,CAAA,EAAA,EAcM,SAdN,CAcgB,MAdhB,CAAA,EAAA,GAeK,yBAfL,CAe+B,WAf/B,EAe4C,OAf5C,CAAA;CAAuB,EAAA,GAgBnB,yBAfY,CAec,WAfd,EAe2B,OAf3B,CAAA;;;AAFN;AAQA,KAcA,QAda,CAAA,oBAcgB,qBAdhB,CAAA,GAAA,CAAA,IAAA,EAejB,iBAfiB,EAAA,GAgBpB,aAhBoB,CAgBN,WAhBM,CAAA"}
|
package/dist/links/types.d.ts
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { TRPCConnectionState } from "./internals/subscriptions.js";
|
|
2
|
-
import { ResponseEsque } from "../internals/types.js";
|
|
3
|
-
import { TRPCClientError } from "../TRPCClientError.js";
|
|
4
|
-
import { isFormData, isNonJsonSerializable, isOctetType } from "./internals/contentTypes.js";
|
|
5
|
-
import { InferrableClientTypes, Maybe, TRPCResultMessage, TRPCSuccessResponse } from "@trpc/server/unstable-core-do-not-import";
|
|
6
|
-
import { Observable, Observer } from "@trpc/server/observable";
|
|
7
|
-
|
|
8
|
-
//#region src/links/types.d.ts
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* @internal
|
|
12
|
-
*/
|
|
13
|
-
interface OperationContext extends Record<string, unknown> {}
|
|
14
|
-
/**
|
|
15
|
-
* @internal
|
|
16
|
-
*/
|
|
17
|
-
type Operation<TInput = unknown> = {
|
|
18
|
-
id: number;
|
|
19
|
-
type: 'mutation' | 'query' | 'subscription';
|
|
20
|
-
input: TInput;
|
|
21
|
-
path: string;
|
|
22
|
-
context: OperationContext;
|
|
23
|
-
signal: Maybe<AbortSignal>;
|
|
24
|
-
};
|
|
25
|
-
interface HeadersInitEsque {
|
|
26
|
-
[Symbol.iterator](): IterableIterator<[string, string]>;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* @internal
|
|
30
|
-
*/
|
|
31
|
-
type HTTPHeaders = HeadersInitEsque | Record<string, string[] | string | undefined>;
|
|
32
|
-
/**
|
|
33
|
-
* The default `fetch` implementation has an overloaded signature. By convention this library
|
|
34
|
-
* only uses the overload taking a string and options object.
|
|
35
|
-
*/
|
|
36
|
-
type TRPCFetch = (url: string, options?: RequestInit) => Promise<ResponseEsque>;
|
|
37
|
-
interface TRPCClientRuntime {}
|
|
38
|
-
/**
|
|
39
|
-
* @internal
|
|
40
|
-
*/
|
|
41
|
-
interface OperationResultEnvelope<TOutput, TError> {
|
|
42
|
-
result: TRPCResultMessage<TOutput>['result'] | TRPCSuccessResponse<TOutput>['result'] | TRPCConnectionState<TError>;
|
|
43
|
-
context?: OperationContext;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* @internal
|
|
47
|
-
*/
|
|
48
|
-
type OperationResultObservable<TInferrable extends InferrableClientTypes, TOutput> = Observable<OperationResultEnvelope<TOutput, TRPCClientError<TInferrable>>, TRPCClientError<TInferrable>>;
|
|
49
|
-
/**
|
|
50
|
-
* @internal
|
|
51
|
-
*/
|
|
52
|
-
type OperationResultObserver<TInferrable extends InferrableClientTypes, TOutput> = Observer<OperationResultEnvelope<TOutput, TRPCClientError<TInferrable>>, TRPCClientError<TInferrable>>;
|
|
53
|
-
/**
|
|
54
|
-
* @internal
|
|
55
|
-
*/
|
|
56
|
-
type OperationLink<TInferrable extends InferrableClientTypes, TInput = unknown, TOutput = unknown> = (opts: {
|
|
57
|
-
op: Operation<TInput>;
|
|
58
|
-
next: (op: Operation<TInput>) => OperationResultObservable<TInferrable, TOutput>;
|
|
59
|
-
}) => OperationResultObservable<TInferrable, TOutput>;
|
|
60
|
-
/**
|
|
61
|
-
* @public
|
|
62
|
-
*/
|
|
63
|
-
type TRPCLink<TInferrable extends InferrableClientTypes> = (opts: TRPCClientRuntime) => OperationLink<TInferrable>;
|
|
64
|
-
//# sourceMappingURL=types.d.ts.map
|
|
65
|
-
|
|
66
|
-
//#endregion
|
|
67
|
-
export { HTTPHeaders, Operation, OperationContext, OperationLink, OperationResultEnvelope, OperationResultObservable, OperationResultObserver, TRPCClientRuntime, TRPCFetch, TRPCLink };
|
|
68
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","names":[],"sources":["../../src/links/types.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;AAoBA;AAKY,UALK,gBAAA,SAAyB,MAKrB,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA;;;;AAMX,KANE,SAMF,CAAA,SAAA,OAAA,CAAA,GAAA;EAAK,EAAA,EAAA,MAAA;EAGL,IAAA,EAAA,UAAA,GAAgB,OAAA,GAAA,cACH;EAMX,KAAA,EAbH,MAaG;EAAW,IAAA,EAAA,MAAA;EAAA,OACnB,EAZO,gBAYP;EAAgB,MAChB,EAZM,KAYN,CAZY,WAYZ,CAAA;AAAM,CAAA;AAMV,UAfU,gBAAA,CAeW;EAAA,CAAA,MAAA,CAAA,QAAA,GAAA,EAdE,gBAcF,CAAA,CAAA,MAAA,EAAA,MAAA,CAAA,CAAA;;;;AAGT;AAEK,KAbL,WAAA,GACR,gBAY8B,GAX9B,MAW8B,CAAA,MAAA,EAAA,MAAA,EAAA,GAAA,MAAA,GAAA,SAAA,CAAA;AAOlC;;;;AAG0B,KAfd,SAAA,GAec,CAAA,GAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAbd,WAac,EAAA,GAZrB,OAYqB,CAZb,aAYa,CAAA;AAApB,UAVW,iBAAA,CAUX;;;AAEsB;AAMhB,UAXK,uBAWoB,CAAA,OAAA,EAAA,MAAA,CAAA,CAAA;EAAA,MAAA,EAT/B,iBAS+B,CATb,OASa,CAAA,CAAA,QAAA,CAAA,GAR/B,mBAQ+B,CARX,OAQW,CAAA,CAAA,QAAA,CAAA,GAP/B,mBAO+B,CAPX,MAOW,CAAA;EAAA,OACf,CAAA,EAPV,gBAOU;;;;;AAIJ,KALN,yBAKM,CAAA,oBAJI,qBAIJ,EAAA,OAAA,CAAA,GAFd,UAEc,CADhB,uBACgB,CADQ,OACR,EADiB,eACjB,CADiC,WACjC,CAAA,CAAA,EAAhB,eAAgB,CAAA,WAAA,CAAA,CAAA;;;AAFJ;AAQF,KAAA,uBAAuB,CAAA,oBACb,qBADa,EAAA,OAAA,CAAA,GAG/B,QAH+B,CAIjC,uBAJiC,CAIT,OAJS,EAIA,eAJA,CAIgB,WAJhB,CAAA,CAAA,EAKjC,eALiC,CAKjB,WALiB,CAAA,CAAA;;;;AAIgB,KAOvC,aAPuC,CAAA,oBAQ7B,qBAR6B,EAAA,SAAA,OAAA,EAAA,UAAA,OAAA,CAAA,GAAA,CAAA,IAAA,EAAA;EAAW,EAAA,EAYxD,SAZ6B,CAYnB,MAZmB,CAAA;EAAe,IAAhD,EAAA,CAAA,EAAA,EAcM,SAdN,CAcgB,MAdhB,CAAA,EAAA,GAeK,yBAfL,CAe+B,WAf/B,EAe4C,OAf5C,CAAA;CAAuB,EAAA,GAgBnB,yBAfY,CAec,WAfd,EAe2B,OAf3B,CAAA;;;AAFN;AAQA,KAcA,QAda,CAAA,oBAcgB,qBAdhB,CAAA,GAAA,CAAA,IAAA,EAejB,iBAfiB,EAAA,GAgBpB,aAhBoB,CAgBN,WAhBM,CAAA"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { WebSocketClientOptions } from "./wsClient/options.mjs";
|
|
2
|
-
import { WsClient } from "./wsClient/wsClient.mjs";
|
|
3
|
-
|
|
4
|
-
//#region src/links/wsLink/createWsClient.d.ts
|
|
5
|
-
declare function createWSClient(opts: WebSocketClientOptions): WsClient;
|
|
6
|
-
type TRPCWebSocketClient = ReturnType<typeof createWSClient>;
|
|
7
|
-
//#endregion
|
|
8
|
-
export { TRPCWebSocketClient, createWSClient };
|
|
9
|
-
//# sourceMappingURL=createWsClient.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createWsClient.d.mts","names":[],"sources":["../../../src/links/wsLink/createWsClient.ts"],"sourcesContent":[],"mappings":";;;;iBAGgB,cAAA,OAAqB,yBAAsB;KAI/C,mBAAA,GAAsB,kBAAkB"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { WebSocketClientOptions } from "./wsClient/options.js";
|
|
2
|
-
import { WsClient } from "./wsClient/wsClient.js";
|
|
3
|
-
|
|
4
|
-
//#region src/links/wsLink/createWsClient.d.ts
|
|
5
|
-
declare function createWSClient(opts: WebSocketClientOptions): WsClient;
|
|
6
|
-
type TRPCWebSocketClient = ReturnType<typeof createWSClient>;
|
|
7
|
-
//#endregion
|
|
8
|
-
export { TRPCWebSocketClient, createWSClient };
|
|
9
|
-
//# sourceMappingURL=createWsClient.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createWsClient.d.ts","names":[],"sources":["../../../src/links/wsLink/createWsClient.ts"],"sourcesContent":[],"mappings":";;;;iBAGgB,cAAA,OAAqB,yBAAsB;KAI/C,mBAAA,GAAsB,kBAAkB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createWsClient.mjs","names":["opts: WebSocketClientOptions"],"sources":["../../../src/links/wsLink/createWsClient.ts"],"sourcesContent":["import type { WebSocketClientOptions } from './wsClient/options';\nimport { WsClient } from './wsClient/wsClient';\n\nexport function createWSClient(opts: WebSocketClientOptions) {\n return new WsClient(opts);\n}\n\nexport type TRPCWebSocketClient = ReturnType<typeof createWSClient>;\n\nexport { WebSocketClientOptions };\n"],"mappings":";;;AAGA,SAAgB,eAAeA,MAA8B;AAC3D,QAAO,IAAI,SAAS;AACrB"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { UrlOptionsWithConnectionParams } from "../../internals/urlWithConnectionParams.mjs";
|
|
2
|
-
|
|
3
|
-
//#region src/links/wsLink/wsClient/options.d.ts
|
|
4
|
-
interface WebSocketClientOptions extends UrlOptionsWithConnectionParams {
|
|
5
|
-
/**
|
|
6
|
-
* Ponyfill which WebSocket implementation to use
|
|
7
|
-
*/
|
|
8
|
-
WebSocket?: typeof WebSocket;
|
|
9
|
-
/**
|
|
10
|
-
* The number of milliseconds before a reconnect is attempted.
|
|
11
|
-
* @default {@link exponentialBackoff}
|
|
12
|
-
*/
|
|
13
|
-
retryDelayMs?: (attemptIndex: number) => number;
|
|
14
|
-
/**
|
|
15
|
-
* Triggered when a WebSocket connection is established
|
|
16
|
-
*/
|
|
17
|
-
onOpen?: () => void;
|
|
18
|
-
/**
|
|
19
|
-
* Triggered when a WebSocket connection encounters an error
|
|
20
|
-
*/
|
|
21
|
-
onError?: (evt?: Event) => void;
|
|
22
|
-
/**
|
|
23
|
-
* Triggered when a WebSocket connection is closed
|
|
24
|
-
*/
|
|
25
|
-
onClose?: (cause?: {
|
|
26
|
-
code?: number;
|
|
27
|
-
}) => void;
|
|
28
|
-
/**
|
|
29
|
-
* Lazy mode will close the WebSocket automatically after a period of inactivity (no messages sent or received and no pending requests)
|
|
30
|
-
*/
|
|
31
|
-
lazy?: {
|
|
32
|
-
/**
|
|
33
|
-
* Enable lazy mode
|
|
34
|
-
* @default false
|
|
35
|
-
*/
|
|
36
|
-
enabled: boolean;
|
|
37
|
-
/**
|
|
38
|
-
* Close the WebSocket after this many milliseconds
|
|
39
|
-
* @default 0
|
|
40
|
-
*/
|
|
41
|
-
closeMs: number;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Send ping messages to the server and kill the connection if no pong message is returned
|
|
45
|
-
*/
|
|
46
|
-
keepAlive?: {
|
|
47
|
-
/**
|
|
48
|
-
* @default false
|
|
49
|
-
*/
|
|
50
|
-
enabled: boolean;
|
|
51
|
-
/**
|
|
52
|
-
* Send a ping message every this many milliseconds
|
|
53
|
-
* @default 5_000
|
|
54
|
-
*/
|
|
55
|
-
intervalMs?: number;
|
|
56
|
-
/**
|
|
57
|
-
* Close the WebSocket after this many milliseconds if the server does not respond
|
|
58
|
-
* @default 1_000
|
|
59
|
-
*/
|
|
60
|
-
pongTimeoutMs?: number;
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Default options for lazy WebSocket connections.
|
|
65
|
-
* Determines whether the connection should be established lazily and defines the delay before closure.
|
|
66
|
-
*/
|
|
67
|
-
//#endregion
|
|
68
|
-
export { WebSocketClientOptions };
|
|
69
|
-
//# sourceMappingURL=options.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.mts","names":[],"sources":["../../../../src/links/wsLink/wsClient/options.ts"],"sourcesContent":[],"mappings":";;;UAEiB,sBAAA,SAA+B;;AAAhD;;EAAwC,SAInB,CAAA,EAAA,OAAA,SAAA;EAAS;;AAJgD;;;;;;;;;;mBAiB3D"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { UrlOptionsWithConnectionParams } from "../../internals/urlWithConnectionParams.js";
|
|
2
|
-
|
|
3
|
-
//#region src/links/wsLink/wsClient/options.d.ts
|
|
4
|
-
interface WebSocketClientOptions extends UrlOptionsWithConnectionParams {
|
|
5
|
-
/**
|
|
6
|
-
* Ponyfill which WebSocket implementation to use
|
|
7
|
-
*/
|
|
8
|
-
WebSocket?: typeof WebSocket;
|
|
9
|
-
/**
|
|
10
|
-
* The number of milliseconds before a reconnect is attempted.
|
|
11
|
-
* @default {@link exponentialBackoff}
|
|
12
|
-
*/
|
|
13
|
-
retryDelayMs?: (attemptIndex: number) => number;
|
|
14
|
-
/**
|
|
15
|
-
* Triggered when a WebSocket connection is established
|
|
16
|
-
*/
|
|
17
|
-
onOpen?: () => void;
|
|
18
|
-
/**
|
|
19
|
-
* Triggered when a WebSocket connection encounters an error
|
|
20
|
-
*/
|
|
21
|
-
onError?: (evt?: Event) => void;
|
|
22
|
-
/**
|
|
23
|
-
* Triggered when a WebSocket connection is closed
|
|
24
|
-
*/
|
|
25
|
-
onClose?: (cause?: {
|
|
26
|
-
code?: number;
|
|
27
|
-
}) => void;
|
|
28
|
-
/**
|
|
29
|
-
* Lazy mode will close the WebSocket automatically after a period of inactivity (no messages sent or received and no pending requests)
|
|
30
|
-
*/
|
|
31
|
-
lazy?: {
|
|
32
|
-
/**
|
|
33
|
-
* Enable lazy mode
|
|
34
|
-
* @default false
|
|
35
|
-
*/
|
|
36
|
-
enabled: boolean;
|
|
37
|
-
/**
|
|
38
|
-
* Close the WebSocket after this many milliseconds
|
|
39
|
-
* @default 0
|
|
40
|
-
*/
|
|
41
|
-
closeMs: number;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Send ping messages to the server and kill the connection if no pong message is returned
|
|
45
|
-
*/
|
|
46
|
-
keepAlive?: {
|
|
47
|
-
/**
|
|
48
|
-
* @default false
|
|
49
|
-
*/
|
|
50
|
-
enabled: boolean;
|
|
51
|
-
/**
|
|
52
|
-
* Send a ping message every this many milliseconds
|
|
53
|
-
* @default 5_000
|
|
54
|
-
*/
|
|
55
|
-
intervalMs?: number;
|
|
56
|
-
/**
|
|
57
|
-
* Close the WebSocket after this many milliseconds if the server does not respond
|
|
58
|
-
* @default 1_000
|
|
59
|
-
*/
|
|
60
|
-
pongTimeoutMs?: number;
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Default options for lazy WebSocket connections.
|
|
65
|
-
* Determines whether the connection should be established lazily and defines the delay before closure.
|
|
66
|
-
*/
|
|
67
|
-
//#endregion
|
|
68
|
-
export { WebSocketClientOptions };
|
|
69
|
-
//# sourceMappingURL=options.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","names":[],"sources":["../../../../src/links/wsLink/wsClient/options.ts"],"sourcesContent":[],"mappings":";;;UAEiB,sBAAA,SAA+B;;AAAhD;;EAAwC,SAInB,CAAA,EAAA,OAAA,SAAA;EAAS;;AAJgD;;;;;;;;;;mBAiB3D"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
//#region src/links/wsLink/wsClient/options.ts
|
|
3
|
-
const lazyDefaults = {
|
|
4
|
-
enabled: false,
|
|
5
|
-
closeMs: 0
|
|
6
|
-
};
|
|
7
|
-
const keepAliveDefaults = {
|
|
8
|
-
enabled: false,
|
|
9
|
-
pongTimeoutMs: 1e3,
|
|
10
|
-
intervalMs: 5e3
|
|
11
|
-
};
|
|
12
|
-
/**
|
|
13
|
-
* Calculates a delay for exponential backoff based on the retry attempt index.
|
|
14
|
-
* The delay starts at 0 for the first attempt and doubles for each subsequent attempt,
|
|
15
|
-
* capped at 30 seconds.
|
|
16
|
-
*/
|
|
17
|
-
const exponentialBackoff = (attemptIndex) => {
|
|
18
|
-
return attemptIndex === 0 ? 0 : Math.min(1e3 * 2 ** attemptIndex, 3e4);
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
//#endregion
|
|
22
|
-
exports.exponentialBackoff = exponentialBackoff;
|
|
23
|
-
exports.keepAliveDefaults = keepAliveDefaults;
|
|
24
|
-
exports.lazyDefaults = lazyDefaults;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
//#region src/links/wsLink/wsClient/options.ts
|
|
2
|
-
const lazyDefaults = {
|
|
3
|
-
enabled: false,
|
|
4
|
-
closeMs: 0
|
|
5
|
-
};
|
|
6
|
-
const keepAliveDefaults = {
|
|
7
|
-
enabled: false,
|
|
8
|
-
pongTimeoutMs: 1e3,
|
|
9
|
-
intervalMs: 5e3
|
|
10
|
-
};
|
|
11
|
-
/**
|
|
12
|
-
* Calculates a delay for exponential backoff based on the retry attempt index.
|
|
13
|
-
* The delay starts at 0 for the first attempt and doubles for each subsequent attempt,
|
|
14
|
-
* capped at 30 seconds.
|
|
15
|
-
*/
|
|
16
|
-
const exponentialBackoff = (attemptIndex) => {
|
|
17
|
-
return attemptIndex === 0 ? 0 : Math.min(1e3 * 2 ** attemptIndex, 3e4);
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
//#endregion
|
|
21
|
-
export { exponentialBackoff, keepAliveDefaults, lazyDefaults };
|
|
22
|
-
//# sourceMappingURL=options.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"options.mjs","names":["lazyDefaults: LazyOptions","keepAliveDefaults: KeepAliveOptions","attemptIndex: number"],"sources":["../../../../src/links/wsLink/wsClient/options.ts"],"sourcesContent":["import type { UrlOptionsWithConnectionParams } from '../../internals/urlWithConnectionParams';\n\nexport interface WebSocketClientOptions extends UrlOptionsWithConnectionParams {\n /**\n * Ponyfill which WebSocket implementation to use\n */\n WebSocket?: typeof WebSocket;\n /**\n * The number of milliseconds before a reconnect is attempted.\n * @default {@link exponentialBackoff}\n */\n retryDelayMs?: (attemptIndex: number) => number;\n /**\n * Triggered when a WebSocket connection is established\n */\n onOpen?: () => void;\n /**\n * Triggered when a WebSocket connection encounters an error\n */\n onError?: (evt?: Event) => void;\n /**\n * Triggered when a WebSocket connection is closed\n */\n onClose?: (cause?: { code?: number }) => void;\n /**\n * Lazy mode will close the WebSocket automatically after a period of inactivity (no messages sent or received and no pending requests)\n */\n lazy?: {\n /**\n * Enable lazy mode\n * @default false\n */\n enabled: boolean;\n /**\n * Close the WebSocket after this many milliseconds\n * @default 0\n */\n closeMs: number;\n };\n /**\n * Send ping messages to the server and kill the connection if no pong message is returned\n */\n keepAlive?: {\n /**\n * @default false\n */\n enabled: boolean;\n /**\n * Send a ping message every this many milliseconds\n * @default 5_000\n */\n intervalMs?: number;\n /**\n * Close the WebSocket after this many milliseconds if the server does not respond\n * @default 1_000\n */\n pongTimeoutMs?: number;\n };\n}\n\n/**\n * Default options for lazy WebSocket connections.\n * Determines whether the connection should be established lazily and defines the delay before closure.\n */\nexport type LazyOptions = Required<NonNullable<WebSocketClientOptions['lazy']>>;\nexport const lazyDefaults: LazyOptions = {\n enabled: false,\n closeMs: 0,\n};\n\n/**\n * Default options for the WebSocket keep-alive mechanism.\n * Configures whether keep-alive is enabled and specifies the timeout and interval for ping-pong messages.\n */\nexport type KeepAliveOptions = Required<\n NonNullable<WebSocketClientOptions['keepAlive']>\n>;\nexport const keepAliveDefaults: KeepAliveOptions = {\n enabled: false,\n pongTimeoutMs: 1_000,\n intervalMs: 5_000,\n};\n\n/**\n * Calculates a delay for exponential backoff based on the retry attempt index.\n * The delay starts at 0 for the first attempt and doubles for each subsequent attempt,\n * capped at 30 seconds.\n */\nexport const exponentialBackoff = (attemptIndex: number) => {\n return attemptIndex === 0 ? 0 : Math.min(1000 * 2 ** attemptIndex, 30000);\n};\n"],"mappings":";AAiEA,MAAaA,eAA4B;CACvC,SAAS;CACT,SAAS;AACV;AASD,MAAaC,oBAAsC;CACjD,SAAS;CACT,eAAe;CACf,YAAY;AACb;;;;;;AAOD,MAAa,qBAAqB,CAACC,iBAAyB;AAC1D,QAAO,iBAAiB,IAAI,IAAI,KAAK,IAAI,MAAO,KAAK,cAAc,IAAM;AAC1E"}
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
const require_utils = require('./utils.js');
|
|
2
|
-
|
|
3
|
-
//#region src/links/wsLink/wsClient/requestManager.ts
|
|
4
|
-
/**
|
|
5
|
-
* Manages WebSocket requests, tracking their lifecycle and providing utility methods
|
|
6
|
-
* for handling outgoing and pending requests.
|
|
7
|
-
*
|
|
8
|
-
* - **Outgoing requests**: Requests that are queued and waiting to be sent.
|
|
9
|
-
* - **Pending requests**: Requests that have been sent and are in flight awaiting a response.
|
|
10
|
-
* For subscriptions, multiple responses may be received until the subscription is closed.
|
|
11
|
-
*/
|
|
12
|
-
var RequestManager = class {
|
|
13
|
-
/**
|
|
14
|
-
* Stores requests that are outgoing, meaning they are registered but not yet sent over the WebSocket.
|
|
15
|
-
*/
|
|
16
|
-
outgoingRequests = new Array();
|
|
17
|
-
/**
|
|
18
|
-
* Stores requests that are pending (in flight), meaning they have been sent over the WebSocket
|
|
19
|
-
* and are awaiting responses. For subscriptions, this includes requests
|
|
20
|
-
* that may receive multiple responses.
|
|
21
|
-
*/
|
|
22
|
-
pendingRequests = {};
|
|
23
|
-
/**
|
|
24
|
-
* Registers a new request by adding it to the outgoing queue and setting up
|
|
25
|
-
* callbacks for lifecycle events such as completion or error.
|
|
26
|
-
*
|
|
27
|
-
* @param message - The outgoing message to be sent.
|
|
28
|
-
* @param callbacks - Callback functions to observe the request's state.
|
|
29
|
-
* @returns A cleanup function to manually remove the request.
|
|
30
|
-
*/
|
|
31
|
-
register(message, callbacks) {
|
|
32
|
-
const { promise: end, resolve } = require_utils.withResolvers();
|
|
33
|
-
this.outgoingRequests.push({
|
|
34
|
-
id: String(message.id),
|
|
35
|
-
message,
|
|
36
|
-
end,
|
|
37
|
-
callbacks: {
|
|
38
|
-
next: callbacks.next,
|
|
39
|
-
complete: () => {
|
|
40
|
-
callbacks.complete();
|
|
41
|
-
resolve();
|
|
42
|
-
},
|
|
43
|
-
error: (e) => {
|
|
44
|
-
callbacks.error(e);
|
|
45
|
-
resolve();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
return () => {
|
|
50
|
-
this.delete(message.id);
|
|
51
|
-
callbacks.complete();
|
|
52
|
-
resolve();
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Deletes a request from both the outgoing and pending collections, if it exists.
|
|
57
|
-
*/
|
|
58
|
-
delete(messageId) {
|
|
59
|
-
if (messageId === null) return;
|
|
60
|
-
this.outgoingRequests = this.outgoingRequests.filter(({ id }) => id !== String(messageId));
|
|
61
|
-
delete this.pendingRequests[String(messageId)];
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Moves all outgoing requests to the pending state and clears the outgoing queue.
|
|
65
|
-
*
|
|
66
|
-
* The caller is expected to handle the actual sending of the requests
|
|
67
|
-
* (e.g., sending them over the network) after this method is called.
|
|
68
|
-
*
|
|
69
|
-
* @returns The list of requests that were transitioned to the pending state.
|
|
70
|
-
*/
|
|
71
|
-
flush() {
|
|
72
|
-
const requests = this.outgoingRequests;
|
|
73
|
-
this.outgoingRequests = [];
|
|
74
|
-
for (const request of requests) this.pendingRequests[request.id] = request;
|
|
75
|
-
return requests;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Retrieves all currently pending requests, which are in flight awaiting responses
|
|
79
|
-
* or handling ongoing subscriptions.
|
|
80
|
-
*/
|
|
81
|
-
getPendingRequests() {
|
|
82
|
-
return Object.values(this.pendingRequests);
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Retrieves a specific pending request by its message ID.
|
|
86
|
-
*/
|
|
87
|
-
getPendingRequest(messageId) {
|
|
88
|
-
if (messageId === null) return null;
|
|
89
|
-
return this.pendingRequests[String(messageId)];
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Retrieves all outgoing requests, which are waiting to be sent.
|
|
93
|
-
*/
|
|
94
|
-
getOutgoingRequests() {
|
|
95
|
-
return this.outgoingRequests;
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Retrieves all requests, both outgoing and pending, with their respective states.
|
|
99
|
-
*
|
|
100
|
-
* @returns An array of all requests with their state ("outgoing" or "pending").
|
|
101
|
-
*/
|
|
102
|
-
getRequests() {
|
|
103
|
-
return [...this.getOutgoingRequests().map((request) => ({
|
|
104
|
-
state: "outgoing",
|
|
105
|
-
message: request.message,
|
|
106
|
-
end: request.end,
|
|
107
|
-
callbacks: request.callbacks
|
|
108
|
-
})), ...this.getPendingRequests().map((request) => ({
|
|
109
|
-
state: "pending",
|
|
110
|
-
message: request.message,
|
|
111
|
-
end: request.end,
|
|
112
|
-
callbacks: request.callbacks
|
|
113
|
-
}))];
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Checks if there are any pending requests, including ongoing subscriptions.
|
|
117
|
-
*/
|
|
118
|
-
hasPendingRequests() {
|
|
119
|
-
return this.getPendingRequests().length > 0;
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Checks if there are any pending subscriptions
|
|
123
|
-
*/
|
|
124
|
-
hasPendingSubscriptions() {
|
|
125
|
-
return this.getPendingRequests().some((request) => request.message.method === "subscription");
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Checks if there are any outgoing requests waiting to be sent.
|
|
129
|
-
*/
|
|
130
|
-
hasOutgoingRequests() {
|
|
131
|
-
return this.outgoingRequests.length > 0;
|
|
132
|
-
}
|
|
133
|
-
};
|
|
134
|
-
|
|
135
|
-
//#endregion
|
|
136
|
-
exports.RequestManager = RequestManager;
|