@trpc/server 11.5.2-canary.6 → 11.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/adapters/aws-lambda/index.d.ts +1 -0
  2. package/adapters/aws-lambda/index.js +1 -0
  3. package/adapters/express/index.d.ts +1 -0
  4. package/adapters/express/index.js +1 -0
  5. package/adapters/fastify/index.d.ts +1 -0
  6. package/adapters/fastify/index.js +1 -0
  7. package/adapters/fetch/index.d.ts +1 -0
  8. package/adapters/fetch/index.js +1 -0
  9. package/adapters/next/index.d.ts +1 -0
  10. package/adapters/next/index.js +1 -0
  11. package/adapters/next-app-dir/index.d.ts +1 -0
  12. package/adapters/next-app-dir/index.js +1 -0
  13. package/adapters/node-http/content-type/form-data/index.d.ts +1 -0
  14. package/adapters/node-http/content-type/form-data/index.js +1 -0
  15. package/adapters/node-http/content-type/json/index.d.ts +1 -0
  16. package/adapters/node-http/content-type/json/index.js +1 -0
  17. package/adapters/node-http/index.d.ts +1 -0
  18. package/adapters/node-http/index.js +1 -0
  19. package/adapters/standalone/index.d.ts +1 -0
  20. package/adapters/standalone/index.js +1 -0
  21. package/adapters/ws/index.d.ts +1 -0
  22. package/adapters/ws/index.js +1 -0
  23. package/dist/adapters/aws-lambda/index.cjs +4 -4
  24. package/dist/adapters/aws-lambda/index.d.cts +1 -1
  25. package/dist/adapters/aws-lambda/index.d.mts +1 -1
  26. package/dist/adapters/aws-lambda/index.mjs +4 -4
  27. package/dist/adapters/express.cjs +7 -7
  28. package/dist/adapters/express.d.cts +2 -2
  29. package/dist/adapters/express.d.mts +2 -2
  30. package/dist/adapters/express.mjs +7 -7
  31. package/dist/adapters/fastify/index.cjs +8 -8
  32. package/dist/adapters/fastify/index.d.cts +2 -2
  33. package/dist/adapters/fastify/index.d.mts +2 -2
  34. package/dist/adapters/fastify/index.mjs +8 -8
  35. package/dist/adapters/fetch/index.cjs +4 -4
  36. package/dist/adapters/fetch/index.d.cts +1 -1
  37. package/dist/adapters/fetch/index.d.mts +1 -1
  38. package/dist/adapters/fetch/index.mjs +4 -4
  39. package/dist/adapters/next-app-dir.cjs +6 -6
  40. package/dist/adapters/next-app-dir.d.cts +1 -1
  41. package/dist/adapters/next-app-dir.d.mts +1 -1
  42. package/dist/adapters/next-app-dir.mjs +6 -6
  43. package/dist/adapters/next.cjs +7 -7
  44. package/dist/adapters/next.d.cts +2 -2
  45. package/dist/adapters/next.d.mts +2 -2
  46. package/dist/adapters/next.mjs +7 -7
  47. package/dist/adapters/node-http/index.cjs +7 -7
  48. package/dist/adapters/node-http/index.d.cts +2 -2
  49. package/dist/adapters/node-http/index.d.mts +2 -2
  50. package/dist/adapters/node-http/index.mjs +7 -7
  51. package/dist/adapters/standalone.cjs +7 -7
  52. package/dist/adapters/standalone.d.cts +2 -2
  53. package/dist/adapters/standalone.d.mts +2 -2
  54. package/dist/adapters/standalone.mjs +7 -7
  55. package/dist/adapters/ws.cjs +8 -8
  56. package/dist/adapters/ws.d.cts +2 -2
  57. package/dist/adapters/ws.d.mts +2 -2
  58. package/dist/adapters/ws.mjs +8 -8
  59. package/dist/{getErrorShape-Uhlrl4Bk.mjs → getErrorShape-BH60iMC2.mjs} +4 -2
  60. package/dist/{getErrorShape-Uhlrl4Bk.mjs.map → getErrorShape-BH60iMC2.mjs.map} +1 -1
  61. package/dist/{getErrorShape-DKiEF6Zc.cjs → getErrorShape-BRalpqpM.cjs} +3 -1
  62. package/dist/http.cjs +4 -4
  63. package/dist/http.d.cts +1 -1
  64. package/dist/http.d.mts +1 -1
  65. package/dist/http.mjs +4 -4
  66. package/dist/index.cjs +4 -4
  67. package/dist/{index.d-BX0zNedI.d.cts → index.d-AnN9xWqA.d.mts} +2 -2
  68. package/dist/{index.d-B6WM6kGG.d.mts.map → index.d-AnN9xWqA.d.mts.map} +1 -1
  69. package/dist/{index.d-B6WM6kGG.d.mts → index.d-jwxZxHCb.d.cts} +2 -2
  70. package/dist/{index.d-BX0zNedI.d.cts.map → index.d-jwxZxHCb.d.cts.map} +1 -1
  71. package/dist/index.d.cts +1 -1
  72. package/dist/index.d.mts +1 -1
  73. package/dist/index.mjs +4 -4
  74. package/dist/{initTRPC-Bt3JfYTm.mjs → initTRPC-CB9uBez5.mjs} +4 -4
  75. package/dist/{initTRPC-Bt3JfYTm.mjs.map → initTRPC-CB9uBez5.mjs.map} +1 -1
  76. package/dist/{initTRPC-DPn1YifP.cjs → initTRPC-D-fJXPDf.cjs} +3 -3
  77. package/dist/{node-http-BO3KHITF.mjs → node-http-8dtdvMrE.mjs} +5 -5
  78. package/dist/{node-http-BO3KHITF.mjs.map → node-http-8dtdvMrE.mjs.map} +1 -1
  79. package/dist/{node-http-BZ_yn7LC.cjs → node-http-D37fGQh1.cjs} +4 -4
  80. package/dist/{parseTRPCMessage-ByIHyFRz.mjs → parseTRPCMessage-BlZeZ60t.mjs} +2 -2
  81. package/dist/{parseTRPCMessage-ByIHyFRz.mjs.map → parseTRPCMessage-BlZeZ60t.mjs.map} +1 -1
  82. package/dist/{parseTRPCMessage-snNQop7N.cjs → parseTRPCMessage-Cdw5Sfhh.cjs} +1 -1
  83. package/dist/{resolveResponse-BIvy2tOI.mjs → resolveResponse-DngSgha6.mjs} +8 -9
  84. package/dist/resolveResponse-DngSgha6.mjs.map +1 -0
  85. package/dist/{resolveResponse-p3dRsVlS.cjs → resolveResponse-OV7qVwiT.cjs} +7 -8
  86. package/dist/rpc.cjs +2 -2
  87. package/dist/rpc.d.cts +1 -1
  88. package/dist/rpc.d.mts +1 -1
  89. package/dist/rpc.mjs +2 -2
  90. package/dist/shared.cjs +2 -2
  91. package/dist/shared.d.cts +1 -1
  92. package/dist/shared.d.mts +1 -1
  93. package/dist/shared.mjs +2 -2
  94. package/dist/{tracked-BOPN0_Sr.mjs → tracked-Blz8XOf1.mjs} +3 -3
  95. package/dist/{tracked-BOPN0_Sr.mjs.map → tracked-Blz8XOf1.mjs.map} +1 -1
  96. package/dist/{tracked-DLBmdanL.cjs → tracked-DkwwsHVk.cjs} +2 -2
  97. package/dist/unstable-core-do-not-import.cjs +6 -6
  98. package/dist/{unstable-core-do-not-import.d-x-roAJpB.d.mts → unstable-core-do-not-import.d-BqIRM5n2.d.mts} +4 -37
  99. package/dist/unstable-core-do-not-import.d-BqIRM5n2.d.mts.map +1 -0
  100. package/dist/{unstable-core-do-not-import.d-C8vB_hCN.d.cts → unstable-core-do-not-import.d-DKRHq4OJ.d.cts} +4 -37
  101. package/dist/unstable-core-do-not-import.d-DKRHq4OJ.d.cts.map +1 -0
  102. package/dist/unstable-core-do-not-import.d.cts +1 -1
  103. package/dist/unstable-core-do-not-import.d.mts +1 -1
  104. package/dist/unstable-core-do-not-import.mjs +6 -6
  105. package/dist/{utils-BhNVZA-c.cjs → utils-BqXzm3RP.cjs} +2 -0
  106. package/dist/{utils-DdbbrDku.mjs → utils-CLZnJdb_.mjs} +3 -1
  107. package/dist/utils-CLZnJdb_.mjs.map +1 -0
  108. package/dist/{ws-BDTl8wq8.cjs → ws-2RAAqngH.cjs} +6 -6
  109. package/dist/{ws-wBP8XZcx.mjs → ws-BR20IWki.mjs} +7 -7
  110. package/dist/{ws-wBP8XZcx.mjs.map → ws-BR20IWki.mjs.map} +1 -1
  111. package/http/index.d.ts +1 -0
  112. package/http/index.js +1 -0
  113. package/observable/index.d.ts +1 -0
  114. package/observable/index.js +1 -0
  115. package/package.json +2 -2
  116. package/rpc/index.d.ts +1 -0
  117. package/rpc/index.js +1 -0
  118. package/shared/index.d.ts +1 -0
  119. package/shared/index.js +1 -0
  120. package/src/unstable-core-do-not-import/http/getHTTPStatusCode.ts +2 -0
  121. package/src/unstable-core-do-not-import/rpc/codes.ts +2 -0
  122. package/src/unstable-core-do-not-import/stream/jsonl.ts +6 -8
  123. package/unstable-core-do-not-import/index.d.ts +1 -0
  124. package/unstable-core-do-not-import/index.js +1 -0
  125. package/dist/resolveResponse-BIvy2tOI.mjs.map +0 -1
  126. package/dist/unstable-core-do-not-import.d-C8vB_hCN.d.cts.map +0 -1
  127. package/dist/unstable-core-do-not-import.d-x-roAJpB.d.mts.map +0 -1
  128. package/dist/utils-DdbbrDku.mjs.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import "../index.d-D4qZxQJh.mjs";
2
- import { AnyRouter, BaseHandlerOptions, CreateContextCallback, MaybePromise, inferRouterContext } from "../unstable-core-do-not-import.d-x-roAJpB.mjs";
2
+ import { AnyRouter, BaseHandlerOptions, CreateContextCallback, MaybePromise, inferRouterContext } from "../unstable-core-do-not-import.d-BqIRM5n2.mjs";
3
3
  import "../index.d-vq_QHko2.mjs";
4
- import { NodeHTTPCreateContextFnOptions } from "../index.d-B6WM6kGG.mjs";
4
+ import { NodeHTTPCreateContextFnOptions } from "../index.d-AnN9xWqA.mjs";
5
5
  import { IncomingMessage } from "http";
6
6
  import ws from "ws";
7
7
 
@@ -1,15 +1,15 @@
1
- import "../getErrorShape-Uhlrl4Bk.mjs";
2
- import "../tracked-BOPN0_Sr.mjs";
3
- import "../utils-DdbbrDku.mjs";
4
- import "../parseTRPCMessage-ByIHyFRz.mjs";
5
- import "../resolveResponse-BIvy2tOI.mjs";
1
+ import "../getErrorShape-BH60iMC2.mjs";
2
+ import "../tracked-Blz8XOf1.mjs";
3
+ import "../utils-CLZnJdb_.mjs";
4
+ import "../parseTRPCMessage-BlZeZ60t.mjs";
5
+ import "../resolveResponse-DngSgha6.mjs";
6
6
  import "../contentTypeParsers-SN4WL9ze.mjs";
7
7
  import "../unstable-core-do-not-import-D89CaGtL.mjs";
8
8
  import "../observable-UMO3vUa_.mjs";
9
- import "../initTRPC-Bt3JfYTm.mjs";
9
+ import "../initTRPC-CB9uBez5.mjs";
10
10
  import "../http-CWyjOa1l.mjs";
11
- import "../node-http-BO3KHITF.mjs";
11
+ import "../node-http-8dtdvMrE.mjs";
12
12
  import "../observable-CUiPknO-.mjs";
13
- import { applyWSSHandler, getWSConnectionHandler, handleKeepAlive } from "../ws-wBP8XZcx.mjs";
13
+ import { applyWSSHandler, getWSConnectionHandler, handleKeepAlive } from "../ws-BR20IWki.mjs";
14
14
 
15
15
  export { applyWSSHandler, getWSConnectionHandler, handleKeepAlive };
@@ -1,4 +1,4 @@
1
- import { TRPC_ERROR_CODES_BY_KEY, TRPC_ERROR_CODES_BY_NUMBER, isObject } from "./utils-DdbbrDku.mjs";
1
+ import { TRPC_ERROR_CODES_BY_KEY, TRPC_ERROR_CODES_BY_NUMBER, isObject } from "./utils-CLZnJdb_.mjs";
2
2
 
3
3
  //#region rolldown:runtime
4
4
  var __create = Object.create;
