@@ -341,7 +341,12 @@ export const composeHandler = ({
341
341
}
342
342
} ) : ComposedHandler => {
343
343
const isHandleFn = typeof handler === 'function'
344
- if ( ! isHandleFn ) handler = mapCompactResponse ( handler )
344
+
345
+ if ( ! isHandleFn )
346
+ handler = mapResponse ( handler , {
347
+ // @ts -expect-error private property
348
+ headers : app . setHeaders ?? { }
349
+ } )
345
350
346
351
const hasErrorHandler =
347
352
( app . config . forceErrorEncapsulation &&
@@ -387,11 +392,6 @@ export const composeHandler = ({
387
392
hooks . type !== 'none' &&
388
393
( inference . body || ! ! validator . body )
389
394
390
- // @ts -expect-error private
391
- const defaultHeaders = app . setHeaders
392
- const hasDefaultHeaders =
393
- defaultHeaders && ! ! Object . keys ( defaultHeaders ) . length
394
-
395
395
// ? defaultHeaders doesn't imply that user will use headers in handler
396
396
const hasHeaders = inference . headers || validator . headers
397
397
const hasCookie = inference . cookie || ! ! validator . cookie
@@ -556,11 +556,7 @@ export const composeHandler = ({
556
556
557
557
const hasTraceSet = traceInference . set
558
558
const hasSet =
559
- inference . cookie ||
560
- inference . set ||
561
- hasTraceSet ||
562
- hasHeaders ||
563
- hasDefaultHeaders
559
+ inference . cookie || inference . set || hasTraceSet || hasHeaders
564
560
565
561
if ( hasTrace ) fnLiteral += '\nconst id = c.$$requestId\n'
566
562
@@ -782,7 +778,7 @@ export const composeHandler = ({
782
778
unit : hooks . transform . length
783
779
} )
784
780
785
- fnLiteral += '\nlet transformed\n'
781
+ if ( hooks . transform . length ) fnLiteral += '\nlet transformed\n'
786
782
787
783
for ( let i = 0 ; i < hooks . transform . length ; i ++ ) {
788
784
const transform = hooks . transform [ i ]
@@ -1166,9 +1162,8 @@ export const composeHandler = ({
1166
1162
fnLiteral += encodeCookie
1167
1163
1168
1164
if ( handler instanceof Response ) {
1169
- fnLiteral +=
1170
- inference . set || hasDefaultHeaders
1171
- ? `if(
1165
+ fnLiteral += inference . set
1166
+ ? `if(
1172
1167
isNotEmpty(c.set.headers) ||
1173
1168
c.set.status !== 200 ||
1174
1169
c.set.redirect ||
@@ -1177,7 +1172,7 @@ export const composeHandler = ({
1177
1172
return mapResponse(${ handle } .clone(), c.set, c.request)
1178
1173
else
1179
1174
return ${ handle } .clone()`
1180
- : `return ${ handle } .clone()`
1175
+ : `return ${ handle } .clone()`
1181
1176
1182
1177
fnLiteral += '\n'
1183
1178
} else if ( hasSet )
@@ -1215,9 +1210,8 @@ export const composeHandler = ({
1215
1210
report ( 'afterHandle' ) ( )
1216
1211
1217
1212
if ( handler instanceof Response ) {
1218
- fnLiteral +=
1219
- inference . set || hasDefaultHeaders
1220
- ? `if(
1213
+ fnLiteral += inference . set
1214
+ ? `if(
1221
1215
isNotEmpty(c.set.headers) ||
1222
1216
c.set.status !== 200 ||
1223
1217
c.set.redirect ||
@@ -1226,7 +1220,7 @@ export const composeHandler = ({
1226
1220
return mapResponse(${ handle } .clone(), c.set, c.request)
1227
1221
else
1228
1222
return ${ handle } .clone()`
1229
- : `return ${ handle } .clone()`
1223
+ : `return ${ handle } .clone()`
1230
1224
1231
1225
fnLiteral += '\n'
1232
1226
} else if ( hasSet )
0 commit comments