@nifrajs/core 3.3.0 → 4.0.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/README.md +26 -0
- package/dist/assurance.d.ts +7 -0
- package/dist/assurance.d.ts.map +1 -1
- package/dist/assurance.js +39 -3
- package/dist/assurance.js.map +1 -1
- package/dist/capabilities.d.ts +20 -2
- package/dist/capabilities.d.ts.map +1 -1
- package/dist/capabilities.js +47 -15
- package/dist/capabilities.js.map +1 -1
- package/dist/diff.d.ts +6 -1
- package/dist/diff.d.ts.map +1 -1
- package/dist/diff.js +36 -2
- package/dist/diff.js.map +1 -1
- package/dist/durable-adapters.d.ts.map +1 -1
- package/dist/durable-adapters.js +16 -3
- package/dist/durable-adapters.js.map +1 -1
- package/dist/durable-effect.d.ts.map +1 -1
- package/dist/durable-effect.js +6 -3
- package/dist/durable-effect.js.map +1 -1
- package/dist/edge-kit.d.ts +2 -0
- package/dist/edge-kit.d.ts.map +1 -1
- package/dist/edge-kit.js +2 -0
- package/dist/edge-kit.js.map +1 -1
- package/dist/effect-lifecycle.d.ts.map +1 -1
- package/dist/effect-lifecycle.js +2 -1
- package/dist/effect-lifecycle.js.map +1 -1
- package/dist/effect-scope.d.ts.map +1 -1
- package/dist/effect-scope.js +1 -1
- package/dist/effect-scope.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/evidence.d.ts +36 -1
- package/dist/evidence.d.ts.map +1 -1
- package/dist/evidence.js +219 -13
- package/dist/evidence.js.map +1 -1
- package/dist/idempotency.d.ts +31 -0
- package/dist/idempotency.d.ts.map +1 -1
- package/dist/idempotency.js +48 -9
- package/dist/idempotency.js.map +1 -1
- package/dist/index.d.ts +9 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/internal/code-unit-order.d.ts +7 -0
- package/dist/internal/code-unit-order.d.ts.map +1 -0
- package/dist/internal/code-unit-order.js +9 -0
- package/dist/internal/code-unit-order.js.map +1 -0
- package/dist/internal/durable-saga-protocol.d.ts.map +1 -1
- package/dist/internal/durable-saga-protocol.js +2 -0
- package/dist/internal/durable-saga-protocol.js.map +1 -1
- package/dist/internal/route-catalog.d.ts +6 -6
- package/dist/internal/route-catalog.d.ts.map +1 -1
- package/dist/internal/route-catalog.js +20 -18
- package/dist/internal/route-catalog.js.map +1 -1
- package/dist/internal/route-compiler.d.ts +7 -6
- package/dist/internal/route-compiler.d.ts.map +1 -1
- package/dist/internal/route-compiler.js +36 -4
- package/dist/internal/route-compiler.js.map +1 -1
- package/dist/internal/route-execution.d.ts +7 -3
- package/dist/internal/route-execution.d.ts.map +1 -1
- package/dist/internal/route-execution.js.map +1 -1
- package/dist/internal/route-lanes.d.ts +1 -0
- package/dist/internal/route-lanes.d.ts.map +1 -1
- package/dist/internal/route-lanes.js +34 -29
- package/dist/internal/route-lanes.js.map +1 -1
- package/dist/internal/route-program.d.ts +8 -2
- package/dist/internal/route-program.d.ts.map +1 -1
- package/dist/internal/route-program.js +222 -20
- package/dist/internal/route-program.js.map +1 -1
- package/dist/ledger.d.ts.map +1 -1
- package/dist/ledger.js +8 -5
- package/dist/ledger.js.map +1 -1
- package/dist/manifest.d.ts +1 -1
- package/dist/manifest.d.ts.map +1 -1
- package/dist/manifest.js +52 -46
- package/dist/manifest.js.map +1 -1
- package/dist/mount.d.ts +36 -0
- package/dist/mount.d.ts.map +1 -1
- package/dist/mount.js +32 -0
- package/dist/mount.js.map +1 -1
- package/dist/reflection.d.ts +26 -0
- package/dist/reflection.d.ts.map +1 -1
- package/dist/reflection.js +65 -1
- package/dist/reflection.js.map +1 -1
- package/dist/response-observer.d.ts +1 -1
- package/dist/response-observer.d.ts.map +1 -1
- package/dist/response-observer.js.map +1 -1
- package/dist/router/overlap.d.ts +23 -0
- package/dist/router/overlap.d.ts.map +1 -0
- package/dist/router/overlap.js +224 -0
- package/dist/router/overlap.js.map +1 -0
- package/dist/router/pattern.d.ts +117 -2
- package/dist/router/pattern.d.ts.map +1 -1
- package/dist/router/pattern.js +283 -23
- package/dist/router/pattern.js.map +1 -1
- package/dist/router/router.d.ts +18 -4
- package/dist/router/router.d.ts.map +1 -1
- package/dist/router/router.js +51 -44
- package/dist/router/router.js.map +1 -1
- package/dist/server/auth.d.ts +53 -0
- package/dist/server/auth.d.ts.map +1 -0
- package/dist/server/auth.js +9 -0
- package/dist/server/auth.js.map +1 -0
- package/dist/server/bare-error-lane.d.ts +12 -7
- package/dist/server/bare-error-lane.d.ts.map +1 -1
- package/dist/server/bare-error-lane.js +13 -11
- package/dist/server/bare-error-lane.js.map +1 -1
- package/dist/server/body-lane.d.ts +20 -2
- package/dist/server/body-lane.d.ts.map +1 -1
- package/dist/server/body-lane.js +26 -7
- package/dist/server/body-lane.js.map +1 -1
- package/dist/server/body-parser.d.ts +68 -0
- package/dist/server/body-parser.d.ts.map +1 -0
- package/dist/server/body-parser.js +172 -0
- package/dist/server/body-parser.js.map +1 -0
- package/dist/server/body.d.ts.map +1 -1
- package/dist/server/body.js +62 -7
- package/dist/server/body.js.map +1 -1
- package/dist/server/client-ip.d.ts +8 -0
- package/dist/server/client-ip.d.ts.map +1 -1
- package/dist/server/client-ip.js +8 -0
- package/dist/server/client-ip.js.map +1 -1
- package/dist/server/context.d.ts +71 -6
- package/dist/server/context.d.ts.map +1 -1
- package/dist/server/contract.d.ts +15 -5
- package/dist/server/contract.d.ts.map +1 -1
- package/dist/server/contract.js +25 -4
- package/dist/server/contract.js.map +1 -1
- package/dist/server/cookies.d.ts +4 -1
- package/dist/server/cookies.d.ts.map +1 -1
- package/dist/server/cookies.js +40 -2
- package/dist/server/cookies.js.map +1 -1
- package/dist/server/core-copies.d.ts +2 -0
- package/dist/server/core-copies.d.ts.map +1 -0
- package/dist/server/core-copies.js +20 -0
- package/dist/server/core-copies.js.map +1 -0
- package/dist/server/edge.d.ts.map +1 -1
- package/dist/server/edge.js +2 -0
- package/dist/server/edge.js.map +1 -1
- package/dist/server/http.d.ts +11 -0
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +36 -0
- package/dist/server/http.js.map +1 -1
- package/dist/server/idempotency-lane.d.ts +6 -0
- package/dist/server/idempotency-lane.d.ts.map +1 -1
- package/dist/server/idempotency-lane.js +130 -73
- package/dist/server/idempotency-lane.js.map +1 -1
- package/dist/server/install.d.ts +4 -0
- package/dist/server/install.d.ts.map +1 -1
- package/dist/server/install.js +4 -0
- package/dist/server/install.js.map +1 -1
- package/dist/server/methods.d.ts +45 -0
- package/dist/server/methods.d.ts.map +1 -0
- package/dist/server/methods.js +37 -0
- package/dist/server/methods.js.map +1 -0
- package/dist/server/multipart.d.ts +63 -0
- package/dist/server/multipart.d.ts.map +1 -0
- package/dist/server/multipart.js +374 -0
- package/dist/server/multipart.js.map +1 -0
- package/dist/server/node-outcome-hook.d.ts +20 -0
- package/dist/server/node-outcome-hook.d.ts.map +1 -1
- package/dist/server/node-outcome-hook.js +15 -6
- package/dist/server/node-outcome-hook.js.map +1 -1
- package/dist/server/not-found-answer.d.ts +40 -0
- package/dist/server/not-found-answer.d.ts.map +1 -0
- package/dist/server/not-found-answer.js +56 -0
- package/dist/server/not-found-answer.js.map +1 -0
- package/dist/server/not-found.d.ts +23 -0
- package/dist/server/not-found.d.ts.map +1 -0
- package/dist/server/not-found.js +81 -0
- package/dist/server/not-found.js.map +1 -0
- package/dist/server/plugin.d.ts +26 -1
- package/dist/server/plugin.d.ts.map +1 -1
- package/dist/server/plugin.js.map +1 -1
- package/dist/server/proto-guard.d.ts +18 -5
- package/dist/server/proto-guard.d.ts.map +1 -1
- package/dist/server/proto-guard.js +114 -9
- package/dist/server/proto-guard.js.map +1 -1
- package/dist/server/query.d.ts +7 -0
- package/dist/server/query.d.ts.map +1 -1
- package/dist/server/query.js +47 -0
- package/dist/server/query.js.map +1 -1
- package/dist/server/registry.d.ts +13 -2
- package/dist/server/registry.d.ts.map +1 -1
- package/dist/server/request-context.d.ts +11 -0
- package/dist/server/request-context.d.ts.map +1 -1
- package/dist/server/request-context.js +33 -19
- package/dist/server/request-context.js.map +1 -1
- package/dist/server/request-lineage.d.ts +8 -0
- package/dist/server/request-lineage.d.ts.map +1 -0
- package/dist/server/request-lineage.js +14 -0
- package/dist/server/request-lineage.js.map +1 -0
- package/dist/server/request-target.d.ts +31 -0
- package/dist/server/request-target.d.ts.map +1 -0
- package/dist/server/request-target.js +44 -0
- package/dist/server/request-target.js.map +1 -0
- package/dist/server/respond.d.ts +1 -1
- package/dist/server/respond.d.ts.map +1 -1
- package/dist/server/respond.js +16 -4
- package/dist/server/respond.js.map +1 -1
- package/dist/server/response-contract-lane.d.ts +19 -1
- package/dist/server/response-contract-lane.d.ts.map +1 -1
- package/dist/server/response-contract-lane.js +59 -14
- package/dist/server/response-contract-lane.js.map +1 -1
- package/dist/server/response-observer-runtime.d.ts +9 -5
- package/dist/server/response-observer-runtime.d.ts.map +1 -1
- package/dist/server/response-observer-runtime.js +10 -6
- package/dist/server/response-observer-runtime.js.map +1 -1
- package/dist/server/runtime-core.d.ts +2 -0
- package/dist/server/runtime-core.d.ts.map +1 -1
- package/dist/server/runtime-core.js.map +1 -1
- package/dist/server/server-types.d.ts +55 -3
- package/dist/server/server-types.d.ts.map +1 -1
- package/dist/server/server.d.ts +194 -19
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +1342 -274
- package/dist/server/server.js.map +1 -1
- package/dist/server/sse.d.ts.map +1 -1
- package/dist/server/sse.js +10 -7
- package/dist/server/sse.js.map +1 -1
- package/dist/server/static-headers.d.ts +3 -0
- package/dist/server/static-headers.d.ts.map +1 -1
- package/dist/server/static-headers.js +19 -1
- package/dist/server/static-headers.js.map +1 -1
- package/dist/server/transport-lane.d.ts +8 -0
- package/dist/server/transport-lane.d.ts.map +1 -1
- package/dist/server/transport-lane.js +9 -8
- package/dist/server/transport-lane.js.map +1 -1
- package/dist/server/validation.d.ts.map +1 -1
- package/dist/server/validation.js +5 -1
- package/dist/server/validation.js.map +1 -1
- package/dist/server/websocket.d.ts +10 -3
- package/dist/server/websocket.d.ts.map +1 -1
- package/dist/server/websocket.js +7 -4
- package/dist/server/websocket.js.map +1 -1
- package/dist/server/ws-bun.d.ts +2 -0
- package/dist/server/ws-bun.d.ts.map +1 -1
- package/dist/server/ws-bun.js +6 -3
- package/dist/server/ws-bun.js.map +1 -1
- package/dist/server/ws-hook.d.ts +2 -1
- package/dist/server/ws-hook.d.ts.map +1 -1
- package/dist/server.d.ts +8 -5
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +5 -2
- package/dist/server.js.map +1 -1
- package/dist/single-copy-register.js +5 -0
- package/dist/single-copy-register.js.map +1 -1
- package/dist/single-copy.d.ts +46 -3
- package/dist/single-copy.d.ts.map +1 -1
- package/dist/single-copy.js +125 -12
- package/dist/single-copy.js.map +1 -1
- package/dist/tool-contract.d.ts +23 -0
- package/dist/tool-contract.d.ts.map +1 -1
- package/dist/tool-contract.js +37 -3
- package/dist/tool-contract.js.map +1 -1
- package/dist/transport-codec.d.ts.map +1 -1
- package/dist/transport-codec.js +2 -1
- package/dist/transport-codec.js.map +1 -1
- package/package.json +27 -2
- package/src/assurance.ts +52 -2
- package/src/capabilities.ts +81 -22
- package/src/diff.ts +54 -7
- package/src/durable-adapters.ts +20 -3
- package/src/durable-effect.ts +10 -3
- package/src/edge-kit.ts +7 -0
- package/src/effect-lifecycle.ts +5 -1
- package/src/effect-scope.ts +2 -1
- package/src/errors.ts +3 -0
- package/src/evidence.ts +302 -12
- package/src/idempotency.ts +80 -9
- package/src/index.ts +41 -3
- package/src/internal/code-unit-order.ts +8 -0
- package/src/internal/durable-saga-protocol.ts +2 -0
- package/src/internal/route-catalog.ts +19 -18
- package/src/internal/route-compiler.ts +62 -13
- package/src/internal/route-execution.ts +13 -3
- package/src/internal/route-lanes.ts +37 -28
- package/src/internal/route-program.ts +434 -20
- package/src/ledger.ts +11 -5
- package/src/manifest.ts +52 -46
- package/src/mount.ts +62 -0
- package/src/reflection.ts +84 -1
- package/src/response-observer.ts +1 -0
- package/src/router/overlap.ts +258 -0
- package/src/router/pattern.ts +349 -25
- package/src/router/router.ts +76 -51
- package/src/server/auth.ts +75 -0
- package/src/server/bare-error-lane.ts +12 -11
- package/src/server/body-lane.ts +46 -6
- package/src/server/body-parser.ts +241 -0
- package/src/server/body.ts +82 -9
- package/src/server/client-ip.ts +9 -0
- package/src/server/context.ts +219 -12
- package/src/server/contract.ts +54 -9
- package/src/server/cookies.ts +34 -2
- package/src/server/core-copies.ts +21 -0
- package/src/server/edge.ts +2 -0
- package/src/server/http.ts +34 -0
- package/src/server/idempotency-lane.ts +147 -72
- package/src/server/install.ts +6 -0
- package/src/server/methods.ts +143 -0
- package/src/server/multipart.ts +424 -0
- package/src/server/node-outcome-hook.ts +40 -7
- package/src/server/not-found-answer.ts +109 -0
- package/src/server/not-found.ts +121 -0
- package/src/server/plugin.ts +45 -1
- package/src/server/proto-guard.ts +128 -9
- package/src/server/query.ts +49 -0
- package/src/server/registry.ts +17 -2
- package/src/server/request-context.ts +44 -16
- package/src/server/request-lineage.ts +15 -0
- package/src/server/request-target.ts +46 -0
- package/src/server/respond.ts +14 -3
- package/src/server/response-contract-lane.ts +97 -16
- package/src/server/response-observer-runtime.ts +37 -8
- package/src/server/runtime-core.ts +2 -0
- package/src/server/server-types.ts +61 -2
- package/src/server/server.ts +1798 -355
- package/src/server/sse.ts +10 -8
- package/src/server/static-headers.ts +22 -1
- package/src/server/transport-lane.ts +17 -9
- package/src/server/validation.ts +7 -1
- package/src/server/websocket.ts +23 -9
- package/src/server/ws-bun.ts +8 -3
- package/src/server/ws-hook.ts +2 -1
- package/src/server.ts +39 -2
- package/src/single-copy-register.ts +5 -0
- package/src/single-copy.ts +160 -12
- package/src/tool-contract.ts +66 -3
- package/src/transport-codec.ts +2 -1
package/dist/server/query.js
CHANGED
|
@@ -99,6 +99,53 @@ export function queryObjectOf(search) {
|
|
|
99
99
|
}
|
|
100
100
|
return out;
|
|
101
101
|
}
|
|
102
|
+
/**
|
|
103
|
+
* `application/json` or an `application/*+json` type, with or without parameters, compared as a media
|
|
104
|
+
* type rather than searched as a substring. A substring test also matches `text/plain; x=application/json`,
|
|
105
|
+
* whose essence is `text/plain` - a type a browser sends cross-origin with credentials and no preflight,
|
|
106
|
+
* so a JSON route would parse a body no CORS policy ever saw.
|
|
107
|
+
*/
|
|
108
|
+
export function isJsonMediaType(contentType) {
|
|
109
|
+
// The spellings common clients send, by exact match.
|
|
110
|
+
if (contentType === "application/json" ||
|
|
111
|
+
contentType === "application/json; charset=utf-8" ||
|
|
112
|
+
contentType === "application/json;charset=UTF-8") {
|
|
113
|
+
return true;
|
|
114
|
+
}
|
|
115
|
+
// Every other lowercase `application/json` spelling, parameters or not, without slicing or lowercasing.
|
|
116
|
+
if (contentType.startsWith("application/json")) {
|
|
117
|
+
let delimiter = 16;
|
|
118
|
+
while (delimiter < contentType.length) {
|
|
119
|
+
const char = contentType.charCodeAt(delimiter);
|
|
120
|
+
if (char !== 32 /* SP */ && char !== 9 /* HTAB */)
|
|
121
|
+
break;
|
|
122
|
+
delimiter++;
|
|
123
|
+
}
|
|
124
|
+
if (delimiter === contentType.length || contentType.charCodeAt(delimiter) === 59 /* ; */) {
|
|
125
|
+
return true;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
// Lowercase `application/*+json` spellings by the same rules as the parse below, without allocating.
|
|
129
|
+
if (contentType.startsWith("application/")) {
|
|
130
|
+
const params = contentType.indexOf(";", 12);
|
|
131
|
+
let end = params === -1 ? contentType.length : params;
|
|
132
|
+
while (end > 12) {
|
|
133
|
+
const char = contentType.charCodeAt(end - 1);
|
|
134
|
+
if (char !== 32 /* SP */ && char !== 9 /* HTAB */)
|
|
135
|
+
break;
|
|
136
|
+
end--;
|
|
137
|
+
}
|
|
138
|
+
if (end >= 17 && contentType.startsWith("+json", end - 5)) {
|
|
139
|
+
const space = contentType.indexOf(" ", 12);
|
|
140
|
+
if (space === -1 || space >= end)
|
|
141
|
+
return true;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
const semi = contentType.indexOf(";");
|
|
145
|
+
const essence = (semi === -1 ? contentType : contentType.slice(0, semi)).trim().toLowerCase();
|
|
146
|
+
return (essence === "application/json" ||
|
|
147
|
+
(essence.startsWith("application/") && essence.endsWith("+json") && !essence.includes(" ")));
|
|
148
|
+
}
|
|
102
149
|
/** `application/x-www-form-urlencoded`, with or without a charset suffix. */
|
|
103
150
|
export function isUrlEncodedForm(contentType) {
|
|
104
151
|
return (contentType === "application/x-www-form-urlencoded" ||
|
package/dist/server/query.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/server/query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAIlD,+FAA+F;AAC/F,oGAAoG;AACpG,oGAAoG;AACpG,2DAA2D;AAC3D,MAAM,UAAU,QAAQ,CAAC,GAAW;IAClC,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,CAAA;AAC/B,CAAC;AASD,iGAAiG;AACjG,kGAAkG;AAClG,gGAAgG;AAChG,8FAA8F;AAC9F,kGAAkG;AAClG,mGAAmG;AACnG,8FAA8F;AAC9F,kGAAkG;AAClG,yDAAyD;AACzD,MAAM,wBAAwB,GAAG,OAAQ,UAAgC,CAAC,GAAG,KAAK,WAAW,CAAA;AAC7F,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAA;AAClD,MAAM,oBAAoB,GAAG,IAAI,CAAA;AACjC,MAAM,oBAAoB,GAAG,EAAE,CAAA;AAE/B,iGAAiG;AACjG,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,IAAI,wBAAwB;QAAE,OAAO,GAAG,CAAA;IACxC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACrC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAA;IACjC,IAAI,GAAG,CAAC,MAAM,GAAG,oBAAoB,IAAI,gBAAgB,CAAC,IAAI,IAAI,oBAAoB;QAAE,OAAO,GAAG,CAAA;IAClG,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAC9B,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;8EAG8E;AAC9E,SAAS,aAAa,CAAC,GAA+B,EAAE,MAAc,EAAE,KAAa;IACnF,MAAM,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;IAClC,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;IACzB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAClB,CAAC;SAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACxC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC9B,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,uFAAuF;IACvF,+EAA+E;IAC/E,MAAM,GAAG,GAA+B,MAAM,CAAC,MAAM,CAAC,IAAI,CAA+B,CAAA;IACzF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QACvD,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;IAChC,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;GAKG;AACH,iGAAiG;AACjG,0DAA0D;AAC1D,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAA+B,CAAA;AAEpF,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACzD,IAAI,KAAK,IAAI,MAAM,CAAC,MAAM;QAAE,OAAO,WAAW,CAAA;IAE9C,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QAC9B,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO;YAAE,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAC9E,CAAC;IAED,MAAM,GAAG,GAA+B,MAAM,CAAC,MAAM,CAAC,IAAI,CAA+B,CAAA;IACzF,IAAI,GAAG,GAAG,KAAK,CAAA;IACf,OAAO,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QACpC,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAA;QAC5C,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;YACd,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YACnC,MAAM,KAAK,GAAG,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;YAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YACpC,MAAM,KAAK,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;YAC/D,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;QAChC,CAAC;QACD,IAAI,GAAG,KAAK,CAAC,CAAC;YAAE,MAAK;QACrB,GAAG,GAAG,GAAG,GAAG,CAAC,CAAA;IACf,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,gBAAgB,CAAC,WAAmB;IAClD,OAAO,CACL,WAAW,KAAK,mCAAmC;QACnD,WAAW,CAAC,UAAU,CAAC,oCAAoC,CAAC,CAC7D,CAAA;AACH,CAAC;AAED,MAAM,YAAY,GAAG,IAAI,WAAW,EAAE,CAAA;AAEtC;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAkB,EAClB,QAAgB;IAEhB,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IAClD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,MAAM,KAAK,GAAG;YACxB,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,mBAAmB,CAAC;YACtC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAA;IAC/C,CAAC;IACD,MAAM,GAAG,GAA+B,MAAM,CAAC,MAAM,CAAC,IAAI,CAA+B,CAAA;IACzF,yFAAyF;IACzF,iEAAiE;IACjE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAChF,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;IAChC,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/server/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { BinaryResponse, RawResponse } from "../binary.js";
|
|
2
2
|
import type { InferInput, InferOutput, StandardSchemaV1 } from "../schema/standard.js";
|
|
3
|
-
import type { Params, RouteSchema } from "./context.js";
|
|
3
|
+
import type { Params, RoutePaths, RouteSchema } from "./context.js";
|
|
4
4
|
import type { StatusResponse } from "./runtime-core.js";
|
|
5
5
|
/**
|
|
6
6
|
* One route's input/output shape as the **client** will consume it. `query`/`body`
|
|
@@ -138,11 +138,22 @@ export type WsRouteInfoFor<Path extends string, In extends StandardSchemaV1 | un
|
|
|
138
138
|
* `.merge()` them (each group is a short chain; a merge is one `R & R2` intersection with no
|
|
139
139
|
* per-call context work), or contract-first `implement()` (the registry is one object type declared
|
|
140
140
|
* upfront - no grow-R-per-call, so no ceiling at all).
|
|
141
|
+
*
|
|
142
|
+
* A path ending in optional parameters is keyed once per concrete path it serves (`RoutePaths`), all
|
|
143
|
+
* sharing the one route info, so `/users/:id?` adds `/users` and `/users/:id`.
|
|
141
144
|
*/
|
|
142
145
|
export type AddRoute<R extends Registry, Method extends string, Path extends string, Info extends RouteInfo> = R & {
|
|
143
|
-
[P in Path]: {
|
|
146
|
+
[P in RoutePaths<Path>]: {
|
|
144
147
|
[M in Method]: Info;
|
|
145
148
|
};
|
|
146
149
|
};
|
|
150
|
+
/** Join a group prefix and a route path the way `Server.group` does at runtime: a group's `/` route
|
|
151
|
+
* serves the prefix itself (no trailing slash), every other path is appended verbatim. */
|
|
152
|
+
export type JoinRoutePath<Prefix extends string, Path extends string> = Path extends "/" ? Prefix : `${Prefix}${Path}`;
|
|
153
|
+
/** Re-key a registry under a static path prefix. Route info (params, schemas, responses) is carried
|
|
154
|
+
* unchanged: a prefix is static text, so it adds no params and cannot change any route's contract. */
|
|
155
|
+
export type PrefixRegistry<Prefix extends string, R extends Registry> = {
|
|
156
|
+
[Path in keyof R & string as JoinRoutePath<Prefix, Path>]: R[Path];
|
|
157
|
+
};
|
|
147
158
|
export {};
|
|
148
159
|
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/server/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACtF,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/server/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACtF,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAEvD;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IAKxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,gEAAgE;IAChE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B;;+CAE2C;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB;gGAC4F;IAC5F,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAA;IACtB;;kFAE8E;IAC9E,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,6FAA6F;AAC7F,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;AAEhE,qGAAqG;AACrG,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;AAEhD;;;2EAG2E;AAC3E,KAAK,YAAY,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,SAAS,gBAAgB,CAAA;CAAE,GAC3F,UAAU,CAAC,CAAC,CAAC,GACb,KAAK,CAAA;AAET,KAAK,aAAa,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC,SAAS,gBAAgB,CAAA;CAAE,GAC7F,UAAU,CAAC,CAAC,CAAC,GACb,KAAK,CAAA;AAET,KAAK,YAAY,CAAC,MAAM,IACtB,MAAM,SAAS,cAAc,CAAC,MAAM,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,SAAS,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,CAAA;AAEnG,KAAK,YAAY,CAAC,MAAM,EAAE,IAAI,SAAS,MAAM,IAC3C,MAAM,SAAS,cAAc,CAAC,MAAM,MAAM,EAAE,MAAM,IAAI,CAAC,GACnD,IAAI,SAAS,MAAM,GACjB,IAAI,GACJ,KAAK,GACP,KAAK,CAAA;AAEX,KAAK,aAAa,CAAC,IAAI,SAAS,MAAM,IAAI,GAAG,IAAI,EAAE,SAAS,IAAI,MAAM,EAAE,GAAG,IAAI,GAAG,KAAK,CAAA;AAEvF,KAAK,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;AAE5C,KAAK,YAAY,CAAC,MAAM,EAAE,KAAK,SAAS,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAC5F,gBAAgB,GAChB;KAAG,IAAI,IAAI,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC;CAAE,CAAA;AAEnD;wGACwG;AACxG,KAAK,sBAAsB,CAAC,MAAM,IAChC,MAAM,SAAS,cAAc,CAAC,MAAM,IAAI,EAAE,OAAO,CAAC,GAC9C,MAAM,SAAS,IAAI,GACjB;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,GAChB,gBAAgB,GAClB,gBAAgB,CAAA;AAEtB,KAAK,iBAAiB,CAAC,MAAM,IAAI,CAAC,OAAO,CACvC,MAAM,EACN,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAC3C,SAAS,KAAK,GACX,gBAAgB,GAChB;IAAE,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAA;CAAE,CAAC,GACvE,YAAY,CAAC,MAAM,CAAC,GACpB,sBAAsB,CAAC,MAAM,CAAC,CAAA;AAEhC,KAAK,iBAAiB,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,CAAC,SAAS;IACzD,QAAQ,EAAE,MAAM,CAAC,SAAS,gBAAgB,CAAA;CAC3C,GACG;IAAE,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;CAAE,GACvB,gBAAgB,CAAC,GACnB,CAAC,CAAC,SAAS;IAAE,MAAM,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CAAE,GACnE;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,gBAAgB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK;CAAE,GAC7E,gBAAgB,CAAC,CAAA;AAEvB,KAAK,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,MAAM,QAAQ,CAAC,GAAG,QAAQ,CAAA;AAEtF,KAAK,WAAW,CAAC,CAAC,SAAS,WAAW,EAAE,MAAM,IAAI,iBAAiB,CACjE,iBAAiB,CAAC,MAAM,CAAC,EACzB,iBAAiB,CAAC,CAAC,CAAC,CACrB,CAAA;AAED,2FAA2F;AAC3F,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,WAAW,EAAE,MAAM,IAAI,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;AAElF,KAAK,cAAc,CAAC,CAAC,IAAI;KACtB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;CAC/F,CAAA;AAED,KAAK,qBAAqB,CAAC,CAAC,IAAI;KAC7B,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,MAAM,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK;CAC1F,CAAC,MAAM,CAAC,CAAC,CAAA;AAEV,KAAK,iBAAiB,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,KAAK,GAAG,OAAO,GAAG,CAAC,CAAA;AAE/D,kFAAkF;AAClF,KAAK,cAAc,CAAC,CAAC,SAAS,WAAW,EAAE,MAAM,IAAI,qBAAqB,CAAC,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;AAElG,2FAA2F;AAC3F,KAAK,WAAW,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS;IAAE,GAAG,EAAE,MAAM,CAAC,SAAS,gBAAgB,CAAA;CAAE,GACzF,WAAW,CAAC,CAAC,CAAC,GACd,KAAK,CAAA;AAET,sFAAsF;AACtF,MAAM,MAAM,YAAY,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,WAAW,EAAE,MAAM,EAAE,UAAU,GAAG,KAAK,IAAI;IACjG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IAChC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;IAC9B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,CAAA;IACvD,QAAQ,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,CAAA;IAC3D,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;IAC1F,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;CAC7B,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,IAAI,mBAAmB,CACjF,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CACvB,CAAA;AAED;8DAC8D;AAC9D,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,cAAc,GAClD,CAAC,GACD,CAAC,SAAS,WAAW,CAAC,OAAO,CAAC,GAC5B,CAAC,GACD,CAAC,SAAS,QAAQ,GAChB,KAAK,GACL,CAAC,CAAA;AAET;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,CACxB,IAAI,SAAS,MAAM,EACnB,EAAE,SAAS,gBAAgB,GAAG,SAAS,EACvC,GAAG,SAAS,gBAAgB,GAAG,SAAS,IACtC;IACF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAA;IACnB,QAAQ,CAAC,EAAE,EAAE;QACX,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,gBAAgB,GAAG,UAAU,CAAC,EAAE,CAAC,GAAG,OAAO,CAAA;QACnE,QAAQ,CAAC,GAAG,EAAE,GAAG,SAAS,gBAAgB,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAA;KACxE,CAAA;CACF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,QAAQ,CAClB,CAAC,SAAS,QAAQ,EAClB,MAAM,SAAS,MAAM,EACrB,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,SAAS,IACpB,CAAC,GAAG;KAAG,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG;SAAG,CAAC,IAAI,MAAM,GAAG,IAAI;KAAE;CAAE,CAAA;AAE5D;0FAC0F;AAC1F,MAAM,MAAM,aAAa,CAAC,MAAM,SAAS,MAAM,EAAE,IAAI,SAAS,MAAM,IAAI,IAAI,SAAS,GAAG,GACpF,MAAM,GACN,GAAG,MAAM,GAAG,IAAI,EAAE,CAAA;AAEtB;sGACsG;AACtG,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,MAAM,EAAE,CAAC,SAAS,QAAQ,IAAI;KACrE,IAAI,IAAI,MAAM,CAAC,GAAG,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;CACnE,CAAA"}
|
|
@@ -10,6 +10,13 @@ import type { ProtoPoisoning } from "./proto-guard.js";
|
|
|
10
10
|
import { CONTEXT_SEARCH, CONTEXT_SET } from "./runtime-core.js";
|
|
11
11
|
import type { CtxSet, RawContext, RequestSource } from "./server.js";
|
|
12
12
|
export { readBodyFramed, readBoundedJsonSource } from "./body-lane.js";
|
|
13
|
+
/** Where a serving adapter that shares one platform across requests leaves its socket-peer lookup.
|
|
14
|
+
* `c.clientIp` calls it with the request when a handler reads the address, so a request whose
|
|
15
|
+
* handler never reads it costs the adapter neither a lookup nor a platform object of its own. */
|
|
16
|
+
export declare const PLATFORM_PEER: unique symbol;
|
|
17
|
+
export type PeerPlatform = Platform & {
|
|
18
|
+
readonly [PLATFORM_PEER]?: (source: RequestSource) => string | undefined;
|
|
19
|
+
};
|
|
13
20
|
export declare class RequestContext implements RawContext {
|
|
14
21
|
params: Record<string, string>;
|
|
15
22
|
body: unknown;
|
|
@@ -17,11 +24,14 @@ export declare class RequestContext implements RawContext {
|
|
|
17
24
|
private signalValue;
|
|
18
25
|
private budgetValue;
|
|
19
26
|
private platformValue;
|
|
27
|
+
private peerValue;
|
|
20
28
|
private setValue;
|
|
21
29
|
private queryValue;
|
|
22
30
|
private queryReady;
|
|
23
31
|
private headersValue;
|
|
24
32
|
private cookiesValue;
|
|
33
|
+
jsonReply: Response | undefined;
|
|
34
|
+
jsonBody: unknown;
|
|
25
35
|
private readonly source;
|
|
26
36
|
private readonly maxBodyBytes;
|
|
27
37
|
private readonly protoPoisoning;
|
|
@@ -64,6 +74,7 @@ export declare class RequestContext implements RawContext {
|
|
|
64
74
|
get query(): unknown;
|
|
65
75
|
set query(v: unknown);
|
|
66
76
|
get cookies(): Readonly<Record<string, string>>;
|
|
77
|
+
set cookies(value: Readonly<Record<string, string>>);
|
|
67
78
|
boundedBody(maxBytes?: number): Promise<Uint8Array>;
|
|
68
79
|
boundedJson<T = unknown>(maxBytes?: number): Promise<T>;
|
|
69
80
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.d.ts","sourceRoot":"","sources":["../../src/server/request-context.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAGjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAI5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAGtD,OAAO,EACL,cAAc,EACd,WAAW,EAOZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEpE,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAmItE,qBAAa,cAAe,YAAW,UAAU;IAKvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B,IAAI,EAAE,OAAO,CAAA;IACrB,QAAgB,WAAW,CAAoB;IAC/C,QAAgB,WAAW,CAAyB;IACpD,QAAgB,WAAW,CAA2B;IACtD,QAAgB,aAAa,
|
|
1
|
+
{"version":3,"file":"request-context.d.ts","sourceRoot":"","sources":["../../src/server/request-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -118,6 +118,10 @@ function responseTextContentType() {
|
|
|
118
118
|
/** `c.text`'s own default, unchanged: the explicit one nifra has always declared when the caller
|
|
119
119
|
* passes no headers of their own. */
|
|
120
120
|
const TEXT_CONTENT_TYPE = "text/plain; charset=utf-8";
|
|
121
|
+
/** Where a serving adapter that shares one platform across requests leaves its socket-peer lookup.
|
|
122
|
+
* `c.clientIp` calls it with the request when a handler reads the address, so a request whose
|
|
123
|
+
* handler never reads it costs the adapter neither a lookup nor a platform object of its own. */
|
|
124
|
+
export const PLATFORM_PEER = Symbol();
|
|
121
125
|
export class RequestContext {
|
|
122
126
|
constructor(source, params, searchOrMaxBodyBytes, signalOrProtoPoisoning, budget, platform, maxBodyBytes, protoPoisoning) {
|
|
123
127
|
this.source = source;
|
|
@@ -173,8 +177,12 @@ export class RequestContext {
|
|
|
173
177
|
}
|
|
174
178
|
get clientIp() {
|
|
175
179
|
// The server resolves the trust declaration into `platform.clientIp` before the context is built,
|
|
176
|
-
// so this getter just surfaces the already-derived value (raw socket peer by default).
|
|
177
|
-
|
|
180
|
+
// so this getter just surfaces the already-derived value (raw socket peer by default). A platform
|
|
181
|
+
// shared across requests holds no address of its own and is asked for this request's peer, once:
|
|
182
|
+
// the answer is kept, so a read after the socket closed agrees with one before it.
|
|
183
|
+
const platform = this.platformValue;
|
|
184
|
+
this.peerValue ??= platform?.clientIp ?? platform?.[PLATFORM_PEER]?.(this.source);
|
|
185
|
+
return this.peerValue;
|
|
178
186
|
}
|
|
179
187
|
get waitUntil() {
|
|
180
188
|
return this.platformValue?.waitUntil ?? fallbackWaitUntil;
|
|
@@ -210,23 +218,26 @@ export class RequestContext {
|
|
|
210
218
|
*/
|
|
211
219
|
json(body, init) {
|
|
212
220
|
const i = statusInit(init);
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
221
|
+
let reply;
|
|
222
|
+
if (DEFERS_RESPONSE) {
|
|
223
|
+
const defer = deferredResponderFor();
|
|
224
|
+
// The same bytes `Response.json` would produce, kept one step short of it so the direct
|
|
225
|
+
// writer can have them. `JSON.stringify` returns `undefined` for a value with no JSON form
|
|
226
|
+
// (`undefined`, a function, a symbol) - exactly the case where `Response.json` throws, so it
|
|
227
|
+
// gets the throw rather than an invented body. The content-type is the runtime's own, read
|
|
228
|
+
// off `Response.json` once, so a deferred response carries the same one byte for byte.
|
|
229
|
+
const text = defer === undefined ? undefined : JSON.stringify(body);
|
|
230
|
+
const headers = text === undefined ? undefined : ownHeaderRecord(i?.headers, responseJsonContentType());
|
|
231
|
+
if (defer !== undefined && text !== undefined && headers !== undefined) {
|
|
232
|
+
reply = defer(text, i?.status ?? 200, headers);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
reply ??= Response.json(body, i);
|
|
236
|
+
// Remembered so a response contract holds the value to the route's schema: this is the
|
|
237
|
+
// framework's JSON helper, not a raw-Response escape hatch.
|
|
238
|
+
this.jsonBody = body;
|
|
239
|
+
this.jsonReply = reply;
|
|
240
|
+
return reply;
|
|
230
241
|
}
|
|
231
242
|
/**
|
|
232
243
|
* Return a text body. The fast lane on Node - see {@link json}. Reach for a raw `return new
|
|
@@ -266,6 +277,9 @@ export class RequestContext {
|
|
|
266
277
|
this.cookiesValue ??= parseCookies(headerOf(this.source, "cookie"));
|
|
267
278
|
return this.cookiesValue;
|
|
268
279
|
}
|
|
280
|
+
set cookies(value) {
|
|
281
|
+
this.cookiesValue = value;
|
|
282
|
+
}
|
|
269
283
|
boundedBody(maxBytes) {
|
|
270
284
|
return readBoundedBodyOrThrow(this.source, this.maxBodyBytes, maxBytes);
|
|
271
285
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../src/server/request-context.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../src/server/request-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare function recordRequestReplacement(replacement: Request, replaced: Request): void;
|
|
2
|
+
/**
|
|
3
|
+
* The request an `onRequest` hook returned this one in place of, or `undefined` for the request the
|
|
4
|
+
* exchange began with. Response hooks receive the request the route ran with, so a middleware that
|
|
5
|
+
* keyed state on the request its `onRequest` saw walks back from there to find it.
|
|
6
|
+
*/
|
|
7
|
+
export declare function replacedRequestOf(request: Request): Request | undefined;
|
|
8
|
+
//# sourceMappingURL=request-lineage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-lineage.d.ts","sourceRoot":"","sources":["../../src/server/request-lineage.ts"],"names":[],"mappings":"AAGA,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAEtF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAEvE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Each request an `onRequest` hook returned in place of the one it was handed, mapped to that one. */
|
|
2
|
+
const REPLACED = new WeakMap();
|
|
3
|
+
export function recordRequestReplacement(replacement, replaced) {
|
|
4
|
+
REPLACED.set(replacement, replaced);
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* The request an `onRequest` hook returned this one in place of, or `undefined` for the request the
|
|
8
|
+
* exchange began with. Response hooks receive the request the route ran with, so a middleware that
|
|
9
|
+
* keyed state on the request its `onRequest` saw walks back from there to find it.
|
|
10
|
+
*/
|
|
11
|
+
export function replacedRequestOf(request) {
|
|
12
|
+
return REPLACED.get(request);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=request-lineage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-lineage.js","sourceRoot":"","sources":["../../src/server/request-lineage.ts"],"names":[],"mappings":"AAAA,uGAAuG;AACvG,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAoB,CAAA;AAEhD,MAAM,UAAU,wBAAwB,CAAC,WAAoB,EAAE,QAAiB;IAC9E,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;AACrC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAgB;IAChD,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAC9B,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dot segments in a request target, resolved the way a WHATWG URL parser resolves them.
|
|
3
|
+
*
|
|
4
|
+
* Bun and workerd hand an app a request whose URL is already parsed: a client that sends
|
|
5
|
+
* `/users/../posts`, `/users/%2e%2e/posts` or `/users/..\posts` is asking for `/posts`, and that
|
|
6
|
+
* is the URL the app sees. Node's `IncomingMessage.url` and Deno's `Request.url` carry the target
|
|
7
|
+
* exactly as it was sent. Routing the raw text on those runtimes and the parsed text on the others
|
|
8
|
+
* sends one request to two different handlers - with two different sets of guards - depending on
|
|
9
|
+
* where the app runs. So a raw target is resolved before anything reads it, and every runtime routes
|
|
10
|
+
* the same path.
|
|
11
|
+
*
|
|
12
|
+
* No imports: `@nifrajs/node` carries a generated copy of this module, since it never depends on
|
|
13
|
+
* core at runtime.
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Whether `target` - an absolute URL or an origin-form `/path?query` - may hold a `.` or `..`
|
|
17
|
+
* segment, raw or percent-encoded, or a backslash: what a WHATWG parser would rewrite. Never false
|
|
18
|
+
* when the path has one. It can be true when only the query looks like one (`?next=/../x`):
|
|
19
|
+
* resolving that target leaves its path and query as they are, apart from the characters a parser
|
|
20
|
+
* always percent-encodes.
|
|
21
|
+
*/
|
|
22
|
+
export declare function hasDotSegment(target: string): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* `target` with its dot segments resolved and its backslashes read as `/`, by the platform's own
|
|
25
|
+
* WHATWG parser. An origin-form target stays origin-form (the fragment, which no client sends,
|
|
26
|
+
* dropped); an absolute URL comes back absolute. The parser also percent-encodes what it always
|
|
27
|
+
* encodes, which is what Bun and workerd deliver for the same request. A target that is neither -
|
|
28
|
+
* `*`, or text no URL parser accepts - comes back as it arrived: there is no path to resolve.
|
|
29
|
+
*/
|
|
30
|
+
export declare function resolveDotSegments(target: string): string;
|
|
31
|
+
//# sourceMappingURL=request-target.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-target.d.ts","sourceRoot":"","sources":["../../src/server/request-target.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAGrD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAOzD"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dot segments in a request target, resolved the way a WHATWG URL parser resolves them.
|
|
3
|
+
*
|
|
4
|
+
* Bun and workerd hand an app a request whose URL is already parsed: a client that sends
|
|
5
|
+
* `/users/../posts`, `/users/%2e%2e/posts` or `/users/..\posts` is asking for `/posts`, and that
|
|
6
|
+
* is the URL the app sees. Node's `IncomingMessage.url` and Deno's `Request.url` carry the target
|
|
7
|
+
* exactly as it was sent. Routing the raw text on those runtimes and the parsed text on the others
|
|
8
|
+
* sends one request to two different handlers - with two different sets of guards - depending on
|
|
9
|
+
* where the app runs. So a raw target is resolved before anything reads it, and every runtime routes
|
|
10
|
+
* the same path.
|
|
11
|
+
*
|
|
12
|
+
* No imports: `@nifrajs/node` carries a generated copy of this module, since it never depends on
|
|
13
|
+
* core at runtime.
|
|
14
|
+
*/
|
|
15
|
+
// A `.` or `..` segment (`%2e` counts as a dot, in either case), or a backslash, which a WHATWG
|
|
16
|
+
// parser reads as a `/` in an http(s) path.
|
|
17
|
+
const DOT_SEGMENT = /\\|\/(?:\.|%2e){1,2}(?:[/?#]|$)/i;
|
|
18
|
+
/**
|
|
19
|
+
* Whether `target` - an absolute URL or an origin-form `/path?query` - may hold a `.` or `..`
|
|
20
|
+
* segment, raw or percent-encoded, or a backslash: what a WHATWG parser would rewrite. Never false
|
|
21
|
+
* when the path has one. It can be true when only the query looks like one (`?next=/../x`):
|
|
22
|
+
* resolving that target leaves its path and query as they are, apart from the characters a parser
|
|
23
|
+
* always percent-encodes.
|
|
24
|
+
*/
|
|
25
|
+
export function hasDotSegment(target) {
|
|
26
|
+
// One regex pass: measured faster on Node and Deno than substring scans that gate it.
|
|
27
|
+
return DOT_SEGMENT.test(target);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* `target` with its dot segments resolved and its backslashes read as `/`, by the platform's own
|
|
31
|
+
* WHATWG parser. An origin-form target stays origin-form (the fragment, which no client sends,
|
|
32
|
+
* dropped); an absolute URL comes back absolute. The parser also percent-encodes what it always
|
|
33
|
+
* encodes, which is what Bun and workerd deliver for the same request. A target that is neither -
|
|
34
|
+
* `*`, or text no URL parser accepts - comes back as it arrived: there is no path to resolve.
|
|
35
|
+
*/
|
|
36
|
+
export function resolveDotSegments(target) {
|
|
37
|
+
if (target.charCodeAt(0) === 47 /* / */) {
|
|
38
|
+
// Appended to an origin, not resolved against one: `//host/..` must stay a path on this origin.
|
|
39
|
+
const url = new URL(`http://localhost${target}`);
|
|
40
|
+
return url.pathname + url.search;
|
|
41
|
+
}
|
|
42
|
+
return URL.canParse(target) ? new URL(target).href : target;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=request-target.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-target.js","sourceRoot":"","sources":["../../src/server/request-target.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,gGAAgG;AAChG,4CAA4C;AAC5C,MAAM,WAAW,GAAG,kCAAkC,CAAA;AAEtD;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,sFAAsF;IACtF,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AACjC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;QACxC,gGAAgG;QAChG,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAA;QAChD,OAAO,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAA;IAClC,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAA;AAC7D,CAAC"}
|
package/dist/server/respond.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ import { type StaticResponseHeaders } from "./static-headers.js";
|
|
|
12
12
|
* per declared name per request - the same reuse the hook-free lane already gets from
|
|
13
13
|
* {@link JSON_INIT_200}.
|
|
14
14
|
*/
|
|
15
|
-
export declare function buildStaticResponseHeaders(record: Readonly<Record<string, string>>): StaticResponseHeaders;
|
|
15
|
+
export declare function buildStaticResponseHeaders(record: Readonly<Record<string, string>>, inherited?: Readonly<Record<string, string>>): StaticResponseHeaders;
|
|
16
16
|
/**
|
|
17
17
|
* Apply the static defaults to an ALREADY-BUILT response - the framework's error/404/timeout renders
|
|
18
18
|
* and a handler-returned `Response`, none of which go through the header init below. Defaults, so a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"respond.d.ts","sourceRoot":"","sources":["../../src/server/respond.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAGL,KAAK,aAAa,EAInB,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,
|
|
1
|
+
{"version":3,"file":"respond.d.ts","sourceRoot":"","sources":["../../src/server/respond.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAGL,KAAK,aAAa,EAInB,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,GAC7B,QAAQ,CAeV;AAwED,wBAAgB,uBAAuB,IAAI,MAAM,CAKhD;AAsDD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAE7D;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAE7D;AAYD,0FAA0F;AAC1F,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAYtE;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,GAChB,QAAQ,CA0EV;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,CAIV;AAED,wBAAgB,UAAU,CACxB,MAAM,EAAE,aAAa,EACrB,GAAG,EAAE,MAAM,EACX,eAAe,GAAE,qBAA6B,EAC9C,OAAO,CAAC,EAAE,qBAAqB,GAC9B,QAAQ,CAiGV;AAsBD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ,CAiBjF"}
|
package/dist/server/respond.js
CHANGED
|
@@ -39,7 +39,7 @@ const JSON_INIT_200 = { status: 200, headers: JSON_CT_HEADERS };
|
|
|
39
39
|
* per declared name per request - the same reuse the hook-free lane already gets from
|
|
40
40
|
* {@link JSON_INIT_200}.
|
|
41
41
|
*/
|
|
42
|
-
export function buildStaticResponseHeaders(record) {
|
|
42
|
+
export function buildStaticResponseHeaders(record, inherited) {
|
|
43
43
|
const frozen = Object.freeze({ ...record });
|
|
44
44
|
const jsonHeaders = new Headers({ ...frozen, "content-type": JSON_CONTENT_TYPE });
|
|
45
45
|
let responseJson;
|
|
@@ -48,6 +48,7 @@ export function buildStaticResponseHeaders(record) {
|
|
|
48
48
|
entries: Object.freeze(Object.entries(frozen)),
|
|
49
49
|
jsonHeaders,
|
|
50
50
|
jsonInit200: { status: 200, headers: jsonHeaders },
|
|
51
|
+
inherited,
|
|
51
52
|
responseJsonInit200: () => {
|
|
52
53
|
responseJson ??= {
|
|
53
54
|
status: 200,
|
|
@@ -108,7 +109,8 @@ function applyStaticDefaults(headers, statics) {
|
|
|
108
109
|
const entries = statics.entries;
|
|
109
110
|
for (let i = 0; i < entries.length; i++) {
|
|
110
111
|
const entry = entries[i];
|
|
111
|
-
|
|
112
|
+
// Absent, or still an enclosing scope's value rather than one the request set: this one applies.
|
|
113
|
+
if (headers.get(entry[0]) === (statics.inherited?.[entry[0]] ?? null))
|
|
112
114
|
headers.set(entry[0], entry[1]);
|
|
113
115
|
}
|
|
114
116
|
}
|
|
@@ -415,10 +417,20 @@ export function appendCookiesToResponse(response, set) {
|
|
|
415
417
|
// returned Response - otherwise the canonical set-session-then-redirect pattern would silently drop
|
|
416
418
|
// the cookie. (Other `c.set` fields stay the returned Response's own concern.)
|
|
417
419
|
const cookies = set._cookies;
|
|
418
|
-
if (cookies
|
|
420
|
+
if (cookies === undefined || cookies.length === 0)
|
|
421
|
+
return response;
|
|
422
|
+
try {
|
|
419
423
|
for (const cookie of cookies)
|
|
420
424
|
response.headers.append("set-cookie", cookie);
|
|
425
|
+
return response;
|
|
426
|
+
}
|
|
427
|
+
catch {
|
|
428
|
+
// Guarded `Headers` (`Response.redirect()`, a raw `fetch()` result) reject every write, so the
|
|
429
|
+
// first append throws with nothing applied and the cookies land on a mutable copy instead.
|
|
430
|
+
const clone = new Response(response.body, response);
|
|
431
|
+
for (const cookie of cookies)
|
|
432
|
+
clone.headers.append("set-cookie", cookie);
|
|
433
|
+
return stamped(clone);
|
|
421
434
|
}
|
|
422
|
-
return response;
|
|
423
435
|
}
|
|
424
436
|
//# sourceMappingURL=respond.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"respond.js","sourceRoot":"","sources":["../../src/server/respond.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"respond.js","sourceRoot":"","sources":["../../src/server/respond.ts"],"names":[],"mappings":"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"}
|