@nifrajs/core 5.4.0 → 5.5.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.
- package/CHANGELOG.md +29 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/internal/route-lanes.d.ts.map +1 -1
- package/dist/internal/route-lanes.js +2 -1
- package/dist/internal/route-lanes.js.map +1 -1
- package/dist/internal/route-program.d.ts +5 -0
- package/dist/internal/route-program.d.ts.map +1 -1
- package/dist/internal/route-program.js +36 -15
- package/dist/internal/route-program.js.map +1 -1
- package/dist/router/router.d.ts +3 -2
- package/dist/router/router.d.ts.map +1 -1
- package/dist/router/router.js +22 -6
- package/dist/router/router.js.map +1 -1
- package/dist/security/baseline.d.ts.map +1 -1
- package/dist/security/baseline.js +4 -3
- package/dist/security/baseline.js.map +1 -1
- package/dist/server/body-lane.d.ts.map +1 -1
- package/dist/server/body-lane.js +4 -3
- package/dist/server/body-lane.js.map +1 -1
- package/dist/server/body.d.ts +2 -0
- package/dist/server/body.d.ts.map +1 -1
- package/dist/server/body.js +5 -0
- package/dist/server/body.js.map +1 -1
- package/dist/server/cookies.d.ts.map +1 -1
- package/dist/server/cookies.js +9 -2
- package/dist/server/cookies.js.map +1 -1
- package/dist/server/core-copies.js +1 -1
- package/dist/server/idempotency-lane.d.ts +11 -12
- package/dist/server/idempotency-lane.d.ts.map +1 -1
- package/dist/server/idempotency-lane.js +301 -151
- package/dist/server/idempotency-lane.js.map +1 -1
- package/dist/server/methods.d.ts +3 -2
- package/dist/server/methods.d.ts.map +1 -1
- package/dist/server/methods.js.map +1 -1
- package/dist/server/multipart.d.ts.map +1 -1
- package/dist/server/multipart.js +42 -13
- package/dist/server/multipart.js.map +1 -1
- package/dist/server/node-outcome.d.ts.map +1 -1
- package/dist/server/node-outcome.js +2 -2
- package/dist/server/node-outcome.js.map +1 -1
- package/dist/server/query.d.ts +1 -1
- package/dist/server/query.d.ts.map +1 -1
- package/dist/server/query.js +13 -5
- package/dist/server/query.js.map +1 -1
- package/dist/server/request-context.d.ts.map +1 -1
- package/dist/server/request-context.js +3 -3
- package/dist/server/request-context.js.map +1 -1
- package/dist/server/respond.d.ts +17 -0
- package/dist/server/respond.d.ts.map +1 -1
- package/dist/server/respond.js +81 -3
- package/dist/server/respond.js.map +1 -1
- package/dist/server/runtime-core.d.ts +15 -0
- package/dist/server/runtime-core.d.ts.map +1 -1
- package/dist/server/runtime-core.js +41 -1
- package/dist/server/runtime-core.js.map +1 -1
- package/dist/server/server.d.ts +14 -5
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +179 -59
- package/dist/server/server.js.map +1 -1
- package/dist/server/transport-lane.d.ts +2 -2
- package/dist/server/transport-lane.d.ts.map +1 -1
- package/dist/server/transport-lane.js +20 -20
- package/dist/server/transport-lane.js.map +1 -1
- package/dist/static-file.d.ts +29 -6
- package/dist/static-file.d.ts.map +1 -1
- package/dist/static-file.js +43 -12
- package/dist/static-file.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +1 -1
- package/src/internal/route-lanes.ts +18 -16
- package/src/internal/route-program.ts +76 -12
- package/src/router/router.ts +26 -5
- package/src/security/baseline.ts +4 -3
- package/src/server/body-lane.ts +4 -4
- package/src/server/body.ts +6 -0
- package/src/server/cookies.ts +7 -2
- package/src/server/core-copies.ts +1 -1
- package/src/server/idempotency-lane.ts +343 -209
- package/src/server/methods.ts +3 -2
- package/src/server/multipart.ts +62 -14
- package/src/server/node-outcome.ts +2 -1
- package/src/server/query.ts +12 -5
- package/src/server/request-context.ts +6 -3
- package/src/server/respond.ts +108 -6
- package/src/server/runtime-core.ts +54 -1
- package/src/server/server.ts +249 -99
- package/src/server/transport-lane.ts +28 -22
- package/src/static-file.ts +72 -16
package/dist/server/multipart.js
CHANGED
|
@@ -12,6 +12,8 @@ const TOKEN = /^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;
|
|
|
12
12
|
const FALLBACK_FILE_NAME = "file";
|
|
13
13
|
const MAX_FILE_NAME_LENGTH = 255;
|
|
14
14
|
const DASH = 45;
|
|
15
|
+
const CR = 13;
|
|
16
|
+
const LF = 10;
|
|
15
17
|
const QUOTE = 34;
|
|
16
18
|
const BACKSLASH = 92;
|
|
17
19
|
const SLASH = 47;
|
|
@@ -98,14 +100,30 @@ function failureTable(pattern) {
|
|
|
98
100
|
return table;
|
|
99
101
|
}
|
|
100
102
|
/** `end` is the index after the last delimiter, or -1 when there was none. */
|
|
101
|
-
function delimiters(bytes, count, end) {
|
|
102
|
-
return { count, closed: end !== -1 && bytes[end] === DASH && bytes[end + 1] === DASH };
|
|
103
|
+
function delimiters(bytes, count, empty, end) {
|
|
104
|
+
return { count, empty, closed: end !== -1 && bytes[end] === DASH && bytes[end + 1] === DASH };
|
|
103
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* Whether the delimiter at `at` closes a part with no content: the blank line ending the part's
|
|
108
|
+
* headers is followed at once by the CRLF that opens the delimiter. A part whose own content ends
|
|
109
|
+
* in a blank line reads the same, which only spends the empty budget instead of the filled one.
|
|
110
|
+
*/
|
|
111
|
+
function closesEmptyPart(bytes, at) {
|
|
112
|
+
return (at >= 6 &&
|
|
113
|
+
bytes[at - 1] === LF &&
|
|
114
|
+
bytes[at - 2] === CR &&
|
|
115
|
+
bytes[at - 3] === LF &&
|
|
116
|
+
bytes[at - 4] === CR &&
|
|
117
|
+
bytes[at - 5] === LF &&
|
|
118
|
+
bytes[at - 6] === CR);
|
|
119
|
+
}
|
|
120
|
+
const overLimits = (count, empty, limits) => count - empty > limits.filled || empty > limits.empty;
|
|
104
121
|
/** Knuth-Morris-Pratt from `start`: linear in the input whatever the pattern repeats. */
|
|
105
|
-
function scanFrom(bytes, pattern, start, counted, lastEnd,
|
|
122
|
+
function scanFrom(bytes, pattern, start, counted, countedEmpty, lastEnd, limits) {
|
|
106
123
|
const table = failureTable(pattern);
|
|
107
124
|
const size = pattern.length;
|
|
108
125
|
let count = counted;
|
|
126
|
+
let empty = countedEmpty;
|
|
109
127
|
let end = lastEnd;
|
|
110
128
|
for (let i = start, k = 0; i < bytes.length; i++) {
|
|
111
129
|
const byte = bytes[i];
|
|
@@ -114,13 +132,15 @@ function scanFrom(bytes, pattern, start, counted, lastEnd, limit) {
|
|
|
114
132
|
if (byte === pattern[k])
|
|
115
133
|
k++;
|
|
116
134
|
if (k === size) {
|
|
135
|
+
if (count > 0 && closesEmptyPart(bytes, i + 1 - size))
|
|
136
|
+
empty++;
|
|
117
137
|
end = i + 1;
|
|
118
|
-
if (++count
|
|
138
|
+
if (overLimits(++count, empty, limits))
|
|
119
139
|
break;
|
|
120
140
|
k = 0;
|
|
121
141
|
}
|
|
122
142
|
}
|
|
123
|
-
return delimiters(bytes, count, end);
|
|
143
|
+
return delimiters(bytes, count, empty, end);
|
|
124
144
|
}
|
|
125
145
|
/**
|
|
126
146
|
* Find the non-overlapping occurrences of `pattern` (which starts with a dash), stopping once the
|
|
@@ -131,10 +151,11 @@ function scanFrom(bytes, pattern, start, counted, lastEnd, limit) {
|
|
|
131
151
|
* the verify loop re-read the same bytes (dashes against a boundary of dashes) spends a budget of
|
|
132
152
|
* one pass over the input, then the scan continues with the linear matcher.
|
|
133
153
|
*/
|
|
134
|
-
function scanDelimiters(bytes, pattern,
|
|
154
|
+
function scanDelimiters(bytes, pattern, limits) {
|
|
135
155
|
const size = pattern.length;
|
|
136
156
|
const last = bytes.length - size;
|
|
137
157
|
let count = 0;
|
|
158
|
+
let empty = 0;
|
|
138
159
|
let end = -1;
|
|
139
160
|
let work = 0;
|
|
140
161
|
let i = 0;
|
|
@@ -146,18 +167,20 @@ function scanDelimiters(bytes, pattern, limit) {
|
|
|
146
167
|
while (k < size && bytes[i + k] === pattern[k])
|
|
147
168
|
k++;
|
|
148
169
|
if (k === size) {
|
|
170
|
+
if (count > 0 && closesEmptyPart(bytes, i))
|
|
171
|
+
empty++;
|
|
149
172
|
i += size;
|
|
150
173
|
end = i;
|
|
151
|
-
if (++count
|
|
174
|
+
if (overLimits(++count, empty, limits))
|
|
152
175
|
break;
|
|
153
176
|
continue;
|
|
154
177
|
}
|
|
155
178
|
work += k;
|
|
156
179
|
if (work > bytes.length)
|
|
157
|
-
return scanFrom(bytes, pattern, i, count, end,
|
|
180
|
+
return scanFrom(bytes, pattern, i, count, empty, end, limits);
|
|
158
181
|
i++;
|
|
159
182
|
}
|
|
160
|
-
return delimiters(bytes, count, end);
|
|
183
|
+
return delimiters(bytes, count, empty, end);
|
|
161
184
|
}
|
|
162
185
|
/** True when `value` takes more than `max` bytes as UTF-8. */
|
|
163
186
|
function exceedsUtf8(value, max) {
|
|
@@ -253,8 +276,13 @@ function createReader(limits, inner) {
|
|
|
253
276
|
const maxFiles = limitOf(limits.maxFiles, DEFAULT_MAX_FILES, "maxFiles");
|
|
254
277
|
const maxFieldBytes = limitOf(limits.maxFieldBytes, DEFAULT_MAX_FIELD_BYTES, "maxFieldBytes");
|
|
255
278
|
const maxFileBytes = limitOf(limits.maxFileBytes, UNLIMITED_BODY_BYTES, "maxFileBytes");
|
|
256
|
-
// Every part sits between two delimiters, and the last delimiter closes the body.
|
|
257
|
-
|
|
279
|
+
// Every part sits between two delimiters, and the last delimiter closes the body. A part with no
|
|
280
|
+
// content - a file input left empty, which is dropped below - spends a budget of its own, so an
|
|
281
|
+
// untouched optional input does not count against the parts that carry something.
|
|
282
|
+
const delimiterLimits = {
|
|
283
|
+
filled: maxFields + maxFiles + 1,
|
|
284
|
+
empty: maxFields + maxFiles,
|
|
285
|
+
};
|
|
258
286
|
const read = async (source, contentType, maxBodyBytes, protoPoisoning) => {
|
|
259
287
|
const boundary = boundaryOf(contentType);
|
|
260
288
|
if (boundary === undefined) {
|
|
@@ -279,9 +307,10 @@ function createReader(limits, inner) {
|
|
|
279
307
|
delimiter[1] = DASH;
|
|
280
308
|
for (let i = 0; i < boundary.length; i++)
|
|
281
309
|
delimiter[i + 2] = boundary.charCodeAt(i);
|
|
282
|
-
const found = scanDelimiters(bytes, delimiter,
|
|
283
|
-
if (found.count
|
|
310
|
+
const found = scanDelimiters(bytes, delimiter, delimiterLimits);
|
|
311
|
+
if (overLimits(found.count, found.empty, delimiterLimits)) {
|
|
284
312
|
return plainError(413, "too_many_parts");
|
|
313
|
+
}
|
|
285
314
|
// A body is over when `--boundary--` says so. One that stops short is refused here, because a
|
|
286
315
|
// parser that tolerates it hands back the parts it saw as if they were the whole form.
|
|
287
316
|
if (!found.closed)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multipart.js","sourceRoot":"","sources":["../../src/server/multipart.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"multipart.js","sourceRoot":"","sources":["../../src/server/multipart.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-outcome.d.ts","sourceRoot":"","sources":["../../src/server/node-outcome.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"node-outcome.d.ts","sourceRoot":"","sources":["../../src/server/node-outcome.ts"],"names":[],"mappings":"AAgBA,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,WAAW,EAEhB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAEL,KAAK,qBAAqB,EAE3B,MAAM,qBAAqB,CAAA;AAM5B;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;CAAE,GAC1D;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,CAAC,GAAG,SAAS,CAAA;IAClF,yFAAyF;IACzF,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAA;IAC/C,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAC7B,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,CAAC,GAAG,SAAS,CAAA;IAClF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAA;CACnC,CAAA;AAEL;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,CA8BlF;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAWlF;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,GAAG,QAAQ,CAkCzE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,qBAAqB,EAC9B,aAAa,UAAQ,GACpB,gBAAgB,CAUlB;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,GAAG,cAAc,GAAG,gBAAgB,CAW3F"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* conversion. Mirrors `respond.ts` but skips the undici `Response` build where the adapter can write a
|
|
4
4
|
* plain-data render straight to the socket. Imports only runtime-core + respond + the spine types.
|
|
5
5
|
*/
|
|
6
|
-
import { applySetToResponse, applyStaticResponseHeaders, markTaggedResponse, normalizeBodylessResponse, RESPONSE_OWNED_HEADERS, rememberRenderedResponse, SENT_BODY, taggedResponseBody, } from "./respond.js";
|
|
6
|
+
import { applySetToResponse, applyStaticResponseHeaders, markTaggedResponse, normalizeBodylessResponse, RESPONSE_OWNED_HEADERS, rememberRenderedResponse, responseBodyUsed, SENT_BODY, taggedResponseBody, } from "./respond.js";
|
|
7
7
|
import { EMPTY_RESPONSE_CONTROLS, isResponseResult, plainRenderHeaders, } from "./runtime-core.js";
|
|
8
8
|
import { mergeStaticHeaderRecord, staticHeaderRecordCopy, } from "./static-headers.js";
|
|
9
9
|
function isBodylessStatus(status) {
|
|
@@ -33,7 +33,7 @@ export function toNodeOutcome(result, set) {
|
|
|
33
33
|
return nodeOutcomeFromResponse(applySetToResponse(normalizeBodylessResponse(result.toResponse()), set));
|
|
34
34
|
}
|
|
35
35
|
if (result instanceof Response) {
|
|
36
|
-
if (result
|
|
36
|
+
if (responseBodyUsed(result))
|
|
37
37
|
return plainNodeOutcome(SENT_BODY.plain, EMPTY_RESPONSE_CONTROLS);
|
|
38
38
|
return nodeOutcomeFromResponse(applySetToResponse(normalizeBodylessResponse(result), set));
|
|
39
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-outcome.js","sourceRoot":"","sources":["../../src/server/node-outcome.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,kBAAkB,EAClB,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EACxB,SAAS,EACT,kBAAkB,GACnB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,uBAAuB,EAEvB,gBAAgB,EAEhB,kBAAkB,GAEnB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACL,uBAAuB,EAEvB,sBAAsB,GACvB,MAAM,qBAAqB,CAAA;AAE5B,SAAS,gBAAgB,CAAC,MAAc;IACtC,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,CAAA;AAC3D,CAAC;AA4BD;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,MAAqB,EAAE,GAAW;IAC9D,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;QAC1B,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,gBAAgB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;QAC5D,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,EAAE,CAAA;QAClC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC;gBAC9D,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;aACpE,CAAA;QACH,CAAC;QACD,OAAO,uBAAuB,CAC5B,kBAAkB,CAAC,yBAAyB,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,EAAE,GAAG,CAAC,CACxE,CAAA;IACH,CAAC;IACD,IAAI,MAAM,YAAY,QAAQ,EAAE,CAAC;QAC/B,IAAI,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"node-outcome.js","sourceRoot":"","sources":["../../src/server/node-outcome.ts"],"names":[],"mappings":"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"}
|
package/dist/server/query.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export declare function queryObjectOf(search: string): Record<string, QueryValue
|
|
|
17
17
|
* so a JSON route would parse a body no CORS policy ever saw.
|
|
18
18
|
*/
|
|
19
19
|
export declare function isJsonMediaType(contentType: string): boolean;
|
|
20
|
-
/** `application/x-www-form-urlencoded`, with or without
|
|
20
|
+
/** `application/x-www-form-urlencoded`, with or without parameters, in any case (RFC 9110 8.3.1). */
|
|
21
21
|
export declare function isUrlEncodedForm(contentType: string): boolean;
|
|
22
22
|
/**
|
|
23
23
|
* Read an HTML-form body (urlencoded) into the plain object a body schema validates - same byte
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/server/query.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMhD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED;;;;mDAImD;AACnD,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;AAgB1C,iGAAiG;AACjG,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAOlD;AAsCD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/server/query.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMhD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED;;;;mDAImD;AACnD,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;AAgB1C,iGAAiG;AACjG,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAOlD;AAsCD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CA2BxE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAyC5D;AAED,qGAAqG;AACrG,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAU7D;AAID;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,cAAc,CAAC,CActD"}
|
package/dist/server/query.js
CHANGED
|
@@ -87,8 +87,11 @@ export function queryObjectOf(search) {
|
|
|
87
87
|
const amp = search.indexOf("&", pos);
|
|
88
88
|
const end = amp === -1 ? search.length : amp;
|
|
89
89
|
if (end > pos) {
|
|
90
|
-
|
|
91
|
-
|
|
90
|
+
// Bounded by the segment, so a run of bare segments (`a&a&a...`) stays linear; keys are short,
|
|
91
|
+
// so the loop also beats an `indexOf` call.
|
|
92
|
+
let split = pos;
|
|
93
|
+
while (split < end && search.charCodeAt(split) !== 61 /* = */)
|
|
94
|
+
split++;
|
|
92
95
|
const key = search.slice(pos, split);
|
|
93
96
|
const value = split === end ? "" : search.slice(split + 1, end);
|
|
94
97
|
setQueryValue(out, key, value);
|
|
@@ -146,10 +149,15 @@ export function isJsonMediaType(contentType) {
|
|
|
146
149
|
return (essence === "application/json" ||
|
|
147
150
|
(essence.startsWith("application/") && essence.endsWith("+json") && !essence.includes(" ")));
|
|
148
151
|
}
|
|
149
|
-
/** `application/x-www-form-urlencoded`, with or without
|
|
152
|
+
/** `application/x-www-form-urlencoded`, with or without parameters, in any case (RFC 9110 8.3.1). */
|
|
150
153
|
export function isUrlEncodedForm(contentType) {
|
|
151
|
-
|
|
152
|
-
contentType.startsWith("application/x-www-form-urlencoded;"))
|
|
154
|
+
if (contentType === "application/x-www-form-urlencoded" ||
|
|
155
|
+
contentType.startsWith("application/x-www-form-urlencoded;")) {
|
|
156
|
+
return true;
|
|
157
|
+
}
|
|
158
|
+
const semi = contentType.indexOf(";");
|
|
159
|
+
const essence = (semi === -1 ? contentType : contentType.slice(0, semi)).trim().toLowerCase();
|
|
160
|
+
return essence === "application/x-www-form-urlencoded";
|
|
153
161
|
}
|
|
154
162
|
const FORM_DECODER = new TextDecoder();
|
|
155
163
|
/**
|
package/dist/server/query.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/server/query.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/server/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.d.ts","sourceRoot":"","sources":["../../src/server/request-context.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"request-context.d.ts","sourceRoot":"","sources":["../../src/server/request-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { cookieNamePrefix, parseCookies, serializeCookie } from "./cookies.js";
|
|
|
5
5
|
import { headerObjectOf } from "./headers.js";
|
|
6
6
|
import { plainError } from "./http.js";
|
|
7
7
|
import { searchOf } from "./query.js";
|
|
8
|
-
import { responseJsonContentType } from "./respond.js";
|
|
8
|
+
import { residentText, responseJsonContentType } from "./respond.js";
|
|
9
9
|
import { CONTEXT_REQUEST, CONTEXT_SEARCH, CONTEXT_SET, fallbackWaitUntil, getNeverAbortSignal, getUnboundedRequestBudget, headerOf, isResponseResult, requestOf, } from "./runtime-core.js";
|
|
10
10
|
export { readBodyFramed, readBoundedJsonSource } from "./body-lane.js";
|
|
11
11
|
/** A fixed past instant for cookie deletion (`Expires`). A literal epoch - deterministic, unlike an
|
|
@@ -263,8 +263,8 @@ export class RequestContext {
|
|
|
263
263
|
}
|
|
264
264
|
// Default to text/plain; if the caller passes their own headers, they own the content-type.
|
|
265
265
|
if (i?.headers !== undefined)
|
|
266
|
-
return markResidentBody(new Response(body, i));
|
|
267
|
-
return markResidentBody(new Response(body, { ...i, headers: { "content-type": TEXT_CONTENT_TYPE } }));
|
|
266
|
+
return markResidentBody(residentText(new Response(body, i), body));
|
|
267
|
+
return markResidentBody(residentText(new Response(body, { ...i, headers: { "content-type": TEXT_CONTENT_TYPE } }), body));
|
|
268
268
|
}
|
|
269
269
|
get query() {
|
|
270
270
|
if (!this.queryReady) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../src/server/request-context.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAEtD,OAAO,EAAsB,gBAAgB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAClG,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../src/server/request-context.ts"],"names":[],"mappings":"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"}
|
package/dist/server/respond.d.ts
CHANGED
|
@@ -39,12 +39,29 @@ export declare function rememberRenderedResponse(response: Response, hasBody: bo
|
|
|
39
39
|
* handed back on any other request, that copy is copied again.
|
|
40
40
|
*/
|
|
41
41
|
export declare function writableResponse(response: Response, request?: Request): Response;
|
|
42
|
+
/**
|
|
43
|
+
* Whether `response`, handed over by a hook as this request's answer, may be sent: not when its body
|
|
44
|
+
* already answered a request or was handed over for one. A body-bearing response is claimed here.
|
|
45
|
+
*/
|
|
46
|
+
export declare function claimHandedOver(response: Response): boolean;
|
|
47
|
+
/**
|
|
48
|
+
* `writableResponse` for a Response a hook hands back in place of the one it was given, with the
|
|
49
|
+
* single-use check a handler's result gets: a reused body is the internal error a reused handler
|
|
50
|
+
* result is, carrying none of its earlier request's headers.
|
|
51
|
+
*/
|
|
52
|
+
export declare function handedBackResponse(response: Response, request: Request): Response;
|
|
42
53
|
/** Normalize handler-produced bodyless responses before response middleware sees them. */
|
|
43
54
|
export declare function normalizeBodylessResponse(response: Response, request?: Request): Response;
|
|
44
55
|
type ResponseBodyTagOption = false | true | object | undefined;
|
|
45
56
|
/** The framework-serialized bytes riding a tagged Response, or `undefined` for raw/streamed ones. */
|
|
46
57
|
export declare function taggedResponseBody(response: Response, owners?: ReadonlySet<object>): string | Uint8Array | undefined;
|
|
47
58
|
export declare function taggedResponseOwner(response: Response): object | undefined;
|
|
59
|
+
/** From now on, keep the string of each `c.text()` response for the body tier. */
|
|
60
|
+
export declare function recordResidentTexts(): void;
|
|
61
|
+
/** `response`, which `c.text()` built from `body`. */
|
|
62
|
+
export declare function residentText(response: Response, body: string): Response;
|
|
63
|
+
/** Whether the actual body, or its body-tier substitute, has already been handed to a request. */
|
|
64
|
+
export declare function responseBodyUsed(response: Response): boolean;
|
|
48
65
|
export declare function markTaggedResponse(response: Response, body: string | Uint8Array, owner?: object): Response;
|
|
49
66
|
/** Fused-lane respond when `c.set` is untouched. Bun 1.3's native `Response.json` now beats the
|
|
50
67
|
* older hand-inlined stringify + Response construction on this lane while preserving the exact
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"respond.d.ts","sourceRoot":"","sources":["../../src/server/respond.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAIL,KAAK,aAAa,EAIlB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAA2B,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AA8BzF;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EACxC,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC3C,qBAAqB,CAkBvB;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,OAAO,GAChB,QAAQ,CAYV;AA4ED,wBAAgB,uBAAuB,IAAI,MAAM,CAKhD;AAmED,qGAAqG;AACrG,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,QAAQ,CAGvF;AAuBD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,CAuBhF;AAcD,0FAA0F;AAC1F,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,CAazF;AAOD,KAAK,qBAAqB,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAAA;AAE9D,qGAAqG;AACrG,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAC3B,MAAM,GAAG,UAAU,GAAG,SAAS,CAqBjC;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAO1E;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,MAAM,GAAG,UAAU,EACzB,KAAK,CAAC,EAAE,MAAM,GACb,QAAQ,CAKV;AAiBD;;gFAEgF;AAChF,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,OAAO,EACf,eAAe,GAAE,qBAA6B,EAC9C,OAAO,CAAC,EAAE,qBAAqB,EAC/B,SAAS,UAAQ,EACjB,OAAO,CAAC,EAAE,OAAO,GAChB,QAAQ,CAkFV;AAED;yGACyG;AACzG,wBAAgB,YAAY,CAC1B,MAAM,EAAE,OAAO,EACf,GAAG,EAAE,UAAU,EACf,eAAe,GAAE,qBAA6B,EAC9C,OAAO,CAAC,EAAE,qBAAqB,EAC/B,SAAS,UAAQ,GAChB,QAAQ,CAMV;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,MAAM,EAAE,aAAa,EACrB,GAAG,EAAE,MAAM,EACX,eAAe,GAAE,qBAA6B,EAC9C,OAAO,CAAC,EAAE,qBAAqB,EAC/B,OAAO,CAAC,EAAE,OAAO,GAChB,QAAQ,
|
|
1
|
+
{"version":3,"file":"respond.d.ts","sourceRoot":"","sources":["../../src/server/respond.ts"],"names":[],"mappings":"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"}
|
package/dist/server/respond.js
CHANGED
|
@@ -257,6 +257,33 @@ export function writableResponse(response, request) {
|
|
|
257
257
|
}
|
|
258
258
|
return copiedResponse(response, new Response(response.body, response), true);
|
|
259
259
|
}
|
|
260
|
+
// Body-bearing responses a hook handed over as a request's answer. The Node writer sends a buffered
|
|
261
|
+
// body without reading it, so `bodyUsed` alone does not show that one was already sent.
|
|
262
|
+
const HANDED_OVER = new WeakSet();
|
|
263
|
+
/**
|
|
264
|
+
* Whether `response`, handed over by a hook as this request's answer, may be sent: not when its body
|
|
265
|
+
* already answered a request or was handed over for one. A body-bearing response is claimed here.
|
|
266
|
+
*/
|
|
267
|
+
export function claimHandedOver(response) {
|
|
268
|
+
if (responseBodyUsed(response) || HANDED_OVER.has(response))
|
|
269
|
+
return false;
|
|
270
|
+
if (hasResidentBody(response) ||
|
|
271
|
+
WRITABLE_BODY_RESPONSES.has(response) ||
|
|
272
|
+
response.body !== null) {
|
|
273
|
+
HANDED_OVER.add(response);
|
|
274
|
+
}
|
|
275
|
+
return true;
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* `writableResponse` for a Response a hook hands back in place of the one it was given, with the
|
|
279
|
+
* single-use check a handler's result gets: a reused body is the internal error a reused handler
|
|
280
|
+
* result is, carrying none of its earlier request's headers.
|
|
281
|
+
*/
|
|
282
|
+
export function handedBackResponse(response, request) {
|
|
283
|
+
return claimHandedOver(response)
|
|
284
|
+
? writableResponse(response, request)
|
|
285
|
+
: toResponse(SENT_BODY, EMPTY_RESPONSE_CONTROLS, false, undefined, request);
|
|
286
|
+
}
|
|
260
287
|
/** `copy`, recorded and carrying `original`'s buffered-body marker: the Node writer still sends the
|
|
261
288
|
* serialized bytes directly, and a marked body-less Response keeps the body only the marker holds. */
|
|
262
289
|
function copiedResponse(original, copy, hasBody) {
|
|
@@ -308,6 +335,48 @@ export function taggedResponseOwner(response) {
|
|
|
308
335
|
? marker.owner
|
|
309
336
|
: undefined;
|
|
310
337
|
}
|
|
338
|
+
// The text each c.text() response was built from; null once adopted by the body tier. A hook can
|
|
339
|
+
// substitute its body without consuming the original stream, but that source is still single-use.
|
|
340
|
+
const RESIDENT_TEXTS = new WeakMap();
|
|
341
|
+
let residentTextsRecorded = false;
|
|
342
|
+
/** From now on, keep the string of each `c.text()` response for the body tier. */
|
|
343
|
+
export function recordResidentTexts() {
|
|
344
|
+
residentTextsRecorded = true;
|
|
345
|
+
}
|
|
346
|
+
/** `response`, which `c.text()` built from `body`. */
|
|
347
|
+
export function residentText(response, body) {
|
|
348
|
+
if (residentTextsRecorded)
|
|
349
|
+
RESIDENT_TEXTS.set(response, body);
|
|
350
|
+
return response;
|
|
351
|
+
}
|
|
352
|
+
/** Whether the actual body, or its body-tier substitute, has already been handed to a request. */
|
|
353
|
+
export function responseBodyUsed(response) {
|
|
354
|
+
return response.bodyUsed || RESIDENT_TEXTS.get(response) === null;
|
|
355
|
+
}
|
|
356
|
+
/** `response` tagged with the text it was built from, so this app's body-tier hooks get the string. */
|
|
357
|
+
function withResidentText(response, source, owner) {
|
|
358
|
+
if (owner === undefined)
|
|
359
|
+
return response;
|
|
360
|
+
const text = RESIDENT_TEXTS.get(source);
|
|
361
|
+
if (text === undefined || text === null)
|
|
362
|
+
return response;
|
|
363
|
+
RESIDENT_TEXTS.set(source, null);
|
|
364
|
+
return taggedResponseBody(response) !== undefined
|
|
365
|
+
? response
|
|
366
|
+
: markTaggedResponse(response, text, owner);
|
|
367
|
+
}
|
|
368
|
+
/** A buffered page built from the body it reports, tagged for this app's body-tier hooks. */
|
|
369
|
+
function bufferedPageResponse(page, owner) {
|
|
370
|
+
const headers = new Headers();
|
|
371
|
+
for (const [name, value] of Object.entries(page.headers ?? {})) {
|
|
372
|
+
if (typeof value === "string")
|
|
373
|
+
headers.set(name, value);
|
|
374
|
+
else
|
|
375
|
+
for (const item of value)
|
|
376
|
+
headers.append(name, item);
|
|
377
|
+
}
|
|
378
|
+
return markTaggedResponse(withBody(new Response(page.body, { status: page.status, headers })), page.body, owner);
|
|
379
|
+
}
|
|
311
380
|
export function markTaggedResponse(response, body, owner) {
|
|
312
381
|
Object.defineProperty(response, RESPONSE_BODY, {
|
|
313
382
|
value: owner === undefined ? body : { body, owner },
|
|
@@ -407,13 +476,22 @@ export function toResponse(result, set, tagResponseBody = false, statics, reques
|
|
|
407
476
|
// only - a plain render's body is a user value, never another response carrier.
|
|
408
477
|
return toResponse(plain.body, plainRenderSet(plain, set), tagResponseBody, statics, request);
|
|
409
478
|
}
|
|
410
|
-
|
|
479
|
+
// A buffered page is built from the body it reports, so the bytes its hooks see are the ones sent.
|
|
480
|
+
const owner = typeof tagResponseBody === "object" ? tagResponseBody : undefined;
|
|
481
|
+
const page = owner === undefined ? undefined : result.toNodeBody?.();
|
|
482
|
+
const response = owner !== undefined &&
|
|
483
|
+
page !== undefined &&
|
|
484
|
+
typeof page.body === "string" &&
|
|
485
|
+
!isBodylessStatus(page.status)
|
|
486
|
+
? bufferedPageResponse({ ...page, body: page.body }, owner)
|
|
487
|
+
: result.toResponse();
|
|
488
|
+
return withStatics(applySetToResponse(normalizeBodylessResponse(response, request), set, request), statics, request);
|
|
411
489
|
}
|
|
412
490
|
if (result instanceof Response) {
|
|
413
|
-
if (result
|
|
491
|
+
if (responseBodyUsed(result)) {
|
|
414
492
|
return toResponse(SENT_BODY, EMPTY_RESPONSE_CONTROLS, false, statics, request);
|
|
415
493
|
}
|
|
416
|
-
return withStatics(applySetToResponse(normalizeBodylessResponse(result, request), set, request), statics, request);
|
|
494
|
+
return withResidentText(withStatics(applySetToResponse(normalizeBodylessResponse(result, request), set, request), statics, request), result, typeof tagResponseBody === "object" ? tagResponseBody : undefined);
|
|
417
495
|
}
|
|
418
496
|
return renderValue(result, set, tagResponseBody, statics, request);
|
|
419
497
|
}
|