@trpc/server 11.0.0-alpha-tmp-app-router-example.388 → 11.0.0-alpha-tmp-issues-5851-take-two.448
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/@trpc/server/http.d.ts +1 -2
- package/dist/@trpc/server/http.d.ts.map +1 -1
- package/dist/@trpc/server/index.d.ts +1 -1
- package/dist/@trpc/server/index.d.ts.map +1 -1
- package/dist/@trpc/server/rpc.d.ts +1 -1
- package/dist/@trpc/server/rpc.d.ts.map +1 -1
- package/dist/adapters/aws-lambda/getPlanner.d.ts.map +1 -1
- package/dist/adapters/aws-lambda/getPlanner.js +19 -2
- package/dist/adapters/aws-lambda/getPlanner.mjs +19 -2
- package/dist/adapters/next-app-dir/nextAppDirCaller.d.ts.map +1 -1
- package/dist/adapters/next-app-dir/nextAppDirCaller.js +1 -1
- package/dist/adapters/next-app-dir/nextAppDirCaller.mjs +1 -1
- package/dist/adapters/next-app-dir/redirect.d.ts.map +1 -1
- package/dist/adapters/next.js +1 -1
- package/dist/adapters/next.mjs +1 -1
- package/dist/adapters/node-http/incomingMessageToRequest.d.ts +0 -1
- package/dist/adapters/node-http/incomingMessageToRequest.d.ts.map +1 -1
- package/dist/adapters/node-http/incomingMessageToRequest.js +3 -1
- package/dist/adapters/node-http/incomingMessageToRequest.mjs +3 -1
- package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +1 -1
- package/dist/adapters/node-http/nodeHTTPRequestHandler.js +30 -7
- package/dist/adapters/node-http/nodeHTTPRequestHandler.mjs +30 -7
- package/dist/adapters/node-http/types.d.ts +0 -1
- package/dist/adapters/node-http/types.d.ts.map +1 -1
- package/dist/adapters/standalone.d.ts +0 -1
- package/dist/adapters/standalone.d.ts.map +1 -1
- package/dist/adapters/ws.d.ts +3 -4
- package/dist/adapters/ws.d.ts.map +1 -1
- package/dist/adapters/ws.js +172 -114
- package/dist/adapters/ws.mjs +172 -114
- package/dist/bundle-analysis.json +236 -155
- package/dist/http.js +3 -0
- package/dist/http.mjs +1 -0
- package/dist/index.js +7 -5
- package/dist/index.mjs +3 -2
- package/dist/observable/observable.d.ts +1 -0
- package/dist/observable/observable.d.ts.map +1 -1
- package/dist/observable/observable.js +55 -0
- package/dist/observable/observable.mjs +55 -1
- package/dist/unstable-core-do-not-import/createProxy.d.ts +3 -3
- package/dist/unstable-core-do-not-import/createProxy.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/createProxy.js +15 -6
- package/dist/unstable-core-do-not-import/createProxy.mjs +15 -6
- package/dist/unstable-core-do-not-import/http/contentType.d.ts +7 -4
- package/dist/unstable-core-do-not-import/http/contentType.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/http/contentType.js +60 -17
- package/dist/unstable-core-do-not-import/http/contentType.mjs +61 -18
- package/dist/unstable-core-do-not-import/http/formDataToObject.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/http/formDataToObject.js +40 -0
- package/dist/unstable-core-do-not-import/http/formDataToObject.mjs +38 -0
- package/dist/unstable-core-do-not-import/http/getHTTPStatusCode.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/http/getHTTPStatusCode.js +4 -4
- package/dist/unstable-core-do-not-import/http/getHTTPStatusCode.mjs +4 -4
- package/dist/unstable-core-do-not-import/http/parseConnectionParams.d.ts +4 -0
- package/dist/unstable-core-do-not-import/http/parseConnectionParams.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/http/parseConnectionParams.js +42 -0
- package/dist/unstable-core-do-not-import/http/parseConnectionParams.mjs +39 -0
- package/dist/unstable-core-do-not-import/http/resolveResponse.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/http/resolveResponse.js +302 -149
- package/dist/unstable-core-do-not-import/http/resolveResponse.mjs +301 -148
- package/dist/unstable-core-do-not-import/http/types.d.ts +26 -2
- package/dist/unstable-core-do-not-import/http/types.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/initTRPC.d.ts +12 -12
- package/dist/unstable-core-do-not-import/initTRPC.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/middleware.d.ts +3 -3
- package/dist/unstable-core-do-not-import/middleware.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/procedureBuilder.d.ts +3 -1
- package/dist/unstable-core-do-not-import/procedureBuilder.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/rootConfig.d.ts +12 -0
- package/dist/unstable-core-do-not-import/rootConfig.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/router.d.ts +2 -2
- package/dist/unstable-core-do-not-import/router.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/router.js +7 -2
- package/dist/unstable-core-do-not-import/router.mjs +7 -2
- package/dist/unstable-core-do-not-import/rpc/envelopes.d.ts +7 -0
- package/dist/unstable-core-do-not-import/rpc/envelopes.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/rpc/index.d.ts +1 -1
- package/dist/unstable-core-do-not-import/rpc/index.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/stream/{stream.d.ts → jsonl.d.ts} +5 -5
- package/dist/unstable-core-do-not-import/stream/jsonl.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/stream/{stream.js → jsonl.js} +148 -111
- package/dist/unstable-core-do-not-import/stream/{stream.mjs → jsonl.mjs} +147 -110
- package/dist/unstable-core-do-not-import/stream/sse.d.ts +86 -0
- package/dist/unstable-core-do-not-import/stream/sse.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/stream/sse.js +178 -0
- package/dist/unstable-core-do-not-import/stream/sse.mjs +172 -0
- package/dist/unstable-core-do-not-import/stream/utils/createDeferred.d.ts +18 -0
- package/dist/unstable-core-do-not-import/stream/utils/createDeferred.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/stream/utils/createDeferred.js +46 -0
- package/dist/unstable-core-do-not-import/stream/utils/createDeferred.mjs +43 -0
- package/dist/unstable-core-do-not-import/stream/utils/createReadableStream.d.ts +10 -0
- package/dist/unstable-core-do-not-import/stream/utils/createReadableStream.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/stream/utils/createReadableStream.js +31 -0
- package/dist/unstable-core-do-not-import/stream/utils/createReadableStream.mjs +29 -0
- package/dist/unstable-core-do-not-import/stream/utils/createServer.d.ts +7 -0
- package/dist/unstable-core-do-not-import/stream/utils/createServer.d.ts.map +1 -0
- package/dist/unstable-core-do-not-import/transformer.d.ts +5 -5
- package/dist/unstable-core-do-not-import/utils.d.ts +4 -0
- package/dist/unstable-core-do-not-import/utils.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import/utils.js +4 -0
- package/dist/unstable-core-do-not-import/utils.mjs +4 -1
- package/dist/unstable-core-do-not-import.d.ts +5 -2
- package/dist/unstable-core-do-not-import.d.ts.map +1 -1
- package/dist/unstable-core-do-not-import.js +19 -7
- package/dist/unstable-core-do-not-import.mjs +6 -3
- package/package.json +6 -6
- package/src/@trpc/server/http.ts +7 -2
- package/src/@trpc/server/index.ts +1 -0
- package/src/@trpc/server/rpc.ts +1 -0
- package/src/adapters/aws-lambda/getPlanner.ts +21 -2
- package/src/adapters/next-app-dir/nextAppDirCaller.ts +2 -1
- package/src/adapters/node-http/incomingMessageToRequest.ts +3 -2
- package/src/adapters/node-http/nodeHTTPRequestHandler.ts +32 -7
- package/src/adapters/ws.ts +193 -107
- package/src/observable/observable.ts +63 -0
- package/src/unstable-core-do-not-import/createProxy.ts +23 -8
- package/src/unstable-core-do-not-import/http/contentType.ts +83 -21
- package/src/{adapters/next-app-dir → unstable-core-do-not-import/http}/formDataToObject.ts +18 -10
- package/src/unstable-core-do-not-import/http/getHTTPStatusCode.ts +4 -7
- package/src/unstable-core-do-not-import/http/parseConnectionParams.ts +49 -0
- package/src/unstable-core-do-not-import/http/resolveResponse.ts +333 -164
- package/src/unstable-core-do-not-import/http/types.ts +31 -2
- package/src/unstable-core-do-not-import/procedureBuilder.ts +8 -1
- package/src/unstable-core-do-not-import/rootConfig.ts +12 -0
- package/src/unstable-core-do-not-import/router.ts +47 -35
- package/src/unstable-core-do-not-import/rpc/envelopes.ts +9 -0
- package/src/unstable-core-do-not-import/rpc/index.ts +1 -0
- package/src/unstable-core-do-not-import/stream/{stream.ts → jsonl.ts} +163 -110
- package/src/unstable-core-do-not-import/stream/sse.ts +288 -0
- package/src/unstable-core-do-not-import/stream/utils/createDeferred.ts +48 -0
- package/src/unstable-core-do-not-import/stream/utils/createReadableStream.ts +31 -0
- package/src/unstable-core-do-not-import/stream/utils/createServer.ts +44 -0
- package/src/unstable-core-do-not-import/utils.ts +5 -0
- package/src/unstable-core-do-not-import.ts +5 -2
- package/dist/adapters/next-app-dir/formDataToObject.d.ts.map +0 -1
- package/dist/adapters/next-app-dir/formDataToObject.js +0 -34
- package/dist/adapters/next-app-dir/formDataToObject.mjs +0 -32
- package/dist/unstable-core-do-not-import/stream/stream.d.ts.map +0 -1
- /package/dist/{adapters/next-app-dir → unstable-core-do-not-import/http}/formDataToObject.d.ts +0 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-non-null-assertion */ const isNumberString = (str)=>/^\d+$/.test(str);
|
|
2
|
+
function set(obj, path, value) {
|
|
3
|
+
if (path.length > 1) {
|
|
4
|
+
const newPath = [
|
|
5
|
+
...path
|
|
6
|
+
];
|
|
7
|
+
const key = newPath.shift();
|
|
8
|
+
const nextKey = newPath[0];
|
|
9
|
+
if (!obj[key]) {
|
|
10
|
+
obj[key] = isNumberString(nextKey) ? [] : {};
|
|
11
|
+
} else if (Array.isArray(obj[key]) && !isNumberString(nextKey)) {
|
|
12
|
+
obj[key] = Object.fromEntries(Object.entries(obj[key]));
|
|
13
|
+
}
|
|
14
|
+
set(obj[key], newPath, value);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const p = path[0];
|
|
18
|
+
if (obj[p] === undefined) {
|
|
19
|
+
obj[p] = value;
|
|
20
|
+
} else if (Array.isArray(obj[p])) {
|
|
21
|
+
obj[p].push(value);
|
|
22
|
+
} else {
|
|
23
|
+
obj[p] = [
|
|
24
|
+
obj[p],
|
|
25
|
+
value
|
|
26
|
+
];
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
function formDataToObject(formData) {
|
|
30
|
+
const obj = {};
|
|
31
|
+
for (const [key, value] of formData.entries()){
|
|
32
|
+
const parts = key.split(/[\.\[\]]/).filter(Boolean);
|
|
33
|
+
set(obj, parts, value);
|
|
34
|
+
}
|
|
35
|
+
return obj;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export { formDataToObject };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getHTTPStatusCode.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/http/getHTTPStatusCode.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getHTTPStatusCode.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/http/getHTTPStatusCode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAA2B,YAAY,EAAE,MAAM,QAAQ,CAAC;AA8BpE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,EAAE,GAAG,MAAM,CAsB7E;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,SAAS,UAE1D"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var codes = require('../rpc/codes.js');
|
|
4
|
+
var utils = require('../utils.js');
|
|
4
5
|
|
|
5
6
|
const JSONRPC2_TO_HTTP_CODE = {
|
|
6
7
|
PARSE_ERROR: 400,
|
|
@@ -28,10 +29,9 @@ function getHTTPStatusCode(json) {
|
|
|
28
29
|
json
|
|
29
30
|
];
|
|
30
31
|
const httpStatuses = new Set(arr.map((res)=>{
|
|
31
|
-
if ('error' in res) {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
return data.httpStatus;
|
|
32
|
+
if ('error' in res && utils.isObject(res.error.data)) {
|
|
33
|
+
if (typeof res.error.data?.['httpStatus'] === 'number') {
|
|
34
|
+
return res.error.data['httpStatus'];
|
|
35
35
|
}
|
|
36
36
|
const code = codes.TRPC_ERROR_CODES_BY_NUMBER[res.error.code];
|
|
37
37
|
return getStatusCodeFromKey(code);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { TRPC_ERROR_CODES_BY_NUMBER } from '../rpc/codes.mjs';
|
|
2
|
+
import { isObject } from '../utils.mjs';
|
|
2
3
|
|
|
3
4
|
const JSONRPC2_TO_HTTP_CODE = {
|
|
4
5
|
PARSE_ERROR: 400,
|
|
@@ -26,10 +27,9 @@ function getHTTPStatusCode(json) {
|
|
|
26
27
|
json
|
|
27
28
|
];
|
|
28
29
|
const httpStatuses = new Set(arr.map((res)=>{
|
|
29
|
-
if ('error' in res) {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return data.httpStatus;
|
|
30
|
+
if ('error' in res && isObject(res.error.data)) {
|
|
31
|
+
if (typeof res.error.data?.['httpStatus'] === 'number') {
|
|
32
|
+
return res.error.data['httpStatus'];
|
|
33
33
|
}
|
|
34
34
|
const code = TRPC_ERROR_CODES_BY_NUMBER[res.error.code];
|
|
35
35
|
return getStatusCodeFromKey(code);
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { TRPCRequestInfo } from './types';
|
|
2
|
+
export declare function parseConnectionParamsFromUnknown(parsed: unknown): TRPCRequestInfo['connectionParams'];
|
|
3
|
+
export declare function parseConnectionParamsFromString(str: string): TRPCRequestInfo['connectionParams'];
|
|
4
|
+
//# sourceMappingURL=parseConnectionParams.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseConnectionParams.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/http/parseConnectionParams.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,OAAO,GACd,eAAe,CAAC,kBAAkB,CAAC,CA2BrC;AACD,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,MAAM,GACV,eAAe,CAAC,kBAAkB,CAAC,CAYrC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var TRPCError = require('../error/TRPCError.js');
|
|
4
|
+
var utils = require('../utils.js');
|
|
5
|
+
|
|
6
|
+
function parseConnectionParamsFromUnknown(parsed) {
|
|
7
|
+
try {
|
|
8
|
+
if (parsed === null) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
if (!utils.isObject(parsed)) {
|
|
12
|
+
throw new Error('Expected object');
|
|
13
|
+
}
|
|
14
|
+
const nonStringValues = Object.entries(parsed).filter(([_key, value])=>typeof value !== 'string');
|
|
15
|
+
if (nonStringValues.length > 0) {
|
|
16
|
+
throw new Error(`Expected connectionParams to be string values. Got ${nonStringValues.map(([key, value])=>`${key}: ${typeof value}`).join(', ')}`);
|
|
17
|
+
}
|
|
18
|
+
return parsed;
|
|
19
|
+
} catch (cause) {
|
|
20
|
+
throw new TRPCError.TRPCError({
|
|
21
|
+
code: 'PARSE_ERROR',
|
|
22
|
+
message: 'Invalid connection params shape',
|
|
23
|
+
cause
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
function parseConnectionParamsFromString(str) {
|
|
28
|
+
let parsed;
|
|
29
|
+
try {
|
|
30
|
+
parsed = JSON.parse(str);
|
|
31
|
+
} catch (cause) {
|
|
32
|
+
throw new TRPCError.TRPCError({
|
|
33
|
+
code: 'PARSE_ERROR',
|
|
34
|
+
message: 'Not JSON-parsable query params',
|
|
35
|
+
cause
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
return parseConnectionParamsFromUnknown(parsed);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
exports.parseConnectionParamsFromString = parseConnectionParamsFromString;
|
|
42
|
+
exports.parseConnectionParamsFromUnknown = parseConnectionParamsFromUnknown;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { TRPCError } from '../error/TRPCError.mjs';
|
|
2
|
+
import { isObject } from '../utils.mjs';
|
|
3
|
+
|
|
4
|
+
function parseConnectionParamsFromUnknown(parsed) {
|
|
5
|
+
try {
|
|
6
|
+
if (parsed === null) {
|
|
7
|
+
return null;
|
|
8
|
+
}
|
|
9
|
+
if (!isObject(parsed)) {
|
|
10
|
+
throw new Error('Expected object');
|
|
11
|
+
}
|
|
12
|
+
const nonStringValues = Object.entries(parsed).filter(([_key, value])=>typeof value !== 'string');
|
|
13
|
+
if (nonStringValues.length > 0) {
|
|
14
|
+
throw new Error(`Expected connectionParams to be string values. Got ${nonStringValues.map(([key, value])=>`${key}: ${typeof value}`).join(', ')}`);
|
|
15
|
+
}
|
|
16
|
+
return parsed;
|
|
17
|
+
} catch (cause) {
|
|
18
|
+
throw new TRPCError({
|
|
19
|
+
code: 'PARSE_ERROR',
|
|
20
|
+
message: 'Invalid connection params shape',
|
|
21
|
+
cause
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function parseConnectionParamsFromString(str) {
|
|
26
|
+
let parsed;
|
|
27
|
+
try {
|
|
28
|
+
parsed = JSON.parse(str);
|
|
29
|
+
} catch (cause) {
|
|
30
|
+
throw new TRPCError({
|
|
31
|
+
code: 'PARSE_ERROR',
|
|
32
|
+
message: 'Not JSON-parsable query params',
|
|
33
|
+
cause
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
return parseConnectionParamsFromUnknown(parsed);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export { parseConnectionParamsFromString, parseConnectionParamsFromUnknown };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveResponse.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/http/resolveResponse.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resolveResponse.d.ts","sourceRoot":"","sources":["../../../src/unstable-core-do-not-import/http/resolveResponse.ts"],"names":[],"mappings":"AAMA,OAAO,EAA2B,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAExE,OAAO,EACL,KAAK,SAAS,EAGf,MAAM,WAAW,CAAC;AAQnB,OAAO,KAAK,EACV,sBAAsB,EACtB,kCAAkC,EAEnC,MAAM,SAAS,CAAC;AA0BjB,UAAU,yBAAyB,CAAC,OAAO,SAAS,SAAS,CAC3D,SAAQ,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC;IAChD,aAAa,EAAE,kCAAkC,CAAC,OAAO,CAAC,CAAC;IAC3D,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;CACzB;AAyID,wBAAsB,eAAe,CAAC,OAAO,SAAS,SAAS,EAC7D,IAAI,EAAE,yBAAyB,CAAC,OAAO,CAAC,GACvC,OAAO,CAAC,QAAQ,CAAC,CAgZnB"}
|