@@ -94,6 +94,7 @@ const JSONRPC2_TO_HTTP_CODE = {
94
94
  PAYLOAD_TOO_LARGE: 413,
95
95
  UNSUPPORTED_MEDIA_TYPE: 415,
96
96
  UNPROCESSABLE_CONTENT: 422,
97
+ PRECONDITION_REQUIRED: 428,
97
98
  TOO_MANY_REQUESTS: 429,
98
99
  CLIENT_CLOSED_REQUEST: 499,
99
100
  INTERNAL_SERVER_ERROR: 500,
@@ -115,6 +116,7 @@ const HTTP_CODE_TO_JSONRPC2 = {
115
116
  413: "PAYLOAD_TOO_LARGE",
116
117
  415: "UNSUPPORTED_MEDIA_TYPE",
117
118
  422: "UNPROCESSABLE_CONTENT",
119
+ 428: "PRECONDITION_REQUIRED",
118
120
  429: "TOO_MANY_REQUESTS",
119
121
  499: "CLIENT_CLOSED_REQUEST",
120
122
  500: "INTERNAL_SERVER_ERROR",
@@ -260,4 +262,4 @@ function getErrorShape(opts) {
260
262
 
261
263
  //#endregion
262
264
  export { HTTP_CODE_TO_JSONRPC2, JSONRPC2_TO_HTTP_CODE, __commonJS, __toESM, createFlatProxy, createRecursiveProxy, getErrorShape, getHTTPStatusCode, getHTTPStatusCodeFromError, getStatusCodeFromKey, getStatusKeyFromCode, require_defineProperty, require_objectSpread2 };
263
- //# sourceMappingURL=getErrorShape-Uhlrl4Bk.mjs.map
265
+ //# sourceMappingURL=getErrorShape-BH60iMC2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"getErrorShape-Uhlrl4Bk.mjs","names":["obj: object","callback: ProxyCallback","path: readonly string[]","memo: Record<string, unknown>","callback: (path: keyof TFaux) => any","JSONRPC2_TO_HTTP_CODE: Record<\n keyof typeof TRPC_ERROR_CODES_BY_KEY,\n number\n>","HTTP_CODE_TO_JSONRPC2: InvertKeyValue<\n typeof JSONRPC2_TO_HTTP_CODE\n>","code: keyof typeof TRPC_ERROR_CODES_BY_KEY","code: keyof typeof HTTP_CODE_TO_JSONRPC2","json: TRPCResponse | TRPCResponse[]","error: TRPCError","_typeof","o","_typeof","toPrimitive","toPropertyKey","r","opts: {\n config: RootConfig<TRoot>;\n error: TRPCError;\n type: ProcedureType | 'unknown';\n path: string | undefined;\n input: unknown;\n ctx: TRoot['ctx'] | undefined;\n}","shape: DefaultErrorShape"],"sources":["../src/unstable-core-do-not-import/createProxy.ts","../src/unstable-core-do-not-import/http/getHTTPStatusCode.ts","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/typeof.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js","../src/unstable-core-do-not-import/error/getErrorShape.ts"],"sourcesContent":["interface ProxyCallbackOptions {\n path: readonly string[];\n args: readonly unknown[];\n}\ntype ProxyCallback = (opts: ProxyCallbackOptions) => unknown;\n\nconst noop = () => {\n // noop\n};\n\nconst freezeIfAvailable = (obj: object) => {\n if (Object.freeze) {\n Object.freeze(obj);\n }\n};\n\nfunction createInnerProxy(\n callback: ProxyCallback,\n path: readonly string[],\n memo: Record<string, unknown>,\n) {\n const cacheKey = path.join('.');\n\n memo[cacheKey] ??= new Proxy(noop, {\n get(_obj, key) {\n if (typeof key !== 'string' || key === 'then') {\n // special case for if the proxy is accidentally treated\n // like a PromiseLike (like in `Promise.resolve(proxy)`)\n return undefined;\n }\n return createInnerProxy(callback, [...path, key], memo);\n },\n apply(_1, _2, args) {\n const lastOfPath = path[path.length - 1];\n\n let opts = { args, path };\n // special handling for e.g. `trpc.hello.call(this, 'there')` and `trpc.hello.apply(this, ['there'])\n if (lastOfPath === 'call') {\n opts = {\n args: args.length >= 2 ? [args[1]] : [],\n path: path.slice(0, -1),\n };\n } else if (lastOfPath === 'apply') {\n opts = {\n args: args.length >= 2 ? args[1] : [],\n path: path.slice(0, -1),\n };\n }\n freezeIfAvailable(opts.args);\n freezeIfAvailable(opts.path);\n return callback(opts);\n },\n });\n\n return memo[cacheKey];\n}\n\n/**\n * Creates a proxy that calls the callback with the path and arguments\n *\n * @internal\n */\nexport const createRecursiveProxy = <TFaux = unknown>(\n callback: ProxyCallback,\n): TFaux => createInnerProxy(callback, [], Object.create(null)) as TFaux;\n\n/**\n * Used in place of `new Proxy` where each handler will map 1 level deep to another value.\n *\n * @internal\n */\nexport const createFlatProxy = <TFaux>(\n callback: (path: keyof TFaux) => any,\n): TFaux => {\n return new Proxy(noop, {\n get(_obj, name) {\n if (name === 'then') {\n // special case for if the proxy is accidentally treated\n // like a PromiseLike (like in `Promise.resolve(proxy)`)\n return undefined;\n }\n return callback(name as any);\n },\n }) as TFaux;\n};\n","import type { TRPCError } from '../error/TRPCError';\nimport type { TRPC_ERROR_CODES_BY_KEY, TRPCResponse } from '../rpc';\nimport { TRPC_ERROR_CODES_BY_NUMBER } from '../rpc';\nimport type { InvertKeyValue, ValueOf } from '../types';\nimport { isObject } from '../utils';\n\nexport const JSONRPC2_TO_HTTP_CODE: Record<\n keyof typeof TRPC_ERROR_CODES_BY_KEY,\n number\n> = {\n PARSE_ERROR: 400,\n BAD_REQUEST: 400,\n UNAUTHORIZED: 401,\n PAYMENT_REQUIRED: 402,\n FORBIDDEN: 403,\n NOT_FOUND: 404,\n METHOD_NOT_SUPPORTED: 405,\n TIMEOUT: 408,\n CONFLICT: 409,\n PRECONDITION_FAILED: 412,\n PAYLOAD_TOO_LARGE: 413,\n UNSUPPORTED_MEDIA_TYPE: 415,\n UNPROCESSABLE_CONTENT: 422,\n TOO_MANY_REQUESTS: 429,\n CLIENT_CLOSED_REQUEST: 499,\n INTERNAL_SERVER_ERROR: 500,\n NOT_IMPLEMENTED: 501,\n BAD_GATEWAY: 502,\n SERVICE_UNAVAILABLE: 503,\n GATEWAY_TIMEOUT: 504,\n};\n\nexport const HTTP_CODE_TO_JSONRPC2: InvertKeyValue<\n typeof JSONRPC2_TO_HTTP_CODE\n> = {\n 400: 'BAD_REQUEST',\n 401: 'UNAUTHORIZED',\n 402: 'PAYMENT_REQUIRED',\n 403: 'FORBIDDEN',\n 404: 'NOT_FOUND',\n 405: 'METHOD_NOT_SUPPORTED',\n 408: 'TIMEOUT',\n 409: 'CONFLICT',\n 412: 'PRECONDITION_FAILED',\n 413: 'PAYLOAD_TOO_LARGE',\n 415: 'UNSUPPORTED_MEDIA_TYPE',\n 422: 'UNPROCESSABLE_CONTENT',\n 429: 'TOO_MANY_REQUESTS',\n 499: 'CLIENT_CLOSED_REQUEST',\n 500: 'INTERNAL_SERVER_ERROR',\n 501: 'NOT_IMPLEMENTED',\n 502: 'BAD_GATEWAY',\n 503: 'SERVICE_UNAVAILABLE',\n 504: 'GATEWAY_TIMEOUT',\n} as const;\n\nexport function getStatusCodeFromKey(\n code: keyof typeof TRPC_ERROR_CODES_BY_KEY,\n) {\n return JSONRPC2_TO_HTTP_CODE[code] ?? 500;\n}\n\nexport function getStatusKeyFromCode(\n code: keyof typeof HTTP_CODE_TO_JSONRPC2,\n): ValueOf<typeof HTTP_CODE_TO_JSONRPC2> {\n return HTTP_CODE_TO_JSONRPC2[code] ?? 'INTERNAL_SERVER_ERROR';\n}\n\nexport function getHTTPStatusCode(json: TRPCResponse | TRPCResponse[]) {\n const arr = Array.isArray(json) ? json : [json];\n const httpStatuses = new Set<number>(\n arr.map((res) => {\n if ('error' in res && isObject(res.error.data)) {\n if (typeof res.error.data?.['httpStatus'] === 'number') {\n return res.error.data['httpStatus'];\n }\n const code = TRPC_ERROR_CODES_BY_NUMBER[res.error.code];\n return getStatusCodeFromKey(code);\n }\n return 200;\n }),\n );\n\n if (httpStatuses.size !== 1) {\n return 207;\n }\n\n const httpStatus = httpStatuses.values().next().value;\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return httpStatus!;\n}\n\nexport function getHTTPStatusCodeFromError(error: TRPCError) {\n return getStatusCodeFromKey(error.code);\n}\n","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nmodule.exports = toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nmodule.exports = toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var defineProperty = require(\"./defineProperty.js\");\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nmodule.exports = _objectSpread2, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import { getHTTPStatusCodeFromError } from '../http/getHTTPStatusCode';\nimport type { ProcedureType } from '../procedure';\nimport type { AnyRootTypes, RootConfig } from '../rootConfig';\nimport { TRPC_ERROR_CODES_BY_KEY } from '../rpc';\nimport type { DefaultErrorShape } from './formatter';\nimport type { TRPCError } from './TRPCError';\n\n/**\n * @internal\n */\nexport function getErrorShape<TRoot extends AnyRootTypes>(opts: {\n config: RootConfig<TRoot>;\n error: TRPCError;\n type: ProcedureType | 'unknown';\n path: string | undefined;\n input: unknown;\n ctx: TRoot['ctx'] | undefined;\n}): TRoot['errorShape'] {\n const { path, error, config } = opts;\n const { code } = opts.error;\n const shape: DefaultErrorShape = {\n message: error.message,\n code: TRPC_ERROR_CODES_BY_KEY[code],\n data: {\n code,\n httpStatus: getHTTPStatusCodeFromError(error),\n },\n };\n if (config.isDev && typeof opts.error.stack === 'string') {\n shape.data.stack = opts.error.stack;\n }\n if (typeof path === 'string') {\n shape.data.path = path;\n }\n return config.errorFormatter({ ...opts, shape });\n}\n"],"x_google_ignoreList":[2,3,4,5,6],"mappings":"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"}
1
+ {"version":3,"file":"getErrorShape-BH60iMC2.mjs","names":["obj: object","callback: ProxyCallback","path: readonly string[]","memo: Record<string, unknown>","callback: (path: keyof TFaux) => any","JSONRPC2_TO_HTTP_CODE: Record<\n keyof typeof TRPC_ERROR_CODES_BY_KEY,\n number\n>","HTTP_CODE_TO_JSONRPC2: InvertKeyValue<\n typeof JSONRPC2_TO_HTTP_CODE\n>","code: keyof typeof TRPC_ERROR_CODES_BY_KEY","code: keyof typeof HTTP_CODE_TO_JSONRPC2","json: TRPCResponse | TRPCResponse[]","error: TRPCError","_typeof","o","_typeof","toPrimitive","toPropertyKey","r","opts: {\n config: RootConfig<TRoot>;\n error: TRPCError;\n type: ProcedureType | 'unknown';\n path: string | undefined;\n input: unknown;\n ctx: TRoot['ctx'] | undefined;\n}","shape: DefaultErrorShape"],"sources":["../src/unstable-core-do-not-import/createProxy.ts","../src/unstable-core-do-not-import/http/getHTTPStatusCode.ts","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/typeof.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js","../src/unstable-core-do-not-import/error/getErrorShape.ts"],"sourcesContent":["interface ProxyCallbackOptions {\n path: readonly string[];\n args: readonly unknown[];\n}\ntype ProxyCallback = (opts: ProxyCallbackOptions) => unknown;\n\nconst noop = () => {\n // noop\n};\n\nconst freezeIfAvailable = (obj: object) => {\n if (Object.freeze) {\n Object.freeze(obj);\n }\n};\n\nfunction createInnerProxy(\n callback: ProxyCallback,\n path: readonly string[],\n memo: Record<string, unknown>,\n) {\n const cacheKey = path.join('.');\n\n memo[cacheKey] ??= new Proxy(noop, {\n get(_obj, key) {\n if (typeof key !== 'string' || key === 'then') {\n // special case for if the proxy is accidentally treated\n // like a PromiseLike (like in `Promise.resolve(proxy)`)\n return undefined;\n }\n return createInnerProxy(callback, [...path, key], memo);\n },\n apply(_1, _2, args) {\n const lastOfPath = path[path.length - 1];\n\n let opts = { args, path };\n // special handling for e.g. `trpc.hello.call(this, 'there')` and `trpc.hello.apply(this, ['there'])\n if (lastOfPath === 'call') {\n opts = {\n args: args.length >= 2 ? [args[1]] : [],\n path: path.slice(0, -1),\n };\n } else if (lastOfPath === 'apply') {\n opts = {\n args: args.length >= 2 ? args[1] : [],\n path: path.slice(0, -1),\n };\n }\n freezeIfAvailable(opts.args);\n freezeIfAvailable(opts.path);\n return callback(opts);\n },\n });\n\n return memo[cacheKey];\n}\n\n/**\n * Creates a proxy that calls the callback with the path and arguments\n *\n * @internal\n */\nexport const createRecursiveProxy = <TFaux = unknown>(\n callback: ProxyCallback,\n): TFaux => createInnerProxy(callback, [], Object.create(null)) as TFaux;\n\n/**\n * Used in place of `new Proxy` where each handler will map 1 level deep to another value.\n *\n * @internal\n */\nexport const createFlatProxy = <TFaux>(\n callback: (path: keyof TFaux) => any,\n): TFaux => {\n return new Proxy(noop, {\n get(_obj, name) {\n if (name === 'then') {\n // special case for if the proxy is accidentally treated\n // like a PromiseLike (like in `Promise.resolve(proxy)`)\n return undefined;\n }\n return callback(name as any);\n },\n }) as TFaux;\n};\n","import type { TRPCError } from '../error/TRPCError';\nimport type { TRPC_ERROR_CODES_BY_KEY, TRPCResponse } from '../rpc';\nimport { TRPC_ERROR_CODES_BY_NUMBER } from '../rpc';\nimport type { InvertKeyValue, ValueOf } from '../types';\nimport { isObject } from '../utils';\n\nexport const JSONRPC2_TO_HTTP_CODE: Record<\n keyof typeof TRPC_ERROR_CODES_BY_KEY,\n number\n> = {\n PARSE_ERROR: 400,\n BAD_REQUEST: 400,\n UNAUTHORIZED: 401,\n PAYMENT_REQUIRED: 402,\n FORBIDDEN: 403,\n NOT_FOUND: 404,\n METHOD_NOT_SUPPORTED: 405,\n TIMEOUT: 408,\n CONFLICT: 409,\n PRECONDITION_FAILED: 412,\n PAYLOAD_TOO_LARGE: 413,\n UNSUPPORTED_MEDIA_TYPE: 415,\n UNPROCESSABLE_CONTENT: 422,\n PRECONDITION_REQUIRED: 428,\n TOO_MANY_REQUESTS: 429,\n CLIENT_CLOSED_REQUEST: 499,\n INTERNAL_SERVER_ERROR: 500,\n NOT_IMPLEMENTED: 501,\n BAD_GATEWAY: 502,\n SERVICE_UNAVAILABLE: 503,\n GATEWAY_TIMEOUT: 504,\n};\n\nexport const HTTP_CODE_TO_JSONRPC2: InvertKeyValue<\n typeof JSONRPC2_TO_HTTP_CODE\n> = {\n 400: 'BAD_REQUEST',\n 401: 'UNAUTHORIZED',\n 402: 'PAYMENT_REQUIRED',\n 403: 'FORBIDDEN',\n 404: 'NOT_FOUND',\n 405: 'METHOD_NOT_SUPPORTED',\n 408: 'TIMEOUT',\n 409: 'CONFLICT',\n 412: 'PRECONDITION_FAILED',\n 413: 'PAYLOAD_TOO_LARGE',\n 415: 'UNSUPPORTED_MEDIA_TYPE',\n 422: 'UNPROCESSABLE_CONTENT',\n 428: 'PRECONDITION_REQUIRED',\n 429: 'TOO_MANY_REQUESTS',\n 499: 'CLIENT_CLOSED_REQUEST',\n 500: 'INTERNAL_SERVER_ERROR',\n 501: 'NOT_IMPLEMENTED',\n 502: 'BAD_GATEWAY',\n 503: 'SERVICE_UNAVAILABLE',\n 504: 'GATEWAY_TIMEOUT',\n} as const;\n\nexport function getStatusCodeFromKey(\n code: keyof typeof TRPC_ERROR_CODES_BY_KEY,\n) {\n return JSONRPC2_TO_HTTP_CODE[code] ?? 500;\n}\n\nexport function getStatusKeyFromCode(\n code: keyof typeof HTTP_CODE_TO_JSONRPC2,\n): ValueOf<typeof HTTP_CODE_TO_JSONRPC2> {\n return HTTP_CODE_TO_JSONRPC2[code] ?? 'INTERNAL_SERVER_ERROR';\n}\n\nexport function getHTTPStatusCode(json: TRPCResponse | TRPCResponse[]) {\n const arr = Array.isArray(json) ? json : [json];\n const httpStatuses = new Set<number>(\n arr.map((res) => {\n if ('error' in res && isObject(res.error.data)) {\n if (typeof res.error.data?.['httpStatus'] === 'number') {\n return res.error.data['httpStatus'];\n }\n const code = TRPC_ERROR_CODES_BY_NUMBER[res.error.code];\n return getStatusCodeFromKey(code);\n }\n return 200;\n }),\n );\n\n if (httpStatuses.size !== 1) {\n return 207;\n }\n\n const httpStatus = httpStatuses.values().next().value;\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return httpStatus!;\n}\n\nexport function getHTTPStatusCodeFromError(error: TRPCError) {\n return getStatusCodeFromKey(error.code);\n}\n","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nmodule.exports = toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nmodule.exports = toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var defineProperty = require(\"./defineProperty.js\");\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nmodule.exports = _objectSpread2, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import { getHTTPStatusCodeFromError } from '../http/getHTTPStatusCode';\nimport type { ProcedureType } from '../procedure';\nimport type { AnyRootTypes, RootConfig } from '../rootConfig';\nimport { TRPC_ERROR_CODES_BY_KEY } from '../rpc';\nimport type { DefaultErrorShape } from './formatter';\nimport type { TRPCError } from './TRPCError';\n\n/**\n * @internal\n */\nexport function getErrorShape<TRoot extends AnyRootTypes>(opts: {\n config: RootConfig<TRoot>;\n error: TRPCError;\n type: ProcedureType | 'unknown';\n path: string | undefined;\n input: unknown;\n ctx: TRoot['ctx'] | undefined;\n}): TRoot['errorShape'] {\n const { path, error, config } = opts;\n const { code } = opts.error;\n const shape: DefaultErrorShape = {\n message: error.message,\n code: TRPC_ERROR_CODES_BY_KEY[code],\n data: {\n code,\n httpStatus: getHTTPStatusCodeFromError(error),\n },\n };\n if (config.isDev && typeof opts.error.stack === 'string') {\n shape.data.stack = opts.error.stack;\n }\n if (typeof path === 'string') {\n shape.data.path = path;\n }\n return config.errorFormatter({ ...opts, shape });\n}\n"],"x_google_ignoreList":[2,3,4,5,6],"mappings":"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"}
@@ -24,7 +24,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
24
24
  }) : target, mod));
25
25
 
26
26
  //#endregion
27
- const require_utils = require('./utils-BhNVZA-c.cjs');
27
+ const require_utils = require('./utils-BqXzm3RP.cjs');
28
28
 
29
29
  //#region src/unstable-core-do-not-import/createProxy.ts
30
30
  const noop = () => {};
