@@ -1095,45 +1095,6 @@ Return ONLY the PostgREST filter expression - no explanations, no markdown, no e
10951095 parsedPaths = paths
10961096 }
10971097
1098- let parsedFunctionBody
1099- if ( functionBody && typeof functionBody === 'string' && functionBody . trim ( ) ) {
1100- try {
1101- parsedFunctionBody = JSON . parse ( functionBody )
1102- } catch ( parseError ) {
1103- const errorMsg = getErrorMessage ( parseError , 'Unknown JSON error' )
1104- throw new Error (
1105- `Invalid Edge Function body format: ${ errorMsg } . Please provide a valid JSON object.`
1106- )
1107- }
1108- } else if ( functionBody && typeof functionBody === 'object' ) {
1109- parsedFunctionBody = functionBody
1110- }
1111-
1112- let parsedFunctionHeaders
1113- if ( functionHeaders && typeof functionHeaders === 'string' && functionHeaders . trim ( ) ) {
1114- try {
1115- parsedFunctionHeaders = JSON . parse ( functionHeaders )
1116- } catch ( parseError ) {
1117- const errorMsg = getErrorMessage ( parseError , 'Unknown JSON error' )
1118- throw new Error (
1119- `Invalid Edge Function headers format: ${ errorMsg } . Please provide a valid JSON object.`
1120- )
1121- }
1122- } else if ( functionHeaders && typeof functionHeaders === 'object' ) {
1123- parsedFunctionHeaders = functionHeaders
1124- }
1125-
1126- if (
1127- parsedFunctionHeaders !== undefined &&
1128- ( typeof parsedFunctionHeaders !== 'object' ||
1129- parsedFunctionHeaders === null ||
1130- Array . isArray ( parsedFunctionHeaders ) )
1131- ) {
1132- throw new Error (
1133- 'Edge Function headers must be a JSON object of header name to value (not an array).'
1134- )
1135- }
1136-
11371098 let parsedAllowedMimeTypes
11381099 if ( allowedMimeTypes && typeof allowedMimeTypes === 'string' && allowedMimeTypes . trim ( ) ) {
11391100 try {
@@ -1174,11 +1135,47 @@ Return ONLY the PostgREST filter expression - no explanations, no markdown, no e
11741135 if ( method !== undefined ) {
11751136 result . method = method
11761137 }
1177- if ( parsedFunctionBody !== undefined ) {
1178- result . body = parsedFunctionBody
1138+
1139+ if ( functionBody && typeof functionBody === 'string' && functionBody . trim ( ) ) {
1140+ try {
1141+ result . body = JSON . parse ( functionBody )
1142+ } catch ( parseError ) {
1143+ const errorMsg = getErrorMessage ( parseError , 'Unknown JSON error' )
1144+ throw new Error (
1145+ `Invalid Edge Function body format: ${ errorMsg } . Please provide a valid JSON object.`
1146+ )
1147+ }
1148+ } else if ( functionBody && typeof functionBody === 'object' ) {
1149+ result . body = functionBody
11791150 }
1180- if ( parsedFunctionHeaders !== undefined ) {
1181- result . headers = parsedFunctionHeaders
1151+
1152+ if ( functionHeaders ) {
1153+ let parsedHeaders
1154+ if ( typeof functionHeaders === 'string' && functionHeaders . trim ( ) ) {
1155+ try {
1156+ parsedHeaders = JSON . parse ( functionHeaders )
1157+ } catch ( parseError ) {
1158+ const errorMsg = getErrorMessage ( parseError , 'Unknown JSON error' )
1159+ throw new Error (
1160+ `Invalid Edge Function headers format: ${ errorMsg } . Please provide a valid JSON object.`
1161+ )
1162+ }
1163+ } else if ( typeof functionHeaders === 'object' ) {
1164+ parsedHeaders = functionHeaders
1165+ }
1166+
1167+ if ( parsedHeaders !== undefined ) {
1168+ if (
1169+ typeof parsedHeaders !== 'object' ||
1170+ parsedHeaders === null ||
1171+ Array . isArray ( parsedHeaders )
1172+ ) {
1173+ throw new Error (
1174+ 'Edge Function headers must be a JSON object of header name to value (not an array).'
1175+ )
1176+ }
1177+ result . headers = parsedHeaders
1178+ }
11821179 }
11831180 }
11841181
0 commit comments