@@ -94,6 +94,7 @@ const JSONRPC2_TO_HTTP_CODE = {
94
94
  PAYLOAD_TOO_LARGE: 413,
95
95
  UNSUPPORTED_MEDIA_TYPE: 415,
96
96
  UNPROCESSABLE_CONTENT: 422,
97
+ PRECONDITION_REQUIRED: 428,
97
98
  TOO_MANY_REQUESTS: 429,
98
99
  CLIENT_CLOSED_REQUEST: 499,
99
100
  INTERNAL_SERVER_ERROR: 500,
@@ -115,6 +116,7 @@ const HTTP_CODE_TO_JSONRPC2 = {
115
116
  413: "PAYLOAD_TOO_LARGE",
116
117
  415: "UNSUPPORTED_MEDIA_TYPE",
117
118
  422: "UNPROCESSABLE_CONTENT",
119
+ 428: "PRECONDITION_REQUIRED",
118
120
  429: "TOO_MANY_REQUESTS",
119
121
  499: "CLIENT_CLOSED_REQUEST",
120
122
  500: "INTERNAL_SERVER_ERROR",
package/dist/http.cjs CHANGED
@@ -1,7 +1,7 @@
1
- const require_getErrorShape = require('./getErrorShape-DKiEF6Zc.cjs');
2
- require('./tracked-DLBmdanL.cjs');
3
- require('./utils-BhNVZA-c.cjs');
4
- const require_resolveResponse = require('./resolveResponse-p3dRsVlS.cjs');
1
+ const require_getErrorShape = require('./getErrorShape-BRalpqpM.cjs');
2
+ require('./tracked-DkwwsHVk.cjs');
3
+ require('./utils-BqXzm3RP.cjs');
4
+ const require_resolveResponse = require('./resolveResponse-OV7qVwiT.cjs');
5
5
  const require_contentTypeParsers = require('./contentTypeParsers-iAFF_pJG.cjs');
6
6
  require('./observable-B1Nk6r1H.cjs');
7
7
  require('./http-DXy3XyhL.cjs');
package/dist/http.d.cts CHANGED
@@ -1,3 +1,3 @@
1
1
  import "./index.d-BiUz7kM_.cjs";
2
- import { BaseHandlerOptions, HTTPBaseHandlerOptions, HTTPErrorHandler, ResolveHTTPRequestOptionsContextFn, ResponseMeta, ResponseMetaFn, TRPCRequestInfo, getHTTPStatusCode, getHTTPStatusCodeFromError, octetInputParser, parseConnectionParamsFromString, parseConnectionParamsFromUnknown, resolveResponse } from "./unstable-core-do-not-import.d-C8vB_hCN.cjs";
2
+ import { BaseHandlerOptions, HTTPBaseHandlerOptions, HTTPErrorHandler, ResolveHTTPRequestOptionsContextFn, ResponseMeta, ResponseMetaFn, TRPCRequestInfo, getHTTPStatusCode, getHTTPStatusCodeFromError, octetInputParser, parseConnectionParamsFromString, parseConnectionParamsFromUnknown, resolveResponse } from "./unstable-core-do-not-import.d-DKRHq4OJ.cjs";
3
3
  export { BaseHandlerOptions, HTTPBaseHandlerOptions, HTTPErrorHandler, HTTPErrorHandler as OnErrorFunction, ResolveHTTPRequestOptionsContextFn, ResponseMeta, ResponseMetaFn, TRPCRequestInfo, getHTTPStatusCode, getHTTPStatusCodeFromError, octetInputParser, parseConnectionParamsFromString, parseConnectionParamsFromUnknown, resolveResponse };
package/dist/http.d.mts CHANGED
@@ -1,3 +1,3 @@
1
1
  import "./index.d-D4qZxQJh.mjs";
2
- import { BaseHandlerOptions, HTTPBaseHandlerOptions, HTTPErrorHandler, ResolveHTTPRequestOptionsContextFn, ResponseMeta, ResponseMetaFn, TRPCRequestInfo, getHTTPStatusCode, getHTTPStatusCodeFromError, octetInputParser, parseConnectionParamsFromString, parseConnectionParamsFromUnknown, resolveResponse } from "./unstable-core-do-not-import.d-x-roAJpB.mjs";
2
+ import { BaseHandlerOptions, HTTPBaseHandlerOptions, HTTPErrorHandler, ResolveHTTPRequestOptionsContextFn, ResponseMeta, ResponseMetaFn, TRPCRequestInfo, getHTTPStatusCode, getHTTPStatusCodeFromError, octetInputParser, parseConnectionParamsFromString, parseConnectionParamsFromUnknown, resolveResponse } from "./unstable-core-do-not-import.d-BqIRM5n2.mjs";
3
3
  export { BaseHandlerOptions, HTTPBaseHandlerOptions, HTTPErrorHandler, HTTPErrorHandler as OnErrorFunction, ResolveHTTPRequestOptionsContextFn, ResponseMeta, ResponseMetaFn, TRPCRequestInfo, getHTTPStatusCode, getHTTPStatusCodeFromError, octetInputParser, parseConnectionParamsFromString, parseConnectionParamsFromUnknown, resolveResponse };
package/dist/http.mjs CHANGED
@@ -1,7 +1,7 @@
1
- import { getHTTPStatusCode, getHTTPStatusCodeFromError } from "./getErrorShape-Uhlrl4Bk.mjs";
2
- import "./tracked-BOPN0_Sr.mjs";
3
- import "./utils-DdbbrDku.mjs";
4
- import { parseConnectionParamsFromString, parseConnectionParamsFromUnknown, resolveResponse } from "./resolveResponse-BIvy2tOI.mjs";
1
+ import { getHTTPStatusCode, getHTTPStatusCodeFromError } from "./getErrorShape-BH60iMC2.mjs";
2
+ import "./tracked-Blz8XOf1.mjs";
3
+ import "./utils-CLZnJdb_.mjs";
4
+ import { parseConnectionParamsFromString, parseConnectionParamsFromUnknown, resolveResponse } from "./resolveResponse-DngSgha6.mjs";
5
5
  import { octetInputParser } from "./contentTypeParsers-SN4WL9ze.mjs";
6
6
  import "./observable-UMO3vUa_.mjs";
7
7
  import "./http-CWyjOa1l.mjs";
package/dist/index.cjs CHANGED
@@ -1,7 +1,7 @@
1
- const require_getErrorShape = require('./getErrorShape-DKiEF6Zc.cjs');
2
- const require_tracked = require('./tracked-DLBmdanL.cjs');
3
- require('./utils-BhNVZA-c.cjs');
4
- const require_initTRPC = require('./initTRPC-DPn1YifP.cjs');
1
+ const require_getErrorShape = require('./getErrorShape-BRalpqpM.cjs');
2
+ const require_tracked = require('./tracked-DkwwsHVk.cjs');
3
+ require('./utils-BqXzm3RP.cjs');
4
+ const require_initTRPC = require('./initTRPC-D-fJXPDf.cjs');
5
5
 
6
6
  exports.StandardSchemaV1Error = require_initTRPC.StandardSchemaV1Error;
7
7
  exports.TRPCError = require_tracked.TRPCError;
@@ -1,4 +1,4 @@
1
- import { AnyRouter, CreateContextCallback, DistributiveOmit, HTTPBaseHandlerOptions, MaybePromise, TRPCRequestInfo, inferRouterContext } from "./unstable-core-do-not-import.d-C8vB_hCN.cjs";
1
+ import { AnyRouter, CreateContextCallback, DistributiveOmit, HTTPBaseHandlerOptions, MaybePromise, TRPCRequestInfo, inferRouterContext } from "./unstable-core-do-not-import.d-BqIRM5n2.mjs";
2
2
  import * as http$1 from "http";
3
3
  import * as http2 from "http2";
4
4
 
@@ -96,4 +96,4 @@ declare function incomingMessageToRequest(req: NodeHTTPRequest, res: NodeHTTPRes
96
96
 
97
97
  //#endregion
98
98
  export { NodeHTTPCreateContextFn, NodeHTTPCreateContextFnOptions, NodeHTTPCreateContextOption, NodeHTTPHandlerOptions, NodeHTTPRequest, NodeHTTPRequestHandlerOptions, NodeHTTPResponse, createURL, incomingMessageToRequest, internal_exceptionHandler, nodeHTTPRequestHandler };
99
- //# sourceMappingURL=index.d-BX0zNedI.d.cts.map
99
+ //# sourceMappingURL=index.d-AnN9xWqA.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d-B6WM6kGG.d.mts","names":[],"sources":["../src/adapters/node-http/types.ts","../src/adapters/node-http/nodeHTTPRequestHandler.ts","../src/adapters/node-http/incomingMessageToRequest.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d-AnN9xWqA.d.mts","names":[],"sources":["../src/adapters/node-http/types.ts","../src/adapters/node-http/nodeHTTPRequestHandler.ts","../src/adapters/node-http/incomingMessageToRequest.ts"],"sourcesContent":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AnyRouter, CreateContextCallback, DistributiveOmit, HTTPBaseHandlerOptions, MaybePromise, TRPCRequestInfo, inferRouterContext } from "./unstable-core-do-not-import.d-x-roAJpB.mjs";
1
+ import { AnyRouter, CreateContextCallback, DistributiveOmit, HTTPBaseHandlerOptions, MaybePromise, TRPCRequestInfo, inferRouterContext } from "./unstable-core-do-not-import.d-DKRHq4OJ.cjs";
2
2
  import * as http$1 from "http";
3
3
  import * as http2 from "http2";
4
4
 
@@ -96,4 +96,4 @@ declare function incomingMessageToRequest(req: NodeHTTPRequest, res: NodeHTTPRes
96
96
 
97
97
  //#endregion
98
98
  export { NodeHTTPCreateContextFn, NodeHTTPCreateContextFnOptions, NodeHTTPCreateContextOption, NodeHTTPHandlerOptions, NodeHTTPRequest, NodeHTTPRequestHandlerOptions, NodeHTTPResponse, createURL, incomingMessageToRequest, internal_exceptionHandler, nodeHTTPRequestHandler };
99
- //# sourceMappingURL=index.d-B6WM6kGG.d.mts.map
99
+ //# sourceMappingURL=index.d-jwxZxHCb.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d-BX0zNedI.d.cts","names":[],"sources":["../src/adapters/node-http/types.ts","../src/adapters/node-http/nodeHTTPRequestHandler.ts","../src/adapters/node-http/incomingMessageToRequest.ts"],"sourcesContent":[],"mappings":";;;;;;AA4Ca,KAhBD,eAAA,GAAkB,gBAgBjB,CAfX,MAAA,CAAK,eAeM,GAfY,KAAA,CAAM,kBAelB,EAAA,QAAA,CAAA,GAAA;EAGD;;;EACS,IAAG,CAAA,EAAA,OAAM;EAAmB;;AAab;AAEpC;;;EAC2B,MAIN,CAAA,EAzBf,OAyBe,CAzBP,MAAA,CAAK,eAyBE,CAAA,QAAA,CAAA,CAAA,GAxBf,OAwBe,CAxBP,KAAA,CAAM,kBAwBC,CAAA,QAAA,CAAA,CAAA;CAAO;AACF,KAtBd,gBAAA,GAAmB,gBAsBL,CArBxB,MAAA,CAAK,cAqBmB,GArBF,KAAA,CAAM,mBAqBJ,EAAA,OAAA,CAAA,GAAA;EAAO;;;;AAFR;AAGvB;;;EAMgC,KAAG,CAAA,EAAA,GAAA,GAAA,IAAA;EAAe,KAChC,EAAA,CAAA,KAAA,EAAA,MAAA,GAhBM,UAgBN,EAAA,GAAA,OAAA;CAAgB;AAC1B,KAfE,2BAeF,CAAA,gBAdQ,SAcR,EAAA,QAAA,EAAA,SAAA,CAAA,GAXN,qBAWM,CAVR,kBAUQ,CAVW,OAUX,CAAA,EATR,uBASQ,CATgB,OAShB,EATyB,QASzB,EATmC,SASnC,CAAA,CAAA;;AAAwB;AAElC;KALK,iBAK6B,CAAA,iBAJf,eAIe,GAJG,eAIH,EAAA,kBAHd,gBAGc,GAHK,gBAGL,CAAA,GAAA,CAAA,GAAA,EAFxB,QAEwB,EAAA,GAAA,EAFT,SAES,EAAA,IAAA,EAAA,CAAA,GAAA,CAAA,EAAA,GAAA,EAAA,GAAA,GAAA,EAAA,GAAA,IAAA;AAChB,KADN,sBACM,CAAA,gBAAA,SAAA,EAAA,iBACC,eADD,EAAA,kBAEE,gBAFF,CAAA,GAGd,sBAHc,CAGS,OAHT,EAGkB,QAHlB,CAAA,GAIhB,2BAJgB,CAIY,OAJZ,EAIqB,QAJrB,EAI+B,SAJ/B,CAAA,GAAA;EAAS;;;;;;;;;;;;AAqBO;AAIlC;;;EAC2B,UACR,CAAA,EANF,iBAME,CANgB,QAMhB,EAN0B,SAM1B,CAAA;EAAe,WACd,CAAA,EAAA,MAAA;CAAgB;AACA,KAJxB,6BAIwB,CAAA,gBAHlB,SAGkB,EAAA,iBAFjB,eAEiB,EAAA,kBADhB,gBACgB,CAAA,GAAhC,sBAAgC,CAAT,OAAS,EAAA,QAAA,EAAU,SAAV,CAAA,GAAA;EAAQ,GAAE,EACvC,QADuC;EAAS,GAAnD,EAEG,SAFH;EAAsB;;AAEV;AAQhB;EAA0C,IAAA,EAAA,MAAA;CAAA;AAEnC,KAFK,8BAEL,CAAA,QAAA,EAAA,SAAA,CAAA,GAAA;EAAS,GACR,EAFD,QAEC;EAAe,GAAA,EADhB,SACgB;EAEX,IAAA,EAFJ,eAEI;CAAuB;AACjB,KADN,uBACM,CAAA,gBAAA,SAAA,EAAA,QAAA,EAAA,SAAA,CAAA,GAAA,CAAA,IAAA,EAIV,8BAJU,CAIqB,QAJrB,EAI+B,SAJ/B,CAAA,EAAA,GAKb,YALa,CAKA,kBALA,CAKmB,OALnB,CAAA,CAAA;;;;;;AAlFL,iBCZG,yBDYH,CAAA,gBCXK,SDWL,EAAA,iBCVM,eDUN,EAAA,kBCTO,gBDSP,CAAA,CAAA,IAAA,ECRL,6BDQK,CCRyB,ODQzB,ECRkC,QDQlC,ECR4C,SDQ5C,CAAA,CAAA,EAAA,CAAA,KAAA,EAAA,OAAA,EAAA,GAAA,IAAA;AAGb;;;AACwB,iBCuBF,sBDvBQ,CAAA,gBCwBZ,SDxBY,EAAA,iBCyBX,eDzBW,EAAA,kBC0BV,gBD1BU,CAAA,CAAA,IAAA,EC2BtB,6BD3BsB,CC2BQ,OD3BR,EC2BiB,QD3BjB,EC2B2B,SD3B3B,CAAA,CAAA,EC2BqC,OD3BrC,CAAA,IAAA,CAAA;;;;iBEmBd,SAAA,MAAe,kBAAkB;;;;AFvCrC,iBEuFI,wBAAA,CFvFW,GAAA,EEwFpB,eFxFoB,EAAA,GAAA,EEyFpB,gBFzFoB,EAAA,IAAA,EAAA;EAAA;;;EACsB,WADnB,EAAA,MAAA,GAAA,IAAA;CAAgB,CAAA,EEgG3C,OFjFW"}
1
+ {"version":3,"file":"index.d-jwxZxHCb.d.cts","names":[],"sources":["../src/adapters/node-http/types.ts","../src/adapters/node-http/nodeHTTPRequestHandler.ts","../src/adapters/node-http/incomingMessageToRequest.ts"],"sourcesContent":[],"mappings":"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"}
package/dist/index.d.cts CHANGED
@@ -1,4 +1,4 @@
1
1
  import "./index.d-BiUz7kM_.cjs";
2
- import { AnyClientTypes, AnyMiddlewareFunction, AnyMutationProcedure, AnyProcedure, AnyQueryProcedure, AnyRootTypes, AnyRouter, AnySubscriptionProcedure, BuiltRouter, CombinedDataTransformer, CreateContextCallback, CreateRouterOptions, DataTransformer, DecorateCreateRouterOptions, DeepPartial, DefaultErrorData, DefaultErrorShape, Dict, ErrorFormatter, MergeRouters, MiddlewareBuilder, MiddlewareFunction, MutationProcedure, ProcedureBuilder, ProcedureType, QueryProcedure, RootConfig, RouterBuilder, RouterCaller, RouterCallerFactory, RouterDef, RouterRecord, RuntimeConfigOptions, StandardSchemaV1Error, SubscriptionProcedure, TRPCBuilder, TRPCError, TRPCErrorShape, TRPCRootObject, TRPC_ERROR_CODE_KEY, TRPC_ERROR_CODE_NUMBER, TrackedEnvelope, UnsetMarker, callProcedure, createFlatProxy, createRecursiveProxy, experimental_standaloneMiddleware, getErrorShape, getTRPCErrorFromUnknown, inferClientTypes, inferProcedureBuilderResolverOptions, inferProcedureInput, inferProcedureOutput, inferRouterContext, inferRouterError, inferRouterInputs, inferRouterOutputs, inferTransformedProcedureOutput, inferTransformedSubscriptionOutput, initTRPC, isTrackedEnvelope, lazy, sse, tracked, transformTRPCResponse } from "./unstable-core-do-not-import.d-C8vB_hCN.cjs";
2
+ import { AnyClientTypes, AnyMiddlewareFunction, AnyMutationProcedure, AnyProcedure, AnyQueryProcedure, AnyRootTypes, AnyRouter, AnySubscriptionProcedure, BuiltRouter, CombinedDataTransformer, CreateContextCallback, CreateRouterOptions, DataTransformer, DecorateCreateRouterOptions, DeepPartial, DefaultErrorData, DefaultErrorShape, Dict, ErrorFormatter, MergeRouters, MiddlewareBuilder, MiddlewareFunction, MutationProcedure, ProcedureBuilder, ProcedureType, QueryProcedure, RootConfig, RouterBuilder, RouterCaller, RouterCallerFactory, RouterDef, RouterRecord, RuntimeConfigOptions, StandardSchemaV1Error, SubscriptionProcedure, TRPCBuilder, TRPCError, TRPCErrorShape, TRPCRootObject, TRPC_ERROR_CODE_KEY, TRPC_ERROR_CODE_NUMBER, TrackedEnvelope, UnsetMarker, callProcedure, createFlatProxy, createRecursiveProxy, experimental_standaloneMiddleware, getErrorShape, getTRPCErrorFromUnknown, inferClientTypes, inferProcedureBuilderResolverOptions, inferProcedureInput, inferProcedureOutput, inferRouterContext, inferRouterError, inferRouterInputs, inferRouterOutputs, inferTransformedProcedureOutput, inferTransformedSubscriptionOutput, initTRPC, isTrackedEnvelope, lazy, sse, tracked, transformTRPCResponse } from "./unstable-core-do-not-import.d-DKRHq4OJ.cjs";
3
3
  import { inferAsyncReturnType } from "./index.d-CvZXeEyR.cjs";
4
4
  export { AnyMiddlewareFunction, AnyMutationProcedure, AnyProcedure, AnyQueryProcedure, AnyRouter, AnySubscriptionProcedure, AnyClientTypes as AnyTRPCClientTypes, AnyMiddlewareFunction as AnyTRPCMiddlewareFunction, AnyMutationProcedure as AnyTRPCMutationProcedure, AnyProcedure as AnyTRPCProcedure, AnyQueryProcedure as AnyTRPCQueryProcedure, AnyRootTypes as AnyTRPCRootTypes, AnyRouter as AnyTRPCRouter, AnySubscriptionProcedure as AnyTRPCSubscriptionProcedure, CombinedDataTransformer, CreateContextCallback, DataTransformer, DeepPartial, Dict, ProcedureType, StandardSchemaV1Error, TRPCBuilder, BuiltRouter as TRPCBuiltRouter, CombinedDataTransformer as TRPCCombinedDataTransformer, CreateRouterOptions as TRPCCreateRouterOptions, DataTransformer as TRPCDataTransformer, DecorateCreateRouterOptions as TRPCDecorateCreateRouterOptions, DefaultErrorData as TRPCDefaultErrorData, DefaultErrorShape as TRPCDefaultErrorShape, TRPCError, ErrorFormatter as TRPCErrorFormatter, TRPCErrorShape, MergeRouters as TRPCMergeRouters, MiddlewareBuilder as TRPCMiddlewareBuilder, MiddlewareFunction as TRPCMiddlewareFunction, MutationProcedure as TRPCMutationProcedure, ProcedureBuilder as TRPCProcedureBuilder, ProcedureType as TRPCProcedureType, QueryProcedure as TRPCQueryProcedure, RootConfig as TRPCRootConfig, TRPCRootObject, RouterBuilder as TRPCRouterBuilder, RouterCaller as TRPCRouterCaller, RouterCallerFactory as TRPCRouterCallerFactory, RouterDef as TRPCRouterDef, RouterRecord as TRPCRouterRecord, RuntimeConfigOptions as TRPCRuntimeConfigOptions, SubscriptionProcedure as TRPCSubscriptionProcedure, UnsetMarker as TRPCUnsetMarker, TRPC_ERROR_CODE_KEY, TRPC_ERROR_CODE_NUMBER, TrackedEnvelope, callProcedure as callTRPCProcedure, createFlatProxy as createTRPCFlatProxy, createRecursiveProxy as createTRPCRecursiveProxy, lazy as experimental_lazy, experimental_standaloneMiddleware, experimental_standaloneMiddleware as experimental_trpcMiddleware, getErrorShape, getTRPCErrorFromUnknown, getErrorShape as getTRPCErrorShape, inferAsyncReturnType, inferProcedureBuilderResolverOptions, inferProcedureInput, inferProcedureOutput, inferRouterContext, inferRouterError, inferRouterInputs, inferRouterOutputs, inferClientTypes as inferTRPCClientTypes, inferTransformedProcedureOutput, inferTransformedSubscriptionOutput, initTRPC, isTrackedEnvelope, lazy, sse, tracked, transformTRPCResponse };
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
1
  import "./index.d-D4qZxQJh.mjs";
2
- import { AnyClientTypes, AnyMiddlewareFunction, AnyMutationProcedure, AnyProcedure, AnyQueryProcedure, AnyRootTypes, AnyRouter, AnySubscriptionProcedure, BuiltRouter, CombinedDataTransformer, CreateContextCallback, CreateRouterOptions, DataTransformer, DecorateCreateRouterOptions, DeepPartial, DefaultErrorData, DefaultErrorShape, Dict, ErrorFormatter, MergeRouters, MiddlewareBuilder, MiddlewareFunction, MutationProcedure, ProcedureBuilder, ProcedureType, QueryProcedure, RootConfig, RouterBuilder, RouterCaller, RouterCallerFactory, RouterDef, RouterRecord, RuntimeConfigOptions, StandardSchemaV1Error, SubscriptionProcedure, TRPCBuilder, TRPCError, TRPCErrorShape, TRPCRootObject, TRPC_ERROR_CODE_KEY, TRPC_ERROR_CODE_NUMBER, TrackedEnvelope, UnsetMarker, callProcedure, createFlatProxy, createRecursiveProxy, experimental_standaloneMiddleware, getErrorShape, getTRPCErrorFromUnknown, inferClientTypes, inferProcedureBuilderResolverOptions, inferProcedureInput, inferProcedureOutput, inferRouterContext, inferRouterError, inferRouterInputs, inferRouterOutputs, inferTransformedProcedureOutput, inferTransformedSubscriptionOutput, initTRPC, isTrackedEnvelope, lazy, sse, tracked, transformTRPCResponse } from "./unstable-core-do-not-import.d-x-roAJpB.mjs";
2
+ import { AnyClientTypes, AnyMiddlewareFunction, AnyMutationProcedure, AnyProcedure, AnyQueryProcedure, AnyRootTypes, AnyRouter, AnySubscriptionProcedure, BuiltRouter, CombinedDataTransformer, CreateContextCallback, CreateRouterOptions, DataTransformer, DecorateCreateRouterOptions, DeepPartial, DefaultErrorData, DefaultErrorShape, Dict, ErrorFormatter, MergeRouters, MiddlewareBuilder, MiddlewareFunction, MutationProcedure, ProcedureBuilder, ProcedureType, QueryProcedure, RootConfig, RouterBuilder, RouterCaller, RouterCallerFactory, RouterDef, RouterRecord, RuntimeConfigOptions, StandardSchemaV1Error, SubscriptionProcedure, TRPCBuilder, TRPCError, TRPCErrorShape, TRPCRootObject, TRPC_ERROR_CODE_KEY, TRPC_ERROR_CODE_NUMBER, TrackedEnvelope, UnsetMarker, callProcedure, createFlatProxy, createRecursiveProxy, experimental_standaloneMiddleware, getErrorShape, getTRPCErrorFromUnknown, inferClientTypes, inferProcedureBuilderResolverOptions, inferProcedureInput, inferProcedureOutput, inferRouterContext, inferRouterError, inferRouterInputs, inferRouterOutputs, inferTransformedProcedureOutput, inferTransformedSubscriptionOutput, initTRPC, isTrackedEnvelope, lazy, sse, tracked, transformTRPCResponse } from "./unstable-core-do-not-import.d-BqIRM5n2.mjs";
3
3
  import { inferAsyncReturnType } from "./index.d-vq_QHko2.mjs";
4
4
  export { AnyMiddlewareFunction, AnyMutationProcedure, AnyProcedure, AnyQueryProcedure, AnyRouter, AnySubscriptionProcedure, AnyClientTypes as AnyTRPCClientTypes, AnyMiddlewareFunction as AnyTRPCMiddlewareFunction, AnyMutationProcedure as AnyTRPCMutationProcedure, AnyProcedure as AnyTRPCProcedure, AnyQueryProcedure as AnyTRPCQueryProcedure, AnyRootTypes as AnyTRPCRootTypes, AnyRouter as AnyTRPCRouter, AnySubscriptionProcedure as AnyTRPCSubscriptionProcedure, CombinedDataTransformer, CreateContextCallback, DataTransformer, DeepPartial, Dict, ProcedureType, StandardSchemaV1Error, TRPCBuilder, BuiltRouter as TRPCBuiltRouter, CombinedDataTransformer as TRPCCombinedDataTransformer, CreateRouterOptions as TRPCCreateRouterOptions, DataTransformer as TRPCDataTransformer, DecorateCreateRouterOptions as TRPCDecorateCreateRouterOptions, DefaultErrorData as TRPCDefaultErrorData, DefaultErrorShape as TRPCDefaultErrorShape, TRPCError, ErrorFormatter as TRPCErrorFormatter, TRPCErrorShape, MergeRouters as TRPCMergeRouters, MiddlewareBuilder as TRPCMiddlewareBuilder, MiddlewareFunction as TRPCMiddlewareFunction, MutationProcedure as TRPCMutationProcedure, ProcedureBuilder as TRPCProcedureBuilder, ProcedureType as TRPCProcedureType, QueryProcedure as TRPCQueryProcedure, RootConfig as TRPCRootConfig, TRPCRootObject, RouterBuilder as TRPCRouterBuilder, RouterCaller as TRPCRouterCaller, RouterCallerFactory as TRPCRouterCallerFactory, RouterDef as TRPCRouterDef, RouterRecord as TRPCRouterRecord, RuntimeConfigOptions as TRPCRuntimeConfigOptions, SubscriptionProcedure as TRPCSubscriptionProcedure, UnsetMarker as TRPCUnsetMarker, TRPC_ERROR_CODE_KEY, TRPC_ERROR_CODE_NUMBER, TrackedEnvelope, callProcedure as callTRPCProcedure, createFlatProxy as createTRPCFlatProxy, createRecursiveProxy as createTRPCRecursiveProxy, lazy as experimental_lazy, experimental_standaloneMiddleware, experimental_standaloneMiddleware as experimental_trpcMiddleware, getErrorShape, getTRPCErrorFromUnknown, getErrorShape as getTRPCErrorShape, inferAsyncReturnType, inferProcedureBuilderResolverOptions, inferProcedureInput, inferProcedureOutput, inferRouterContext, inferRouterError, inferRouterInputs, inferRouterOutputs, inferClientTypes as inferTRPCClientTypes, inferTransformedProcedureOutput, inferTransformedSubscriptionOutput, initTRPC, isTrackedEnvelope, lazy, sse, tracked, transformTRPCResponse };
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
- import { createFlatProxy, createRecursiveProxy, getErrorShape } from "./getErrorShape-Uhlrl4Bk.mjs";
2
- import { TRPCError, callProcedure, getTRPCErrorFromUnknown, isTrackedEnvelope, lazy, sse, tracked, transformTRPCResponse } from "./tracked-BOPN0_Sr.mjs";
3
- import "./utils-DdbbrDku.mjs";
4
- import { StandardSchemaV1Error, experimental_standaloneMiddleware, initTRPC } from "./initTRPC-Bt3JfYTm.mjs";
1
+ import { createFlatProxy, createRecursiveProxy, getErrorShape } from "./getErrorShape-BH60iMC2.mjs";
2
+ import { TRPCError, callProcedure, getTRPCErrorFromUnknown, isTrackedEnvelope, lazy, sse, tracked, transformTRPCResponse } from "./tracked-Blz8XOf1.mjs";
3
+ import "./utils-CLZnJdb_.mjs";
4
+ import { StandardSchemaV1Error, experimental_standaloneMiddleware, initTRPC } from "./initTRPC-CB9uBez5.mjs";
5
5
 
6
6
  export { StandardSchemaV1Error, TRPCError, callProcedure as callTRPCProcedure, createFlatProxy as createTRPCFlatProxy, createRecursiveProxy as createTRPCRecursiveProxy, lazy as experimental_lazy, experimental_standaloneMiddleware, experimental_standaloneMiddleware as experimental_trpcMiddleware, getErrorShape, getTRPCErrorFromUnknown, getErrorShape as getTRPCErrorShape, initTRPC, isTrackedEnvelope, lazy, sse, tracked, transformTRPCResponse };
@@ -1,6 +1,6 @@
1
- import { __commonJS, __toESM, require_defineProperty, require_objectSpread2 } from "./getErrorShape-Uhlrl4Bk.mjs";
2
- import { TRPCError, createCallerFactory, createRouterFactory, defaultFormatter, defaultTransformer, getDataTransformer, getTRPCErrorFromUnknown, mergeRouters } from "./tracked-BOPN0_Sr.mjs";
3
- import { isObject, mergeWithoutOverrides } from "./utils-DdbbrDku.mjs";
1
+ import { __commonJS, __toESM, require_defineProperty, require_objectSpread2 } from "./getErrorShape-BH60iMC2.mjs";
2
+ import { TRPCError, createCallerFactory, createRouterFactory, defaultFormatter, defaultTransformer, getDataTransformer, getTRPCErrorFromUnknown, mergeRouters } from "./tracked-Blz8XOf1.mjs";
3
+ import { isObject, mergeWithoutOverrides } from "./utils-CLZnJdb_.mjs";
4
4
 
5
5
  //#region src/unstable-core-do-not-import/middleware.ts
6
6
  var import_objectSpread2$2 = __toESM(require_objectSpread2(), 1);
@@ -355,4 +355,4 @@ const initTRPC = new TRPCBuilder();
355
355
 
356
356
  //#endregion
357
357
  export { StandardSchemaV1Error, createBuilder, createInputMiddleware, createMiddlewareFactory, createOutputMiddleware, experimental_standaloneMiddleware, getParseFn, initTRPC, isServerDefault, middlewareMarker };
358
- //# sourceMappingURL=initTRPC-Bt3JfYTm.mjs.map
358
+ //# sourceMappingURL=initTRPC-CB9uBez5.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"initTRPC-Bt3JfYTm.mjs","names":["middlewares: AnyMiddlewareFunction[]","fn: MiddlewareFunction<\n TContext,\n TMeta,\n object,\n $ContextOverrides,\n TInputOut\n >","parse: ParseFn<TInput>","inputMiddleware: AnyMiddlewareFunction","parsedInput: ReturnType<typeof parse>","parse: ParseFn<TOutput>","outputMiddleware: AnyMiddlewareFunction","issues: ReadonlyArray<StandardSchemaV1.Issue>","procedureParser: Parser","_objectWithoutProperties","def1: AnyProcedureBuilderDef","def2: Partial<AnyProcedureBuilderDef>","initDef: Partial<AnyProcedureBuilderDef>","_def: AnyProcedureBuilderDef","builder: AnyProcedureBuilder","output: Parser","builder","resolver: ProcedureResolver<any, any, any, any, any, any>","_defIn: AnyProcedureBuilderDef & { type: ProcedureType }","resolver: AnyResolver","_def: AnyProcedure['_def']","index: number","opts: ProcedureCallOptions<any>","_nextOpts?: any","opts: ProcedureCallOptions<unknown>","isServerDefault: boolean","opts?: ValidateShape<TOptions, RuntimeConfigOptions<TContext, TMeta>>","config: RootConfig<$Root>","isServer: boolean"],"sources":["../src/unstable-core-do-not-import/middleware.ts","../src/vendor/standard-schema-v1/error.ts","../src/unstable-core-do-not-import/parser.ts","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectWithoutPropertiesLoose.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectWithoutProperties.js","../src/unstable-core-do-not-import/procedureBuilder.ts","../src/unstable-core-do-not-import/rootConfig.ts","../src/unstable-core-do-not-import/initTRPC.ts"],"sourcesContent":["import { TRPCError } from './error/TRPCError';\nimport type { ParseFn } from './parser';\nimport type { ProcedureType } from './procedure';\nimport type { GetRawInputFn, Overwrite, Simplify } from './types';\nimport { isObject } from './utils';\n\n/** @internal */\nexport const middlewareMarker = 'middlewareMarker' as 'middlewareMarker' & {\n __brand: 'middlewareMarker';\n};\ntype MiddlewareMarker = typeof middlewareMarker;\n\ninterface MiddlewareResultBase {\n /**\n * All middlewares should pass through their `next()`'s output.\n * Requiring this marker makes sure that can't be forgotten at compile-time.\n */\n readonly marker: MiddlewareMarker;\n}\n\ninterface MiddlewareOKResult<_TContextOverride> extends MiddlewareResultBase {\n ok: true;\n data: unknown;\n // this could be extended with `input`/`rawInput` later\n}\n\ninterface MiddlewareErrorResult<_TContextOverride>\n extends MiddlewareResultBase {\n ok: false;\n error: TRPCError;\n}\n\n/**\n * @internal\n */\nexport type MiddlewareResult<_TContextOverride> =\n | MiddlewareErrorResult<_TContextOverride>\n | MiddlewareOKResult<_TContextOverride>;\n\n/**\n * @internal\n */\nexport interface MiddlewareBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n> {\n /**\n * Create a new builder based on the current middleware builder\n */\n unstable_pipe<$ContextOverridesOut>(\n fn:\n | MiddlewareFunction<\n TContext,\n TMeta,\n TContextOverrides,\n $ContextOverridesOut,\n TInputOut\n >\n | MiddlewareBuilder<\n Overwrite<TContext, TContextOverrides>,\n TMeta,\n $ContextOverridesOut,\n TInputOut\n >,\n ): MiddlewareBuilder<\n TContext,\n TMeta,\n Overwrite<TContextOverrides, $ContextOverridesOut>,\n TInputOut\n >;\n\n /**\n * List of middlewares within this middleware builder\n */\n _middlewares: MiddlewareFunction<\n TContext,\n TMeta,\n TContextOverrides,\n object,\n TInputOut\n >[];\n}\n\n/**\n * @internal\n */\nexport type MiddlewareFunction<\n TContext,\n TMeta,\n TContextOverridesIn,\n $ContextOverridesOut,\n TInputOut,\n> = {\n (opts: {\n ctx: Simplify<Overwrite<TContext, TContextOverridesIn>>;\n type: ProcedureType;\n path: string;\n input: TInputOut;\n getRawInput: GetRawInputFn;\n meta: TMeta | undefined;\n signal: AbortSignal | undefined;\n next: {\n (): Promise<MiddlewareResult<TContextOverridesIn>>;\n <$ContextOverride>(opts: {\n ctx?: $ContextOverride;\n input?: unknown;\n }): Promise<MiddlewareResult<$ContextOverride>>;\n (opts: {\n getRawInput: GetRawInputFn;\n }): Promise<MiddlewareResult<TContextOverridesIn>>;\n };\n }): Promise<MiddlewareResult<$ContextOverridesOut>>;\n _type?: string | undefined;\n};\n\nexport type AnyMiddlewareFunction = MiddlewareFunction<any, any, any, any, any>;\nexport type AnyMiddlewareBuilder = MiddlewareBuilder<any, any, any, any>;\n/**\n * @internal\n */\nexport function createMiddlewareFactory<\n TContext,\n TMeta,\n TInputOut = unknown,\n>() {\n function createMiddlewareInner(\n middlewares: AnyMiddlewareFunction[],\n ): AnyMiddlewareBuilder {\n return {\n _middlewares: middlewares,\n unstable_pipe(middlewareBuilderOrFn) {\n const pipedMiddleware =\n '_middlewares' in middlewareBuilderOrFn\n ? middlewareBuilderOrFn._middlewares\n : [middlewareBuilderOrFn];\n\n return createMiddlewareInner([...middlewares, ...pipedMiddleware]);\n },\n };\n }\n\n function createMiddleware<$ContextOverrides>(\n fn: MiddlewareFunction<\n TContext,\n TMeta,\n object,\n $ContextOverrides,\n TInputOut\n >,\n ): MiddlewareBuilder<TContext, TMeta, $ContextOverrides, TInputOut> {\n return createMiddlewareInner([fn]);\n }\n\n return createMiddleware;\n}\n\n/**\n * Create a standalone middleware\n * @see https://trpc.io/docs/v11/server/middlewares#experimental-standalone-middlewares\n * @deprecated use `.concat()` instead\n */\nexport const experimental_standaloneMiddleware = <\n TCtx extends {\n ctx?: object;\n meta?: object;\n input?: unknown;\n },\n>() => ({\n create: createMiddlewareFactory<\n TCtx extends { ctx: infer T extends object } ? T : any,\n TCtx extends { meta: infer T extends object } ? T : object,\n TCtx extends { input: infer T } ? T : unknown\n >(),\n});\n\n/**\n * @internal\n * Please note, `trpc-openapi` uses this function.\n */\nexport function createInputMiddleware<TInput>(parse: ParseFn<TInput>) {\n const inputMiddleware: AnyMiddlewareFunction =\n async function inputValidatorMiddleware(opts) {\n let parsedInput: ReturnType<typeof parse>;\n\n const rawInput = await opts.getRawInput();\n try {\n parsedInput = await parse(rawInput);\n } catch (cause) {\n throw new TRPCError({\n code: 'BAD_REQUEST',\n cause,\n });\n }\n\n // Multiple input parsers\n const combinedInput =\n isObject(opts.input) && isObject(parsedInput)\n ? {\n ...opts.input,\n ...parsedInput,\n }\n : parsedInput;\n\n return opts.next({ input: combinedInput });\n };\n inputMiddleware._type = 'input';\n return inputMiddleware;\n}\n\n/**\n * @internal\n */\nexport function createOutputMiddleware<TOutput>(parse: ParseFn<TOutput>) {\n const outputMiddleware: AnyMiddlewareFunction =\n async function outputValidatorMiddleware({ next }) {\n const result = await next();\n if (!result.ok) {\n // pass through failures without validating\n return result;\n }\n try {\n const data = await parse(result.data);\n return {\n ...result,\n data,\n };\n } catch (cause) {\n throw new TRPCError({\n message: 'Output validation failed',\n code: 'INTERNAL_SERVER_ERROR',\n cause,\n });\n }\n };\n outputMiddleware._type = 'output';\n return outputMiddleware;\n}\n","import type { StandardSchemaV1 } from \"./spec\";\n\n/** A schema error with useful information. */\n\nexport class StandardSchemaV1Error extends Error {\n /** The schema issues. */\n public readonly issues: ReadonlyArray<StandardSchemaV1.Issue>;\n\n /**\n * Creates a schema error with useful information.\n *\n * @param issues The schema issues.\n */\n constructor(issues: ReadonlyArray<StandardSchemaV1.Issue>) {\n super(issues[0]?.message);\n this.name = 'SchemaError';\n this.issues = issues;\n }\n}\n","import { StandardSchemaV1Error } from '../vendor/standard-schema-v1/error';\nimport { type StandardSchemaV1 } from '../vendor/standard-schema-v1/spec';\n\n// zod / typeschema\nexport type ParserZodEsque<TInput, TParsedInput> = {\n _input: TInput;\n _output: TParsedInput;\n};\n\nexport type ParserValibotEsque<TInput, TParsedInput> = {\n schema: {\n _types?: {\n input: TInput;\n output: TParsedInput;\n };\n };\n};\n\nexport type ParserArkTypeEsque<TInput, TParsedInput> = {\n inferIn: TInput;\n infer: TParsedInput;\n};\n\nexport type ParserStandardSchemaEsque<TInput, TParsedInput> = StandardSchemaV1<\n TInput,\n TParsedInput\n>;\n\nexport type ParserMyZodEsque<TInput> = {\n parse: (input: any) => TInput;\n};\n\nexport type ParserSuperstructEsque<TInput> = {\n create: (input: unknown) => TInput;\n};\n\nexport type ParserCustomValidatorEsque<TInput> = (\n input: unknown,\n) => Promise<TInput> | TInput;\n\nexport type ParserYupEsque<TInput> = {\n validateSync: (input: unknown) => TInput;\n};\n\nexport type ParserScaleEsque<TInput> = {\n assert(value: unknown): asserts value is TInput;\n};\n\nexport type ParserWithoutInput<TInput> =\n | ParserCustomValidatorEsque<TInput>\n | ParserMyZodEsque<TInput>\n | ParserScaleEsque<TInput>\n | ParserSuperstructEsque<TInput>\n | ParserYupEsque<TInput>;\n\nexport type ParserWithInputOutput<TInput, TParsedInput> =\n | ParserZodEsque<TInput, TParsedInput>\n | ParserValibotEsque<TInput, TParsedInput>\n | ParserArkTypeEsque<TInput, TParsedInput>\n | ParserStandardSchemaEsque<TInput, TParsedInput>;\n\nexport type Parser = ParserWithInputOutput<any, any> | ParserWithoutInput<any>;\n\nexport type inferParser<TParser extends Parser> =\n TParser extends ParserStandardSchemaEsque<infer $TIn, infer $TOut>\n ? {\n in: $TIn;\n out: $TOut;\n }\n : TParser extends ParserWithInputOutput<infer $TIn, infer $TOut>\n ? {\n in: $TIn;\n out: $TOut;\n }\n : TParser extends ParserWithoutInput<infer $InOut>\n ? {\n in: $InOut;\n out: $InOut;\n }\n : never;\n\nexport type ParseFn<TType> = (value: unknown) => Promise<TType> | TType;\n\nexport function getParseFn<TType>(procedureParser: Parser): ParseFn<TType> {\n const parser = procedureParser as any;\n const isStandardSchema = '~standard' in parser;\n\n if (typeof parser === 'function' && typeof parser.assert === 'function') {\n // ParserArkTypeEsque - arktype schemas shouldn't be called as a function because they return a union type instead of throwing\n return parser.assert.bind(parser);\n }\n\n if (typeof parser === 'function' && !isStandardSchema) {\n // ParserValibotEsque (>= v0.31.0)\n // ParserCustomValidatorEsque - note the check for standard-schema conformance - some libraries like `effect` use function schemas which are *not* a \"parse\" function.\n return parser;\n }\n\n if (typeof parser.parseAsync === 'function') {\n // ParserZodEsque\n return parser.parseAsync.bind(parser);\n }\n\n if (typeof parser.parse === 'function') {\n // ParserZodEsque\n // ParserValibotEsque (< v0.13.0)\n return parser.parse.bind(parser);\n }\n\n if (typeof parser.validateSync === 'function') {\n // ParserYupEsque\n return parser.validateSync.bind(parser);\n }\n\n if (typeof parser.create === 'function') {\n // ParserSuperstructEsque\n return parser.create.bind(parser);\n }\n\n if (typeof parser.assert === 'function') {\n // ParserScaleEsque\n return (value) => {\n parser.assert(value);\n return value as TType;\n };\n }\n\n if (isStandardSchema) {\n // StandardSchemaEsque\n return async (value) => {\n const result = await parser['~standard'].validate(value);\n if (result.issues) {\n throw new StandardSchemaV1Error(result.issues);\n }\n return result.value;\n };\n }\n\n throw new Error('Could not find a validator fn');\n}\n","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nmodule.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import type { inferObservableValue, Observable } from '../observable';\nimport { getTRPCErrorFromUnknown, TRPCError } from './error/TRPCError';\nimport type {\n AnyMiddlewareFunction,\n MiddlewareBuilder,\n MiddlewareFunction,\n MiddlewareResult,\n} from './middleware';\nimport {\n createInputMiddleware,\n createOutputMiddleware,\n middlewareMarker,\n} from './middleware';\nimport type { inferParser, Parser } from './parser';\nimport { getParseFn } from './parser';\nimport type {\n AnyMutationProcedure,\n AnyProcedure,\n AnyQueryProcedure,\n LegacyObservableSubscriptionProcedure,\n MutationProcedure,\n ProcedureType,\n QueryProcedure,\n SubscriptionProcedure,\n} from './procedure';\nimport type { inferTrackedOutput } from './stream/tracked';\nimport type {\n GetRawInputFn,\n MaybePromise,\n Overwrite,\n Simplify,\n TypeError,\n} from './types';\nimport type { UnsetMarker } from './utils';\nimport { mergeWithoutOverrides } from './utils';\n\ntype IntersectIfDefined<TType, TWith> = TType extends UnsetMarker\n ? TWith\n : TWith extends UnsetMarker\n ? TType\n : Simplify<TType & TWith>;\n\ntype DefaultValue<TValue, TFallback> = TValue extends UnsetMarker\n ? TFallback\n : TValue;\n\ntype inferAsyncIterable<TOutput> =\n TOutput extends AsyncIterable<infer $Yield, infer $Return, infer $Next>\n ? {\n yield: $Yield;\n return: $Return;\n next: $Next;\n }\n : never;\ntype inferSubscriptionOutput<TOutput> =\n TOutput extends AsyncIterable<any>\n ? AsyncIterable<\n inferTrackedOutput<inferAsyncIterable<TOutput>['yield']>,\n inferAsyncIterable<TOutput>['return'],\n inferAsyncIterable<TOutput>['next']\n >\n : TypeError<'Subscription output could not be inferred'>;\n\nexport type CallerOverride<TContext> = (opts: {\n args: unknown[];\n invoke: (opts: ProcedureCallOptions<TContext>) => Promise<unknown>;\n _def: AnyProcedure['_def'];\n}) => Promise<unknown>;\ntype ProcedureBuilderDef<TMeta> = {\n procedure: true;\n inputs: Parser[];\n output?: Parser;\n meta?: TMeta;\n resolver?: ProcedureBuilderResolver;\n middlewares: AnyMiddlewareFunction[];\n /**\n * @deprecated use `type` instead\n */\n mutation?: boolean;\n /**\n * @deprecated use `type` instead\n */\n query?: boolean;\n /**\n * @deprecated use `type` instead\n */\n subscription?: boolean;\n type?: ProcedureType;\n caller?: CallerOverride<unknown>;\n};\n\ntype AnyProcedureBuilderDef = ProcedureBuilderDef<any>;\n\n/**\n * Procedure resolver options (what the `.query()`, `.mutation()`, and `.subscription()` functions receive)\n * @internal\n */\nexport interface ProcedureResolverOptions<\n TContext,\n _TMeta,\n TContextOverridesIn,\n TInputOut,\n> {\n ctx: Simplify<Overwrite<TContext, TContextOverridesIn>>;\n input: TInputOut extends UnsetMarker ? undefined : TInputOut;\n /**\n * The AbortSignal of the request\n */\n signal: AbortSignal | undefined;\n /**\n * The path of the procedure\n */\n path: string;\n}\n\n/**\n * A procedure resolver\n */\ntype ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputParserIn,\n $Output,\n> = (\n opts: ProcedureResolverOptions<TContext, TMeta, TContextOverrides, TInputOut>,\n) => MaybePromise<\n // If an output parser is defined, we need to return what the parser expects, otherwise we return the inferred type\n DefaultValue<TOutputParserIn, $Output>\n>;\n\ntype AnyResolver = ProcedureResolver<any, any, any, any, any, any>;\nexport type AnyProcedureBuilder = ProcedureBuilder<\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n any\n>;\n\n/**\n * Infer the context type from a procedure builder\n * Useful to create common helper functions for different procedures\n */\nexport type inferProcedureBuilderResolverOptions<\n TProcedureBuilder extends AnyProcedureBuilder,\n> =\n TProcedureBuilder extends ProcedureBuilder<\n infer TContext,\n infer TMeta,\n infer TContextOverrides,\n infer _TInputIn,\n infer TInputOut,\n infer _TOutputIn,\n infer _TOutputOut,\n infer _TCaller\n >\n ? ProcedureResolverOptions<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut extends UnsetMarker\n ? // if input is not set, we don't want to infer it as `undefined` since a procedure further down the chain might have set an input\n unknown\n : TInputOut extends object\n ? Simplify<\n TInputOut & {\n /**\n * Extra input params might have been added by a `.input()` further down the chain\n */\n [keyAddedByInputCallFurtherDown: string]: unknown;\n }\n >\n : TInputOut\n >\n : never;\n\nexport interface ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputIn,\n TInputOut,\n TOutputIn,\n TOutputOut,\n TCaller extends boolean,\n> {\n /**\n * Add an input parser to the procedure.\n * @see https://trpc.io/docs/v11/server/validators\n */\n input<$Parser extends Parser>(\n schema: TInputOut extends UnsetMarker\n ? $Parser\n : inferParser<$Parser>['out'] extends Record<string, unknown> | undefined\n ? TInputOut extends Record<string, unknown> | undefined\n ? undefined extends inferParser<$Parser>['out'] // if current is optional the previous must be too\n ? undefined extends TInputOut\n ? $Parser\n : TypeError<'Cannot chain an optional parser to a required parser'>\n : $Parser\n : TypeError<'All input parsers did not resolve to an object'>\n : TypeError<'All input parsers did not resolve to an object'>,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n IntersectIfDefined<TInputIn, inferParser<$Parser>['in']>,\n IntersectIfDefined<TInputOut, inferParser<$Parser>['out']>,\n TOutputIn,\n TOutputOut,\n TCaller\n >;\n /**\n * Add an output parser to the procedure.\n * @see https://trpc.io/docs/v11/server/validators\n */\n output<$Parser extends Parser>(\n schema: $Parser,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputIn,\n TInputOut,\n IntersectIfDefined<TOutputIn, inferParser<$Parser>['in']>,\n IntersectIfDefined<TOutputOut, inferParser<$Parser>['out']>,\n TCaller\n >;\n /**\n * Add a meta data to the procedure.\n * @see https://trpc.io/docs/v11/server/metadata\n */\n meta(\n meta: TMeta,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputIn,\n TInputOut,\n TOutputIn,\n TOutputOut,\n TCaller\n >;\n /**\n * Add a middleware to the procedure.\n * @see https://trpc.io/docs/v11/server/middlewares\n */\n use<$ContextOverridesOut>(\n fn:\n | MiddlewareBuilder<\n Overwrite<TContext, TContextOverrides>,\n TMeta,\n $ContextOverridesOut,\n TInputOut\n >\n | MiddlewareFunction<\n TContext,\n TMeta,\n TContextOverrides,\n $ContextOverridesOut,\n TInputOut\n >,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n Overwrite<TContextOverrides, $ContextOverridesOut>,\n TInputIn,\n TInputOut,\n TOutputIn,\n TOutputOut,\n TCaller\n >;\n\n /**\n * @deprecated use {@link concat} instead\n */\n unstable_concat<\n $Context,\n $Meta,\n $ContextOverrides,\n $InputIn,\n $InputOut,\n $OutputIn,\n $OutputOut,\n >(\n builder: Overwrite<TContext, TContextOverrides> extends $Context\n ? TMeta extends $Meta\n ? ProcedureBuilder<\n $Context,\n $Meta,\n $ContextOverrides,\n $InputIn,\n $InputOut,\n $OutputIn,\n $OutputOut,\n TCaller\n >\n : TypeError<'Meta mismatch'>\n : TypeError<'Context mismatch'>,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n Overwrite<TContextOverrides, $ContextOverrides>,\n IntersectIfDefined<TInputIn, $InputIn>,\n IntersectIfDefined<TInputOut, $InputOut>,\n IntersectIfDefined<TOutputIn, $OutputIn>,\n IntersectIfDefined<TOutputOut, $OutputOut>,\n TCaller\n >;\n\n /**\n * Combine two procedure builders\n */\n concat<\n $Context,\n $Meta,\n $ContextOverrides,\n $InputIn,\n $InputOut,\n $OutputIn,\n $OutputOut,\n >(\n builder: Overwrite<TContext, TContextOverrides> extends $Context\n ? TMeta extends $Meta\n ? ProcedureBuilder<\n $Context,\n $Meta,\n $ContextOverrides,\n $InputIn,\n $InputOut,\n $OutputIn,\n $OutputOut,\n TCaller\n >\n : TypeError<'Meta mismatch'>\n : TypeError<'Context mismatch'>,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n Overwrite<TContextOverrides, $ContextOverrides>,\n IntersectIfDefined<TInputIn, $InputIn>,\n IntersectIfDefined<TInputOut, $InputOut>,\n IntersectIfDefined<TOutputIn, $OutputIn>,\n IntersectIfDefined<TOutputOut, $OutputOut>,\n TCaller\n >;\n /**\n * Query procedure\n * @see https://trpc.io/docs/v11/concepts#vocabulary\n */\n query<$Output>(\n resolver: ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputIn,\n $Output\n >,\n ): TCaller extends true\n ? (\n input: DefaultValue<TInputIn, void>,\n ) => Promise<DefaultValue<TOutputOut, $Output>>\n : QueryProcedure<{\n input: DefaultValue<TInputIn, void>;\n output: DefaultValue<TOutputOut, $Output>;\n meta: TMeta;\n }>;\n\n /**\n * Mutation procedure\n * @see https://trpc.io/docs/v11/concepts#vocabulary\n */\n mutation<$Output>(\n resolver: ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputIn,\n $Output\n >,\n ): TCaller extends true\n ? (\n input: DefaultValue<TInputIn, void>,\n ) => Promise<DefaultValue<TOutputOut, $Output>>\n : MutationProcedure<{\n input: DefaultValue<TInputIn, void>;\n output: DefaultValue<TOutputOut, $Output>;\n meta: TMeta;\n }>;\n\n /**\n * Subscription procedure\n * @see https://trpc.io/docs/v11/server/subscriptions\n */\n subscription<$Output extends AsyncIterable<any, void, any>>(\n resolver: ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputIn,\n $Output\n >,\n ): TCaller extends true\n ? TypeError<'Not implemented'>\n : SubscriptionProcedure<{\n input: DefaultValue<TInputIn, void>;\n output: inferSubscriptionOutput<DefaultValue<TOutputOut, $Output>>;\n meta: TMeta;\n }>;\n /**\n * @deprecated Using subscriptions with an observable is deprecated. Use an async generator instead.\n * This feature will be removed in v12 of tRPC.\n * @see https://trpc.io/docs/v11/server/subscriptions\n */\n subscription<$Output extends Observable<any, any>>(\n resolver: ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputIn,\n $Output\n >,\n ): TCaller extends true\n ? TypeError<'Not implemented'>\n : LegacyObservableSubscriptionProcedure<{\n input: DefaultValue<TInputIn, void>;\n output: inferObservableValue<DefaultValue<TOutputOut, $Output>>;\n meta: TMeta;\n }>;\n /**\n * Overrides the way a procedure is invoked\n * Do not use this unless you know what you're doing - this is an experimental API\n */\n experimental_caller(\n caller: CallerOverride<TContext>,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputIn,\n TInputOut,\n TOutputIn,\n TOutputOut,\n true\n >;\n /**\n * @internal\n */\n _def: ProcedureBuilderDef<TMeta>;\n}\n\ntype ProcedureBuilderResolver = (\n opts: ProcedureResolverOptions<any, any, any, any>,\n) => Promise<unknown>;\n\nfunction createNewBuilder(\n def1: AnyProcedureBuilderDef,\n def2: Partial<AnyProcedureBuilderDef>,\n): AnyProcedureBuilder {\n const { middlewares = [], inputs, meta, ...rest } = def2;\n\n // TODO: maybe have a fn here to warn about calls\n return createBuilder({\n ...mergeWithoutOverrides(def1, rest),\n inputs: [...def1.inputs, ...(inputs ?? [])],\n middlewares: [...def1.middlewares, ...middlewares],\n meta: def1.meta && meta ? { ...def1.meta, ...meta } : (meta ?? def1.meta),\n });\n}\n\nexport function createBuilder<TContext, TMeta>(\n initDef: Partial<AnyProcedureBuilderDef> = {},\n): ProcedureBuilder<\n TContext,\n TMeta,\n object,\n UnsetMarker,\n UnsetMarker,\n UnsetMarker,\n UnsetMarker,\n false\n> {\n const _def: AnyProcedureBuilderDef = {\n procedure: true,\n inputs: [],\n middlewares: [],\n ...initDef,\n };\n\n const builder: AnyProcedureBuilder = {\n _def,\n input(input) {\n const parser = getParseFn(input as Parser);\n return createNewBuilder(_def, {\n inputs: [input as Parser],\n middlewares: [createInputMiddleware(parser)],\n });\n },\n output(output: Parser) {\n const parser = getParseFn(output);\n return createNewBuilder(_def, {\n output,\n middlewares: [createOutputMiddleware(parser)],\n });\n },\n meta(meta) {\n return createNewBuilder(_def, {\n meta,\n });\n },\n use(middlewareBuilderOrFn) {\n // Distinguish between a middleware builder and a middleware function\n const middlewares =\n '_middlewares' in middlewareBuilderOrFn\n ? middlewareBuilderOrFn._middlewares\n : [middlewareBuilderOrFn];\n\n return createNewBuilder(_def, {\n middlewares: middlewares,\n });\n },\n unstable_concat(builder) {\n return createNewBuilder(_def, (builder as AnyProcedureBuilder)._def);\n },\n concat(builder) {\n return createNewBuilder(_def, (builder as AnyProcedureBuilder)._def);\n },\n query(resolver) {\n return createResolver(\n { ..._def, type: 'query' },\n resolver,\n ) as AnyQueryProcedure;\n },\n mutation(resolver) {\n return createResolver(\n { ..._def, type: 'mutation' },\n resolver,\n ) as AnyMutationProcedure;\n },\n subscription(resolver: ProcedureResolver<any, any, any, any, any, any>) {\n return createResolver({ ..._def, type: 'subscription' }, resolver) as any;\n },\n experimental_caller(caller) {\n return createNewBuilder(_def, {\n caller,\n }) as any;\n },\n };\n\n return builder;\n}\n\nfunction createResolver(\n _defIn: AnyProcedureBuilderDef & { type: ProcedureType },\n resolver: AnyResolver,\n) {\n const finalBuilder = createNewBuilder(_defIn, {\n resolver,\n middlewares: [\n async function resolveMiddleware(opts) {\n const data = await resolver(opts);\n return {\n marker: middlewareMarker,\n ok: true,\n data,\n ctx: opts.ctx,\n } as const;\n },\n ],\n });\n const _def: AnyProcedure['_def'] = {\n ...finalBuilder._def,\n type: _defIn.type,\n experimental_caller: Boolean(finalBuilder._def.caller),\n meta: finalBuilder._def.meta,\n $types: null as any,\n };\n\n const invoke = createProcedureCaller(finalBuilder._def);\n const callerOverride = finalBuilder._def.caller;\n if (!callerOverride) {\n return invoke;\n }\n const callerWrapper = async (...args: unknown[]) => {\n return await callerOverride({\n args,\n invoke,\n _def: _def,\n });\n };\n\n callerWrapper._def = _def;\n\n return callerWrapper;\n}\n\n/**\n * @internal\n */\nexport interface ProcedureCallOptions<TContext> {\n ctx: TContext;\n getRawInput: GetRawInputFn;\n input?: unknown;\n path: string;\n type: ProcedureType;\n signal: AbortSignal | undefined;\n}\n\nconst codeblock = `\nThis is a client-only function.\nIf you want to call this function on the server, see https://trpc.io/docs/v11/server/server-side-calls\n`.trim();\n\n// run the middlewares recursively with the resolver as the last one\nasync function callRecursive(\n index: number,\n _def: AnyProcedureBuilderDef,\n opts: ProcedureCallOptions<any>,\n): Promise<MiddlewareResult<any>> {\n try {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const middleware = _def.middlewares[index]!;\n const result = await middleware({\n ...opts,\n meta: _def.meta,\n input: opts.input,\n next(_nextOpts?: any) {\n const nextOpts = _nextOpts as\n | {\n ctx?: Record<string, unknown>;\n input?: unknown;\n getRawInput?: GetRawInputFn;\n }\n | undefined;\n\n return callRecursive(index + 1, _def, {\n ...opts,\n ctx: nextOpts?.ctx ? { ...opts.ctx, ...nextOpts.ctx } : opts.ctx,\n input: nextOpts && 'input' in nextOpts ? nextOpts.input : opts.input,\n getRawInput: nextOpts?.getRawInput ?? opts.getRawInput,\n });\n },\n });\n\n return result;\n } catch (cause) {\n return {\n ok: false,\n error: getTRPCErrorFromUnknown(cause),\n marker: middlewareMarker,\n };\n }\n}\n\nfunction createProcedureCaller(_def: AnyProcedureBuilderDef): AnyProcedure {\n async function procedure(opts: ProcedureCallOptions<unknown>) {\n // is direct server-side call\n if (!opts || !('getRawInput' in opts)) {\n throw new Error(codeblock);\n }\n\n // there's always at least one \"next\" since we wrap this.resolver in a middleware\n const result = await callRecursive(0, _def, opts);\n\n if (!result) {\n throw new TRPCError({\n code: 'INTERNAL_SERVER_ERROR',\n message:\n 'No result from middlewares - did you forget to `return next()`?',\n });\n }\n if (!result.ok) {\n // re-throw original error\n throw result.error;\n }\n return result.data;\n }\n\n procedure._def = _def;\n procedure.procedure = true;\n procedure.meta = _def.meta;\n\n // FIXME typecast shouldn't be needed - fixittt\n return procedure as unknown as AnyProcedure;\n}\n","import type { CombinedDataTransformer } from '../unstable-core-do-not-import';\nimport type { DefaultErrorShape, ErrorFormatter } from './error/formatter';\nimport type { JSONLProducerOptions } from './stream/jsonl';\nimport type { SSEStreamProducerOptions } from './stream/sse';\n\n/**\n * The initial generics that are used in the init function\n * @internal\n */\nexport interface RootTypes {\n ctx: object;\n meta: object;\n errorShape: DefaultErrorShape;\n transformer: boolean;\n}\n\n/**\n * The default check to see if we're in a server\n */\nexport const isServerDefault: boolean =\n typeof window === 'undefined' ||\n 'Deno' in window ||\n // eslint-disable-next-line @typescript-eslint/dot-notation\n globalThis.process?.env?.['NODE_ENV'] === 'test' ||\n !!globalThis.process?.env?.['JEST_WORKER_ID'] ||\n !!globalThis.process?.env?.['VITEST_WORKER_ID'];\n\n/**\n * The tRPC root config\n * @internal\n */\nexport interface RootConfig<TTypes extends RootTypes> {\n /**\n * The types that are used in the config\n * @internal\n */\n $types: TTypes;\n /**\n * Use a data transformer\n * @see https://trpc.io/docs/v11/data-transformers\n */\n transformer: CombinedDataTransformer;\n /**\n * Use custom error formatting\n * @see https://trpc.io/docs/v11/error-formatting\n */\n errorFormatter: ErrorFormatter<TTypes['ctx'], TTypes['errorShape']>;\n /**\n * Allow `@trpc/server` to run in non-server environments\n * @warning **Use with caution**, this should likely mainly be used within testing.\n * @default false\n */\n allowOutsideOfServer: boolean;\n /**\n * Is this a server environment?\n * @warning **Use with caution**, this should likely mainly be used within testing.\n * @default typeof window === 'undefined' || 'Deno' in window || process.env.NODE_ENV === 'test'\n */\n isServer: boolean;\n /**\n * Is this development?\n * Will be used to decide if the API should return stack traces\n * @default process.env.NODE_ENV !== 'production'\n */\n isDev: boolean;\n\n defaultMeta?: TTypes['meta'] extends object ? TTypes['meta'] : never;\n\n /**\n * Options for server-sent events (SSE) subscriptions\n * @see https://trpc.io/docs/client/links/httpSubscriptionLink\n */\n sse?: {\n /**\n * Enable server-sent events (SSE) subscriptions\n * @default true\n */\n enabled?: boolean;\n } & Pick<\n SSEStreamProducerOptions,\n 'ping' | 'emitAndEndImmediately' | 'maxDurationMs' | 'client'\n >;\n\n /**\n * Options for batch stream\n * @see https://trpc.io/docs/client/links/httpBatchStreamLink\n */\n jsonl?: Pick<JSONLProducerOptions, 'pingMs'>;\n experimental?: {};\n}\n\n/**\n * @internal\n */\nexport type CreateRootTypes<TGenerics extends RootTypes> = TGenerics;\n\nexport type AnyRootTypes = CreateRootTypes<{\n ctx: any;\n meta: any;\n errorShape: any;\n transformer: any;\n}>;\n\ntype PartialIf<TCondition extends boolean, TType> = TCondition extends true\n ? Partial<TType>\n : TType;\n\n/**\n * Adds a `createContext` option with a given callback function\n * If context is the default value, then the `createContext` option is optional\n */\nexport type CreateContextCallback<\n TContext,\n TFunction extends (...args: any[]) => any,\n> = PartialIf<\n object extends TContext ? true : false,\n {\n /**\n * @see https://trpc.io/docs/v11/context\n **/\n createContext: TFunction;\n }\n>;\n","import {\n defaultFormatter,\n type DefaultErrorShape,\n type ErrorFormatter,\n} from './error/formatter';\nimport type { MiddlewareBuilder, MiddlewareFunction } from './middleware';\nimport { createMiddlewareFactory } from './middleware';\nimport type { ProcedureBuilder } from './procedureBuilder';\nimport { createBuilder } from './procedureBuilder';\nimport type { AnyRootTypes, CreateRootTypes } from './rootConfig';\nimport { isServerDefault, type RootConfig } from './rootConfig';\nimport type {\n AnyRouter,\n MergeRouters,\n RouterBuilder,\n RouterCallerFactory,\n} from './router';\nimport {\n createCallerFactory,\n createRouterFactory,\n mergeRouters,\n} from './router';\nimport type { DataTransformerOptions } from './transformer';\nimport { defaultTransformer, getDataTransformer } from './transformer';\nimport type { Unwrap, ValidateShape } from './types';\nimport type { UnsetMarker } from './utils';\n\ntype inferErrorFormatterShape<TType> =\n TType extends ErrorFormatter<any, infer TShape> ? TShape : DefaultErrorShape;\n/** @internal */\nexport interface RuntimeConfigOptions<\n TContext extends object,\n TMeta extends object,\n> extends Partial<\n Omit<\n RootConfig<{\n ctx: TContext;\n meta: TMeta;\n errorShape: any;\n transformer: any;\n }>,\n '$types' | 'transformer'\n >\n > {\n /**\n * Use a data transformer\n * @see https://trpc.io/docs/v11/data-transformers\n */\n transformer?: DataTransformerOptions;\n}\n\ntype ContextCallback = (...args: any[]) => object | Promise<object>;\n\nexport interface TRPCRootObject<\n TContext extends object,\n TMeta extends object,\n TOptions extends RuntimeConfigOptions<TContext, TMeta>,\n $Root extends AnyRootTypes = {\n ctx: TContext;\n meta: TMeta;\n errorShape: undefined extends TOptions['errorFormatter']\n ? DefaultErrorShape\n : inferErrorFormatterShape<TOptions['errorFormatter']>;\n transformer: undefined extends TOptions['transformer'] ? false : true;\n },\n> {\n /**\n * Your router config\n * @internal\n */\n _config: RootConfig<$Root>;\n\n /**\n * Builder object for creating procedures\n * @see https://trpc.io/docs/v11/server/procedures\n */\n procedure: ProcedureBuilder<\n TContext,\n TMeta,\n object,\n UnsetMarker,\n UnsetMarker,\n UnsetMarker,\n UnsetMarker,\n false\n >;\n\n /**\n * Create reusable middlewares\n * @see https://trpc.io/docs/v11/server/middlewares\n */\n middleware: <$ContextOverrides>(\n fn: MiddlewareFunction<TContext, TMeta, object, $ContextOverrides, unknown>,\n ) => MiddlewareBuilder<TContext, TMeta, $ContextOverrides, unknown>;\n\n /**\n * Create a router\n * @see https://trpc.io/docs/v11/server/routers\n */\n router: RouterBuilder<$Root>;\n\n /**\n * Merge Routers\n * @see https://trpc.io/docs/v11/server/merging-routers\n */\n mergeRouters: <TRouters extends AnyRouter[]>(\n ...routerList: [...TRouters]\n ) => MergeRouters<TRouters>;\n\n /**\n * Create a server-side caller for a router\n * @see https://trpc.io/docs/v11/server/server-side-calls\n */\n createCallerFactory: RouterCallerFactory<$Root>;\n}\n\nclass TRPCBuilder<TContext extends object, TMeta extends object> {\n /**\n * Add a context shape as a generic to the root object\n * @see https://trpc.io/docs/v11/server/context\n */\n context<TNewContext extends object | ContextCallback>() {\n return new TRPCBuilder<\n TNewContext extends ContextCallback ? Unwrap<TNewContext> : TNewContext,\n TMeta\n >();\n }\n\n /**\n * Add a meta shape as a generic to the root object\n * @see https://trpc.io/docs/v11/quickstart\n */\n meta<TNewMeta extends object>() {\n return new TRPCBuilder<TContext, TNewMeta>();\n }\n\n /**\n * Create the root object\n * @see https://trpc.io/docs/v11/server/routers#initialize-trpc\n */\n create<TOptions extends RuntimeConfigOptions<TContext, TMeta>>(\n opts?: ValidateShape<TOptions, RuntimeConfigOptions<TContext, TMeta>>,\n ): TRPCRootObject<TContext, TMeta, TOptions> {\n type $Root = CreateRootTypes<{\n ctx: TContext;\n meta: TMeta;\n errorShape: undefined extends TOptions['errorFormatter']\n ? DefaultErrorShape\n : inferErrorFormatterShape<TOptions['errorFormatter']>;\n transformer: undefined extends TOptions['transformer'] ? false : true;\n }>;\n\n const config: RootConfig<$Root> = {\n ...opts,\n transformer: getDataTransformer(opts?.transformer ?? defaultTransformer),\n isDev:\n opts?.isDev ??\n // eslint-disable-next-line @typescript-eslint/dot-notation\n globalThis.process?.env['NODE_ENV'] !== 'production',\n allowOutsideOfServer: opts?.allowOutsideOfServer ?? false,\n errorFormatter: opts?.errorFormatter ?? defaultFormatter,\n isServer: opts?.isServer ?? isServerDefault,\n /**\n * These are just types, they can't be used at runtime\n * @internal\n */\n $types: null as any,\n };\n\n {\n // Server check\n const isServer: boolean = opts?.isServer ?? isServerDefault;\n\n if (!isServer && opts?.allowOutsideOfServer !== true) {\n throw new Error(\n `You're trying to use @trpc/server in a non-server environment. This is not supported by default.`,\n );\n }\n }\n return {\n /**\n * Your router config\n * @internal\n */\n _config: config,\n /**\n * Builder object for creating procedures\n * @see https://trpc.io/docs/v11/server/procedures\n */\n procedure: createBuilder<$Root['ctx'], $Root['meta']>({\n meta: opts?.defaultMeta,\n }),\n /**\n * Create reusable middlewares\n * @see https://trpc.io/docs/v11/server/middlewares\n */\n middleware: createMiddlewareFactory<$Root['ctx'], $Root['meta']>(),\n /**\n * Create a router\n * @see https://trpc.io/docs/v11/server/routers\n */\n router: createRouterFactory<$Root>(config),\n /**\n * Merge Routers\n * @see https://trpc.io/docs/v11/server/merging-routers\n */\n mergeRouters,\n /**\n * Create a server-side caller for a router\n * @see https://trpc.io/docs/v11/server/server-side-calls\n */\n createCallerFactory: createCallerFactory<$Root>(),\n };\n }\n}\n\n/**\n * Builder to initialize the tRPC root object - use this exactly once per backend\n * @see https://trpc.io/docs/v11/quickstart\n */\nexport const initTRPC = new TRPCBuilder();\nexport type { TRPCBuilder };\n"],"x_google_ignoreList":[3,4],"mappings":"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"}
1
+ {"version":3,"file":"initTRPC-CB9uBez5.mjs","names":["middlewares: AnyMiddlewareFunction[]","fn: MiddlewareFunction<\n TContext,\n TMeta,\n object,\n $ContextOverrides,\n TInputOut\n >","parse: ParseFn<TInput>","inputMiddleware: AnyMiddlewareFunction","parsedInput: ReturnType<typeof parse>","parse: ParseFn<TOutput>","outputMiddleware: AnyMiddlewareFunction","issues: ReadonlyArray<StandardSchemaV1.Issue>","procedureParser: Parser","_objectWithoutProperties","def1: AnyProcedureBuilderDef","def2: Partial<AnyProcedureBuilderDef>","initDef: Partial<AnyProcedureBuilderDef>","_def: AnyProcedureBuilderDef","builder: AnyProcedureBuilder","output: Parser","builder","resolver: ProcedureResolver<any, any, any, any, any, any>","_defIn: AnyProcedureBuilderDef & { type: ProcedureType }","resolver: AnyResolver","_def: AnyProcedure['_def']","index: number","opts: ProcedureCallOptions<any>","_nextOpts?: any","opts: ProcedureCallOptions<unknown>","isServerDefault: boolean","opts?: ValidateShape<TOptions, RuntimeConfigOptions<TContext, TMeta>>","config: RootConfig<$Root>","isServer: boolean"],"sources":["../src/unstable-core-do-not-import/middleware.ts","../src/vendor/standard-schema-v1/error.ts","../src/unstable-core-do-not-import/parser.ts","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectWithoutPropertiesLoose.js","../../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectWithoutProperties.js","../src/unstable-core-do-not-import/procedureBuilder.ts","../src/unstable-core-do-not-import/rootConfig.ts","../src/unstable-core-do-not-import/initTRPC.ts"],"sourcesContent":["import { TRPCError } from './error/TRPCError';\nimport type { ParseFn } from './parser';\nimport type { ProcedureType } from './procedure';\nimport type { GetRawInputFn, Overwrite, Simplify } from './types';\nimport { isObject } from './utils';\n\n/** @internal */\nexport const middlewareMarker = 'middlewareMarker' as 'middlewareMarker' & {\n __brand: 'middlewareMarker';\n};\ntype MiddlewareMarker = typeof middlewareMarker;\n\ninterface MiddlewareResultBase {\n /**\n * All middlewares should pass through their `next()`'s output.\n * Requiring this marker makes sure that can't be forgotten at compile-time.\n */\n readonly marker: MiddlewareMarker;\n}\n\ninterface MiddlewareOKResult<_TContextOverride> extends MiddlewareResultBase {\n ok: true;\n data: unknown;\n // this could be extended with `input`/`rawInput` later\n}\n\ninterface MiddlewareErrorResult<_TContextOverride>\n extends MiddlewareResultBase {\n ok: false;\n error: TRPCError;\n}\n\n/**\n * @internal\n */\nexport type MiddlewareResult<_TContextOverride> =\n | MiddlewareErrorResult<_TContextOverride>\n | MiddlewareOKResult<_TContextOverride>;\n\n/**\n * @internal\n */\nexport interface MiddlewareBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n> {\n /**\n * Create a new builder based on the current middleware builder\n */\n unstable_pipe<$ContextOverridesOut>(\n fn:\n | MiddlewareFunction<\n TContext,\n TMeta,\n TContextOverrides,\n $ContextOverridesOut,\n TInputOut\n >\n | MiddlewareBuilder<\n Overwrite<TContext, TContextOverrides>,\n TMeta,\n $ContextOverridesOut,\n TInputOut\n >,\n ): MiddlewareBuilder<\n TContext,\n TMeta,\n Overwrite<TContextOverrides, $ContextOverridesOut>,\n TInputOut\n >;\n\n /**\n * List of middlewares within this middleware builder\n */\n _middlewares: MiddlewareFunction<\n TContext,\n TMeta,\n TContextOverrides,\n object,\n TInputOut\n >[];\n}\n\n/**\n * @internal\n */\nexport type MiddlewareFunction<\n TContext,\n TMeta,\n TContextOverridesIn,\n $ContextOverridesOut,\n TInputOut,\n> = {\n (opts: {\n ctx: Simplify<Overwrite<TContext, TContextOverridesIn>>;\n type: ProcedureType;\n path: string;\n input: TInputOut;\n getRawInput: GetRawInputFn;\n meta: TMeta | undefined;\n signal: AbortSignal | undefined;\n next: {\n (): Promise<MiddlewareResult<TContextOverridesIn>>;\n <$ContextOverride>(opts: {\n ctx?: $ContextOverride;\n input?: unknown;\n }): Promise<MiddlewareResult<$ContextOverride>>;\n (opts: {\n getRawInput: GetRawInputFn;\n }): Promise<MiddlewareResult<TContextOverridesIn>>;\n };\n }): Promise<MiddlewareResult<$ContextOverridesOut>>;\n _type?: string | undefined;\n};\n\nexport type AnyMiddlewareFunction = MiddlewareFunction<any, any, any, any, any>;\nexport type AnyMiddlewareBuilder = MiddlewareBuilder<any, any, any, any>;\n/**\n * @internal\n */\nexport function createMiddlewareFactory<\n TContext,\n TMeta,\n TInputOut = unknown,\n>() {\n function createMiddlewareInner(\n middlewares: AnyMiddlewareFunction[],\n ): AnyMiddlewareBuilder {\n return {\n _middlewares: middlewares,\n unstable_pipe(middlewareBuilderOrFn) {\n const pipedMiddleware =\n '_middlewares' in middlewareBuilderOrFn\n ? middlewareBuilderOrFn._middlewares\n : [middlewareBuilderOrFn];\n\n return createMiddlewareInner([...middlewares, ...pipedMiddleware]);\n },\n };\n }\n\n function createMiddleware<$ContextOverrides>(\n fn: MiddlewareFunction<\n TContext,\n TMeta,\n object,\n $ContextOverrides,\n TInputOut\n >,\n ): MiddlewareBuilder<TContext, TMeta, $ContextOverrides, TInputOut> {\n return createMiddlewareInner([fn]);\n }\n\n return createMiddleware;\n}\n\n/**\n * Create a standalone middleware\n * @see https://trpc.io/docs/v11/server/middlewares#experimental-standalone-middlewares\n * @deprecated use `.concat()` instead\n */\nexport const experimental_standaloneMiddleware = <\n TCtx extends {\n ctx?: object;\n meta?: object;\n input?: unknown;\n },\n>() => ({\n create: createMiddlewareFactory<\n TCtx extends { ctx: infer T extends object } ? T : any,\n TCtx extends { meta: infer T extends object } ? T : object,\n TCtx extends { input: infer T } ? T : unknown\n >(),\n});\n\n/**\n * @internal\n * Please note, `trpc-openapi` uses this function.\n */\nexport function createInputMiddleware<TInput>(parse: ParseFn<TInput>) {\n const inputMiddleware: AnyMiddlewareFunction =\n async function inputValidatorMiddleware(opts) {\n let parsedInput: ReturnType<typeof parse>;\n\n const rawInput = await opts.getRawInput();\n try {\n parsedInput = await parse(rawInput);\n } catch (cause) {\n throw new TRPCError({\n code: 'BAD_REQUEST',\n cause,\n });\n }\n\n // Multiple input parsers\n const combinedInput =\n isObject(opts.input) && isObject(parsedInput)\n ? {\n ...opts.input,\n ...parsedInput,\n }\n : parsedInput;\n\n return opts.next({ input: combinedInput });\n };\n inputMiddleware._type = 'input';\n return inputMiddleware;\n}\n\n/**\n * @internal\n */\nexport function createOutputMiddleware<TOutput>(parse: ParseFn<TOutput>) {\n const outputMiddleware: AnyMiddlewareFunction =\n async function outputValidatorMiddleware({ next }) {\n const result = await next();\n if (!result.ok) {\n // pass through failures without validating\n return result;\n }\n try {\n const data = await parse(result.data);\n return {\n ...result,\n data,\n };\n } catch (cause) {\n throw new TRPCError({\n message: 'Output validation failed',\n code: 'INTERNAL_SERVER_ERROR',\n cause,\n });\n }\n };\n outputMiddleware._type = 'output';\n return outputMiddleware;\n}\n","import type { StandardSchemaV1 } from \"./spec\";\n\n/** A schema error with useful information. */\n\nexport class StandardSchemaV1Error extends Error {\n /** The schema issues. */\n public readonly issues: ReadonlyArray<StandardSchemaV1.Issue>;\n\n /**\n * Creates a schema error with useful information.\n *\n * @param issues The schema issues.\n */\n constructor(issues: ReadonlyArray<StandardSchemaV1.Issue>) {\n super(issues[0]?.message);\n this.name = 'SchemaError';\n this.issues = issues;\n }\n}\n","import { StandardSchemaV1Error } from '../vendor/standard-schema-v1/error';\nimport { type StandardSchemaV1 } from '../vendor/standard-schema-v1/spec';\n\n// zod / typeschema\nexport type ParserZodEsque<TInput, TParsedInput> = {\n _input: TInput;\n _output: TParsedInput;\n};\n\nexport type ParserValibotEsque<TInput, TParsedInput> = {\n schema: {\n _types?: {\n input: TInput;\n output: TParsedInput;\n };\n };\n};\n\nexport type ParserArkTypeEsque<TInput, TParsedInput> = {\n inferIn: TInput;\n infer: TParsedInput;\n};\n\nexport type ParserStandardSchemaEsque<TInput, TParsedInput> = StandardSchemaV1<\n TInput,\n TParsedInput\n>;\n\nexport type ParserMyZodEsque<TInput> = {\n parse: (input: any) => TInput;\n};\n\nexport type ParserSuperstructEsque<TInput> = {\n create: (input: unknown) => TInput;\n};\n\nexport type ParserCustomValidatorEsque<TInput> = (\n input: unknown,\n) => Promise<TInput> | TInput;\n\nexport type ParserYupEsque<TInput> = {\n validateSync: (input: unknown) => TInput;\n};\n\nexport type ParserScaleEsque<TInput> = {\n assert(value: unknown): asserts value is TInput;\n};\n\nexport type ParserWithoutInput<TInput> =\n | ParserCustomValidatorEsque<TInput>\n | ParserMyZodEsque<TInput>\n | ParserScaleEsque<TInput>\n | ParserSuperstructEsque<TInput>\n | ParserYupEsque<TInput>;\n\nexport type ParserWithInputOutput<TInput, TParsedInput> =\n | ParserZodEsque<TInput, TParsedInput>\n | ParserValibotEsque<TInput, TParsedInput>\n | ParserArkTypeEsque<TInput, TParsedInput>\n | ParserStandardSchemaEsque<TInput, TParsedInput>;\n\nexport type Parser = ParserWithInputOutput<any, any> | ParserWithoutInput<any>;\n\nexport type inferParser<TParser extends Parser> =\n TParser extends ParserStandardSchemaEsque<infer $TIn, infer $TOut>\n ? {\n in: $TIn;\n out: $TOut;\n }\n : TParser extends ParserWithInputOutput<infer $TIn, infer $TOut>\n ? {\n in: $TIn;\n out: $TOut;\n }\n : TParser extends ParserWithoutInput<infer $InOut>\n ? {\n in: $InOut;\n out: $InOut;\n }\n : never;\n\nexport type ParseFn<TType> = (value: unknown) => Promise<TType> | TType;\n\nexport function getParseFn<TType>(procedureParser: Parser): ParseFn<TType> {\n const parser = procedureParser as any;\n const isStandardSchema = '~standard' in parser;\n\n if (typeof parser === 'function' && typeof parser.assert === 'function') {\n // ParserArkTypeEsque - arktype schemas shouldn't be called as a function because they return a union type instead of throwing\n return parser.assert.bind(parser);\n }\n\n if (typeof parser === 'function' && !isStandardSchema) {\n // ParserValibotEsque (>= v0.31.0)\n // ParserCustomValidatorEsque - note the check for standard-schema conformance - some libraries like `effect` use function schemas which are *not* a \"parse\" function.\n return parser;\n }\n\n if (typeof parser.parseAsync === 'function') {\n // ParserZodEsque\n return parser.parseAsync.bind(parser);\n }\n\n if (typeof parser.parse === 'function') {\n // ParserZodEsque\n // ParserValibotEsque (< v0.13.0)\n return parser.parse.bind(parser);\n }\n\n if (typeof parser.validateSync === 'function') {\n // ParserYupEsque\n return parser.validateSync.bind(parser);\n }\n\n if (typeof parser.create === 'function') {\n // ParserSuperstructEsque\n return parser.create.bind(parser);\n }\n\n if (typeof parser.assert === 'function') {\n // ParserScaleEsque\n return (value) => {\n parser.assert(value);\n return value as TType;\n };\n }\n\n if (isStandardSchema) {\n // StandardSchemaEsque\n return async (value) => {\n const result = await parser['~standard'].validate(value);\n if (result.issues) {\n throw new StandardSchemaV1Error(result.issues);\n }\n return result.value;\n };\n }\n\n throw new Error('Could not find a validator fn');\n}\n","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nmodule.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import type { inferObservableValue, Observable } from '../observable';\nimport { getTRPCErrorFromUnknown, TRPCError } from './error/TRPCError';\nimport type {\n AnyMiddlewareFunction,\n MiddlewareBuilder,\n MiddlewareFunction,\n MiddlewareResult,\n} from './middleware';\nimport {\n createInputMiddleware,\n createOutputMiddleware,\n middlewareMarker,\n} from './middleware';\nimport type { inferParser, Parser } from './parser';\nimport { getParseFn } from './parser';\nimport type {\n AnyMutationProcedure,\n AnyProcedure,\n AnyQueryProcedure,\n LegacyObservableSubscriptionProcedure,\n MutationProcedure,\n ProcedureType,\n QueryProcedure,\n SubscriptionProcedure,\n} from './procedure';\nimport type { inferTrackedOutput } from './stream/tracked';\nimport type {\n GetRawInputFn,\n MaybePromise,\n Overwrite,\n Simplify,\n TypeError,\n} from './types';\nimport type { UnsetMarker } from './utils';\nimport { mergeWithoutOverrides } from './utils';\n\ntype IntersectIfDefined<TType, TWith> = TType extends UnsetMarker\n ? TWith\n : TWith extends UnsetMarker\n ? TType\n : Simplify<TType & TWith>;\n\ntype DefaultValue<TValue, TFallback> = TValue extends UnsetMarker\n ? TFallback\n : TValue;\n\ntype inferAsyncIterable<TOutput> =\n TOutput extends AsyncIterable<infer $Yield, infer $Return, infer $Next>\n ? {\n yield: $Yield;\n return: $Return;\n next: $Next;\n }\n : never;\ntype inferSubscriptionOutput<TOutput> =\n TOutput extends AsyncIterable<any>\n ? AsyncIterable<\n inferTrackedOutput<inferAsyncIterable<TOutput>['yield']>,\n inferAsyncIterable<TOutput>['return'],\n inferAsyncIterable<TOutput>['next']\n >\n : TypeError<'Subscription output could not be inferred'>;\n\nexport type CallerOverride<TContext> = (opts: {\n args: unknown[];\n invoke: (opts: ProcedureCallOptions<TContext>) => Promise<unknown>;\n _def: AnyProcedure['_def'];\n}) => Promise<unknown>;\ntype ProcedureBuilderDef<TMeta> = {\n procedure: true;\n inputs: Parser[];\n output?: Parser;\n meta?: TMeta;\n resolver?: ProcedureBuilderResolver;\n middlewares: AnyMiddlewareFunction[];\n /**\n * @deprecated use `type` instead\n */\n mutation?: boolean;\n /**\n * @deprecated use `type` instead\n */\n query?: boolean;\n /**\n * @deprecated use `type` instead\n */\n subscription?: boolean;\n type?: ProcedureType;\n caller?: CallerOverride<unknown>;\n};\n\ntype AnyProcedureBuilderDef = ProcedureBuilderDef<any>;\n\n/**\n * Procedure resolver options (what the `.query()`, `.mutation()`, and `.subscription()` functions receive)\n * @internal\n */\nexport interface ProcedureResolverOptions<\n TContext,\n _TMeta,\n TContextOverridesIn,\n TInputOut,\n> {\n ctx: Simplify<Overwrite<TContext, TContextOverridesIn>>;\n input: TInputOut extends UnsetMarker ? undefined : TInputOut;\n /**\n * The AbortSignal of the request\n */\n signal: AbortSignal | undefined;\n /**\n * The path of the procedure\n */\n path: string;\n}\n\n/**\n * A procedure resolver\n */\ntype ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputParserIn,\n $Output,\n> = (\n opts: ProcedureResolverOptions<TContext, TMeta, TContextOverrides, TInputOut>,\n) => MaybePromise<\n // If an output parser is defined, we need to return what the parser expects, otherwise we return the inferred type\n DefaultValue<TOutputParserIn, $Output>\n>;\n\ntype AnyResolver = ProcedureResolver<any, any, any, any, any, any>;\nexport type AnyProcedureBuilder = ProcedureBuilder<\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n any\n>;\n\n/**\n * Infer the context type from a procedure builder\n * Useful to create common helper functions for different procedures\n */\nexport type inferProcedureBuilderResolverOptions<\n TProcedureBuilder extends AnyProcedureBuilder,\n> =\n TProcedureBuilder extends ProcedureBuilder<\n infer TContext,\n infer TMeta,\n infer TContextOverrides,\n infer _TInputIn,\n infer TInputOut,\n infer _TOutputIn,\n infer _TOutputOut,\n infer _TCaller\n >\n ? ProcedureResolverOptions<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut extends UnsetMarker\n ? // if input is not set, we don't want to infer it as `undefined` since a procedure further down the chain might have set an input\n unknown\n : TInputOut extends object\n ? Simplify<\n TInputOut & {\n /**\n * Extra input params might have been added by a `.input()` further down the chain\n */\n [keyAddedByInputCallFurtherDown: string]: unknown;\n }\n >\n : TInputOut\n >\n : never;\n\nexport interface ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputIn,\n TInputOut,\n TOutputIn,\n TOutputOut,\n TCaller extends boolean,\n> {\n /**\n * Add an input parser to the procedure.\n * @see https://trpc.io/docs/v11/server/validators\n */\n input<$Parser extends Parser>(\n schema: TInputOut extends UnsetMarker\n ? $Parser\n : inferParser<$Parser>['out'] extends Record<string, unknown> | undefined\n ? TInputOut extends Record<string, unknown> | undefined\n ? undefined extends inferParser<$Parser>['out'] // if current is optional the previous must be too\n ? undefined extends TInputOut\n ? $Parser\n : TypeError<'Cannot chain an optional parser to a required parser'>\n : $Parser\n : TypeError<'All input parsers did not resolve to an object'>\n : TypeError<'All input parsers did not resolve to an object'>,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n IntersectIfDefined<TInputIn, inferParser<$Parser>['in']>,\n IntersectIfDefined<TInputOut, inferParser<$Parser>['out']>,\n TOutputIn,\n TOutputOut,\n TCaller\n >;\n /**\n * Add an output parser to the procedure.\n * @see https://trpc.io/docs/v11/server/validators\n */\n output<$Parser extends Parser>(\n schema: $Parser,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputIn,\n TInputOut,\n IntersectIfDefined<TOutputIn, inferParser<$Parser>['in']>,\n IntersectIfDefined<TOutputOut, inferParser<$Parser>['out']>,\n TCaller\n >;\n /**\n * Add a meta data to the procedure.\n * @see https://trpc.io/docs/v11/server/metadata\n */\n meta(\n meta: TMeta,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputIn,\n TInputOut,\n TOutputIn,\n TOutputOut,\n TCaller\n >;\n /**\n * Add a middleware to the procedure.\n * @see https://trpc.io/docs/v11/server/middlewares\n */\n use<$ContextOverridesOut>(\n fn:\n | MiddlewareBuilder<\n Overwrite<TContext, TContextOverrides>,\n TMeta,\n $ContextOverridesOut,\n TInputOut\n >\n | MiddlewareFunction<\n TContext,\n TMeta,\n TContextOverrides,\n $ContextOverridesOut,\n TInputOut\n >,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n Overwrite<TContextOverrides, $ContextOverridesOut>,\n TInputIn,\n TInputOut,\n TOutputIn,\n TOutputOut,\n TCaller\n >;\n\n /**\n * @deprecated use {@link concat} instead\n */\n unstable_concat<\n $Context,\n $Meta,\n $ContextOverrides,\n $InputIn,\n $InputOut,\n $OutputIn,\n $OutputOut,\n >(\n builder: Overwrite<TContext, TContextOverrides> extends $Context\n ? TMeta extends $Meta\n ? ProcedureBuilder<\n $Context,\n $Meta,\n $ContextOverrides,\n $InputIn,\n $InputOut,\n $OutputIn,\n $OutputOut,\n TCaller\n >\n : TypeError<'Meta mismatch'>\n : TypeError<'Context mismatch'>,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n Overwrite<TContextOverrides, $ContextOverrides>,\n IntersectIfDefined<TInputIn, $InputIn>,\n IntersectIfDefined<TInputOut, $InputOut>,\n IntersectIfDefined<TOutputIn, $OutputIn>,\n IntersectIfDefined<TOutputOut, $OutputOut>,\n TCaller\n >;\n\n /**\n * Combine two procedure builders\n */\n concat<\n $Context,\n $Meta,\n $ContextOverrides,\n $InputIn,\n $InputOut,\n $OutputIn,\n $OutputOut,\n >(\n builder: Overwrite<TContext, TContextOverrides> extends $Context\n ? TMeta extends $Meta\n ? ProcedureBuilder<\n $Context,\n $Meta,\n $ContextOverrides,\n $InputIn,\n $InputOut,\n $OutputIn,\n $OutputOut,\n TCaller\n >\n : TypeError<'Meta mismatch'>\n : TypeError<'Context mismatch'>,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n Overwrite<TContextOverrides, $ContextOverrides>,\n IntersectIfDefined<TInputIn, $InputIn>,\n IntersectIfDefined<TInputOut, $InputOut>,\n IntersectIfDefined<TOutputIn, $OutputIn>,\n IntersectIfDefined<TOutputOut, $OutputOut>,\n TCaller\n >;\n /**\n * Query procedure\n * @see https://trpc.io/docs/v11/concepts#vocabulary\n */\n query<$Output>(\n resolver: ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputIn,\n $Output\n >,\n ): TCaller extends true\n ? (\n input: DefaultValue<TInputIn, void>,\n ) => Promise<DefaultValue<TOutputOut, $Output>>\n : QueryProcedure<{\n input: DefaultValue<TInputIn, void>;\n output: DefaultValue<TOutputOut, $Output>;\n meta: TMeta;\n }>;\n\n /**\n * Mutation procedure\n * @see https://trpc.io/docs/v11/concepts#vocabulary\n */\n mutation<$Output>(\n resolver: ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputIn,\n $Output\n >,\n ): TCaller extends true\n ? (\n input: DefaultValue<TInputIn, void>,\n ) => Promise<DefaultValue<TOutputOut, $Output>>\n : MutationProcedure<{\n input: DefaultValue<TInputIn, void>;\n output: DefaultValue<TOutputOut, $Output>;\n meta: TMeta;\n }>;\n\n /**\n * Subscription procedure\n * @see https://trpc.io/docs/v11/server/subscriptions\n */\n subscription<$Output extends AsyncIterable<any, void, any>>(\n resolver: ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputIn,\n $Output\n >,\n ): TCaller extends true\n ? TypeError<'Not implemented'>\n : SubscriptionProcedure<{\n input: DefaultValue<TInputIn, void>;\n output: inferSubscriptionOutput<DefaultValue<TOutputOut, $Output>>;\n meta: TMeta;\n }>;\n /**\n * @deprecated Using subscriptions with an observable is deprecated. Use an async generator instead.\n * This feature will be removed in v12 of tRPC.\n * @see https://trpc.io/docs/v11/server/subscriptions\n */\n subscription<$Output extends Observable<any, any>>(\n resolver: ProcedureResolver<\n TContext,\n TMeta,\n TContextOverrides,\n TInputOut,\n TOutputIn,\n $Output\n >,\n ): TCaller extends true\n ? TypeError<'Not implemented'>\n : LegacyObservableSubscriptionProcedure<{\n input: DefaultValue<TInputIn, void>;\n output: inferObservableValue<DefaultValue<TOutputOut, $Output>>;\n meta: TMeta;\n }>;\n /**\n * Overrides the way a procedure is invoked\n * Do not use this unless you know what you're doing - this is an experimental API\n */\n experimental_caller(\n caller: CallerOverride<TContext>,\n ): ProcedureBuilder<\n TContext,\n TMeta,\n TContextOverrides,\n TInputIn,\n TInputOut,\n TOutputIn,\n TOutputOut,\n true\n >;\n /**\n * @internal\n */\n _def: ProcedureBuilderDef<TMeta>;\n}\n\ntype ProcedureBuilderResolver = (\n opts: ProcedureResolverOptions<any, any, any, any>,\n) => Promise<unknown>;\n\nfunction createNewBuilder(\n def1: AnyProcedureBuilderDef,\n def2: Partial<AnyProcedureBuilderDef>,\n): AnyProcedureBuilder {\n const { middlewares = [], inputs, meta, ...rest } = def2;\n\n // TODO: maybe have a fn here to warn about calls\n return createBuilder({\n ...mergeWithoutOverrides(def1, rest),\n inputs: [...def1.inputs, ...(inputs ?? [])],\n middlewares: [...def1.middlewares, ...middlewares],\n meta: def1.meta && meta ? { ...def1.meta, ...meta } : (meta ?? def1.meta),\n });\n}\n\nexport function createBuilder<TContext, TMeta>(\n initDef: Partial<AnyProcedureBuilderDef> = {},\n): ProcedureBuilder<\n TContext,\n TMeta,\n object,\n UnsetMarker,\n UnsetMarker,\n UnsetMarker,\n UnsetMarker,\n false\n> {\n const _def: AnyProcedureBuilderDef = {\n procedure: true,\n inputs: [],\n middlewares: [],\n ...initDef,\n };\n\n const builder: AnyProcedureBuilder = {\n _def,\n input(input) {\n const parser = getParseFn(input as Parser);\n return createNewBuilder(_def, {\n inputs: [input as Parser],\n middlewares: [createInputMiddleware(parser)],\n });\n },\n output(output: Parser) {\n const parser = getParseFn(output);\n return createNewBuilder(_def, {\n output,\n middlewares: [createOutputMiddleware(parser)],\n });\n },\n meta(meta) {\n return createNewBuilder(_def, {\n meta,\n });\n },\n use(middlewareBuilderOrFn) {\n // Distinguish between a middleware builder and a middleware function\n const middlewares =\n '_middlewares' in middlewareBuilderOrFn\n ? middlewareBuilderOrFn._middlewares\n : [middlewareBuilderOrFn];\n\n return createNewBuilder(_def, {\n middlewares: middlewares,\n });\n },\n unstable_concat(builder) {\n return createNewBuilder(_def, (builder as AnyProcedureBuilder)._def);\n },\n concat(builder) {\n return createNewBuilder(_def, (builder as AnyProcedureBuilder)._def);\n },\n query(resolver) {\n return createResolver(\n { ..._def, type: 'query' },\n resolver,\n ) as AnyQueryProcedure;\n },\n mutation(resolver) {\n return createResolver(\n { ..._def, type: 'mutation' },\n resolver,\n ) as AnyMutationProcedure;\n },\n subscription(resolver: ProcedureResolver<any, any, any, any, any, any>) {\n return createResolver({ ..._def, type: 'subscription' }, resolver) as any;\n },\n experimental_caller(caller) {\n return createNewBuilder(_def, {\n caller,\n }) as any;\n },\n };\n\n return builder;\n}\n\nfunction createResolver(\n _defIn: AnyProcedureBuilderDef & { type: ProcedureType },\n resolver: AnyResolver,\n) {\n const finalBuilder = createNewBuilder(_defIn, {\n resolver,\n middlewares: [\n async function resolveMiddleware(opts) {\n const data = await resolver(opts);\n return {\n marker: middlewareMarker,\n ok: true,\n data,\n ctx: opts.ctx,\n } as const;\n },\n ],\n });\n const _def: AnyProcedure['_def'] = {\n ...finalBuilder._def,\n type: _defIn.type,\n experimental_caller: Boolean(finalBuilder._def.caller),\n meta: finalBuilder._def.meta,\n $types: null as any,\n };\n\n const invoke = createProcedureCaller(finalBuilder._def);\n const callerOverride = finalBuilder._def.caller;\n if (!callerOverride) {\n return invoke;\n }\n const callerWrapper = async (...args: unknown[]) => {\n return await callerOverride({\n args,\n invoke,\n _def: _def,\n });\n };\n\n callerWrapper._def = _def;\n\n return callerWrapper;\n}\n\n/**\n * @internal\n */\nexport interface ProcedureCallOptions<TContext> {\n ctx: TContext;\n getRawInput: GetRawInputFn;\n input?: unknown;\n path: string;\n type: ProcedureType;\n signal: AbortSignal | undefined;\n}\n\nconst codeblock = `\nThis is a client-only function.\nIf you want to call this function on the server, see https://trpc.io/docs/v11/server/server-side-calls\n`.trim();\n\n// run the middlewares recursively with the resolver as the last one\nasync function callRecursive(\n index: number,\n _def: AnyProcedureBuilderDef,\n opts: ProcedureCallOptions<any>,\n): Promise<MiddlewareResult<any>> {\n try {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const middleware = _def.middlewares[index]!;\n const result = await middleware({\n ...opts,\n meta: _def.meta,\n input: opts.input,\n next(_nextOpts?: any) {\n const nextOpts = _nextOpts as\n | {\n ctx?: Record<string, unknown>;\n input?: unknown;\n getRawInput?: GetRawInputFn;\n }\n | undefined;\n\n return callRecursive(index + 1, _def, {\n ...opts,\n ctx: nextOpts?.ctx ? { ...opts.ctx, ...nextOpts.ctx } : opts.ctx,\n input: nextOpts && 'input' in nextOpts ? nextOpts.input : opts.input,\n getRawInput: nextOpts?.getRawInput ?? opts.getRawInput,\n });\n },\n });\n\n return result;\n } catch (cause) {\n return {\n ok: false,\n error: getTRPCErrorFromUnknown(cause),\n marker: middlewareMarker,\n };\n }\n}\n\nfunction createProcedureCaller(_def: AnyProcedureBuilderDef): AnyProcedure {\n async function procedure(opts: ProcedureCallOptions<unknown>) {\n // is direct server-side call\n if (!opts || !('getRawInput' in opts)) {\n throw new Error(codeblock);\n }\n\n // there's always at least one \"next\" since we wrap this.resolver in a middleware\n const result = await callRecursive(0, _def, opts);\n\n if (!result) {\n throw new TRPCError({\n code: 'INTERNAL_SERVER_ERROR',\n message:\n 'No result from middlewares - did you forget to `return next()`?',\n });\n }\n if (!result.ok) {\n // re-throw original error\n throw result.error;\n }\n return result.data;\n }\n\n procedure._def = _def;\n procedure.procedure = true;\n procedure.meta = _def.meta;\n\n // FIXME typecast shouldn't be needed - fixittt\n return procedure as unknown as AnyProcedure;\n}\n","import type { CombinedDataTransformer } from '../unstable-core-do-not-import';\nimport type { DefaultErrorShape, ErrorFormatter } from './error/formatter';\nimport type { JSONLProducerOptions } from './stream/jsonl';\nimport type { SSEStreamProducerOptions } from './stream/sse';\n\n/**\n * The initial generics that are used in the init function\n * @internal\n */\nexport interface RootTypes {\n ctx: object;\n meta: object;\n errorShape: DefaultErrorShape;\n transformer: boolean;\n}\n\n/**\n * The default check to see if we're in a server\n */\nexport const isServerDefault: boolean =\n typeof window === 'undefined' ||\n 'Deno' in window ||\n // eslint-disable-next-line @typescript-eslint/dot-notation\n globalThis.process?.env?.['NODE_ENV'] === 'test' ||\n !!globalThis.process?.env?.['JEST_WORKER_ID'] ||\n !!globalThis.process?.env?.['VITEST_WORKER_ID'];\n\n/**\n * The tRPC root config\n * @internal\n */\nexport interface RootConfig<TTypes extends RootTypes> {\n /**\n * The types that are used in the config\n * @internal\n */\n $types: TTypes;\n /**\n * Use a data transformer\n * @see https://trpc.io/docs/v11/data-transformers\n */\n transformer: CombinedDataTransformer;\n /**\n * Use custom error formatting\n * @see https://trpc.io/docs/v11/error-formatting\n */\n errorFormatter: ErrorFormatter<TTypes['ctx'], TTypes['errorShape']>;\n /**\n * Allow `@trpc/server` to run in non-server environments\n * @warning **Use with caution**, this should likely mainly be used within testing.\n * @default false\n */\n allowOutsideOfServer: boolean;\n /**\n * Is this a server environment?\n * @warning **Use with caution**, this should likely mainly be used within testing.\n * @default typeof window === 'undefined' || 'Deno' in window || process.env.NODE_ENV === 'test'\n */\n isServer: boolean;\n /**\n * Is this development?\n * Will be used to decide if the API should return stack traces\n * @default process.env.NODE_ENV !== 'production'\n */\n isDev: boolean;\n\n defaultMeta?: TTypes['meta'] extends object ? TTypes['meta'] : never;\n\n /**\n * Options for server-sent events (SSE) subscriptions\n * @see https://trpc.io/docs/client/links/httpSubscriptionLink\n */\n sse?: {\n /**\n * Enable server-sent events (SSE) subscriptions\n * @default true\n */\n enabled?: boolean;\n } & Pick<\n SSEStreamProducerOptions,\n 'ping' | 'emitAndEndImmediately' | 'maxDurationMs' | 'client'\n >;\n\n /**\n * Options for batch stream\n * @see https://trpc.io/docs/client/links/httpBatchStreamLink\n */\n jsonl?: Pick<JSONLProducerOptions, 'pingMs'>;\n experimental?: {};\n}\n\n/**\n * @internal\n */\nexport type CreateRootTypes<TGenerics extends RootTypes> = TGenerics;\n\nexport type AnyRootTypes = CreateRootTypes<{\n ctx: any;\n meta: any;\n errorShape: any;\n transformer: any;\n}>;\n\ntype PartialIf<TCondition extends boolean, TType> = TCondition extends true\n ? Partial<TType>\n : TType;\n\n/**\n * Adds a `createContext` option with a given callback function\n * If context is the default value, then the `createContext` option is optional\n */\nexport type CreateContextCallback<\n TContext,\n TFunction extends (...args: any[]) => any,\n> = PartialIf<\n object extends TContext ? true : false,\n {\n /**\n * @see https://trpc.io/docs/v11/context\n **/\n createContext: TFunction;\n }\n>;\n","import {\n defaultFormatter,\n type DefaultErrorShape,\n type ErrorFormatter,\n} from './error/formatter';\nimport type { MiddlewareBuilder, MiddlewareFunction } from './middleware';\nimport { createMiddlewareFactory } from './middleware';\nimport type { ProcedureBuilder } from './procedureBuilder';\nimport { createBuilder } from './procedureBuilder';\nimport type { AnyRootTypes, CreateRootTypes } from './rootConfig';\nimport { isServerDefault, type RootConfig } from './rootConfig';\nimport type {\n AnyRouter,\n MergeRouters,\n RouterBuilder,\n RouterCallerFactory,\n} from './router';\nimport {\n createCallerFactory,\n createRouterFactory,\n mergeRouters,\n} from './router';\nimport type { DataTransformerOptions } from './transformer';\nimport { defaultTransformer, getDataTransformer } from './transformer';\nimport type { Unwrap, ValidateShape } from './types';\nimport type { UnsetMarker } from './utils';\n\ntype inferErrorFormatterShape<TType> =\n TType extends ErrorFormatter<any, infer TShape> ? TShape : DefaultErrorShape;\n/** @internal */\nexport interface RuntimeConfigOptions<\n TContext extends object,\n TMeta extends object,\n> extends Partial<\n Omit<\n RootConfig<{\n ctx: TContext;\n meta: TMeta;\n errorShape: any;\n transformer: any;\n }>,\n '$types' | 'transformer'\n >\n > {\n /**\n * Use a data transformer\n * @see https://trpc.io/docs/v11/data-transformers\n */\n transformer?: DataTransformerOptions;\n}\n\ntype ContextCallback = (...args: any[]) => object | Promise<object>;\n\nexport interface TRPCRootObject<\n TContext extends object,\n TMeta extends object,\n TOptions extends RuntimeConfigOptions<TContext, TMeta>,\n $Root extends AnyRootTypes = {\n ctx: TContext;\n meta: TMeta;\n errorShape: undefined extends TOptions['errorFormatter']\n ? DefaultErrorShape\n : inferErrorFormatterShape<TOptions['errorFormatter']>;\n transformer: undefined extends TOptions['transformer'] ? false : true;\n },\n> {\n /**\n * Your router config\n * @internal\n */\n _config: RootConfig<$Root>;\n\n /**\n * Builder object for creating procedures\n * @see https://trpc.io/docs/v11/server/procedures\n */\n procedure: ProcedureBuilder<\n TContext,\n TMeta,\n object,\n UnsetMarker,\n UnsetMarker,\n UnsetMarker,\n UnsetMarker,\n false\n >;\n\n /**\n * Create reusable middlewares\n * @see https://trpc.io/docs/v11/server/middlewares\n */\n middleware: <$ContextOverrides>(\n fn: MiddlewareFunction<TContext, TMeta, object, $ContextOverrides, unknown>,\n ) => MiddlewareBuilder<TContext, TMeta, $ContextOverrides, unknown>;\n\n /**\n * Create a router\n * @see https://trpc.io/docs/v11/server/routers\n */\n router: RouterBuilder<$Root>;\n\n /**\n * Merge Routers\n * @see https://trpc.io/docs/v11/server/merging-routers\n */\n mergeRouters: <TRouters extends AnyRouter[]>(\n ...routerList: [...TRouters]\n ) => MergeRouters<TRouters>;\n\n /**\n * Create a server-side caller for a router\n * @see https://trpc.io/docs/v11/server/server-side-calls\n */\n createCallerFactory: RouterCallerFactory<$Root>;\n}\n\nclass TRPCBuilder<TContext extends object, TMeta extends object> {\n /**\n * Add a context shape as a generic to the root object\n * @see https://trpc.io/docs/v11/server/context\n */\n context<TNewContext extends object | ContextCallback>() {\n return new TRPCBuilder<\n TNewContext extends ContextCallback ? Unwrap<TNewContext> : TNewContext,\n TMeta\n >();\n }\n\n /**\n * Add a meta shape as a generic to the root object\n * @see https://trpc.io/docs/v11/quickstart\n */\n meta<TNewMeta extends object>() {\n return new TRPCBuilder<TContext, TNewMeta>();\n }\n\n /**\n * Create the root object\n * @see https://trpc.io/docs/v11/server/routers#initialize-trpc\n */\n create<TOptions extends RuntimeConfigOptions<TContext, TMeta>>(\n opts?: ValidateShape<TOptions, RuntimeConfigOptions<TContext, TMeta>>,\n ): TRPCRootObject<TContext, TMeta, TOptions> {\n type $Root = CreateRootTypes<{\n ctx: TContext;\n meta: TMeta;\n errorShape: undefined extends TOptions['errorFormatter']\n ? DefaultErrorShape\n : inferErrorFormatterShape<TOptions['errorFormatter']>;\n transformer: undefined extends TOptions['transformer'] ? false : true;\n }>;\n\n const config: RootConfig<$Root> = {\n ...opts,\n transformer: getDataTransformer(opts?.transformer ?? defaultTransformer),\n isDev:\n opts?.isDev ??\n // eslint-disable-next-line @typescript-eslint/dot-notation\n globalThis.process?.env['NODE_ENV'] !== 'production',\n allowOutsideOfServer: opts?.allowOutsideOfServer ?? false,\n errorFormatter: opts?.errorFormatter ?? defaultFormatter,\n isServer: opts?.isServer ?? isServerDefault,\n /**\n * These are just types, they can't be used at runtime\n * @internal\n */\n $types: null as any,\n };\n\n {\n // Server check\n const isServer: boolean = opts?.isServer ?? isServerDefault;\n\n if (!isServer && opts?.allowOutsideOfServer !== true) {\n throw new Error(\n `You're trying to use @trpc/server in a non-server environment. This is not supported by default.`,\n );\n }\n }\n return {\n /**\n * Your router config\n * @internal\n */\n _config: config,\n /**\n * Builder object for creating procedures\n * @see https://trpc.io/docs/v11/server/procedures\n */\n procedure: createBuilder<$Root['ctx'], $Root['meta']>({\n meta: opts?.defaultMeta,\n }),\n /**\n * Create reusable middlewares\n * @see https://trpc.io/docs/v11/server/middlewares\n */\n middleware: createMiddlewareFactory<$Root['ctx'], $Root['meta']>(),\n /**\n * Create a router\n * @see https://trpc.io/docs/v11/server/routers\n */\n router: createRouterFactory<$Root>(config),\n /**\n * Merge Routers\n * @see https://trpc.io/docs/v11/server/merging-routers\n */\n mergeRouters,\n /**\n * Create a server-side caller for a router\n * @see https://trpc.io/docs/v11/server/server-side-calls\n */\n createCallerFactory: createCallerFactory<$Root>(),\n };\n }\n}\n\n/**\n * Builder to initialize the tRPC root object - use this exactly once per backend\n * @see https://trpc.io/docs/v11/quickstart\n */\nexport const initTRPC = new TRPCBuilder();\nexport type { TRPCBuilder };\n"],"x_google_ignoreList":[3,4],"mappings":"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"}