Skip to content

fix: ESM compatibility - avoid direct Response object mutation #2775

fix: ESM compatibility - avoid direct Response object mutation

fix: ESM compatibility - avoid direct Response object mutation #2775

Triggered via pull request October 24, 2025 19:47
Status Failure
Total duration 1m 23s
Artifacts

main.yml

on: pull_request
Matrix: build-and-test
Fit to window
Zoom out
Zoom in

Annotations

30 errors
tests/extended.test.ts > extended > 'full-swagger-scheme': tests/extended.test.ts#L43
Error: Snapshot `extended > 'full-swagger-scheme' 1` mismatched - Expected + Received @@ -38350,13 +38350,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -38382,11 +38380,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'explode-param-3': tests/extended.test.ts#L43
Error: Snapshot `extended > 'explode-param-3' 1` mismatched - Expected + Received @@ -309,13 +309,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -341,11 +339,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'enum-type-mismatch': tests/extended.test.ts#L43
Error: Snapshot `extended > 'enum-type-mismatch' 1` mismatched - Expected + Received @@ -262,13 +262,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -294,11 +292,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'components-responses': tests/extended.test.ts#L43
Error: Snapshot `extended > 'components-responses' 1` mismatched - Expected + Received @@ -261,13 +261,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -293,11 +291,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'callback-example': tests/extended.test.ts#L43
Error: Snapshot `extended > 'callback-example' 1` mismatched - Expected + Received @@ -281,13 +281,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -313,11 +311,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'api-with-examples': tests/extended.test.ts#L43
Error: Snapshot `extended > 'api-with-examples' 1` mismatched - Expected + Received @@ -259,13 +259,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -291,11 +289,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'anyof-example': tests/extended.test.ts#L43
Error: Snapshot `extended > 'anyof-example' 1` mismatched - Expected + Received @@ -273,13 +273,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -305,11 +303,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'allof-example': tests/extended.test.ts#L43
Error: Snapshot `extended > 'allof-example' 1` mismatched - Expected + Received @@ -279,13 +279,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -311,11 +309,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'additional-properties2': tests/extended.test.ts#L43
Error: Snapshot `extended > 'additional-properties2' 1` mismatched - Expected + Received @@ -243,13 +243,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -275,11 +273,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'additional-properties': tests/extended.test.ts#L43
Error: Snapshot `extended > 'additional-properties' 1` mismatched - Expected + Received @@ -246,13 +246,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -278,11 +276,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'full-swagger-scheme': tests/extended.test.ts#L43
Error: Snapshot `extended > 'full-swagger-scheme' 1` mismatched - Expected + Received @@ -38350,13 +38350,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -38382,11 +38380,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'explode-param-3': tests/extended.test.ts#L43
Error: Snapshot `extended > 'explode-param-3' 1` mismatched - Expected + Received @@ -309,13 +309,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -341,11 +339,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'enum-type-mismatch': tests/extended.test.ts#L43
Error: Snapshot `extended > 'enum-type-mismatch' 1` mismatched - Expected + Received @@ -262,13 +262,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -294,11 +292,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'components-responses': tests/extended.test.ts#L43
Error: Snapshot `extended > 'components-responses' 1` mismatched - Expected + Received @@ -261,13 +261,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -293,11 +291,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'callback-example': tests/extended.test.ts#L43
Error: Snapshot `extended > 'callback-example' 1` mismatched - Expected + Received @@ -281,13 +281,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -313,11 +311,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'api-with-examples': tests/extended.test.ts#L43
Error: Snapshot `extended > 'api-with-examples' 1` mismatched - Expected + Received @@ -259,13 +259,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -291,11 +289,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'anyof-example': tests/extended.test.ts#L43
Error: Snapshot `extended > 'anyof-example' 1` mismatched - Expected + Received @@ -273,13 +273,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -305,11 +303,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'allof-example': tests/extended.test.ts#L43
Error: Snapshot `extended > 'allof-example' 1` mismatched - Expected + Received @@ -279,13 +279,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -311,11 +309,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'additional-properties2': tests/extended.test.ts#L43
Error: Snapshot `extended > 'additional-properties2' 1` mismatched - Expected + Received @@ -243,13 +243,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -275,11 +273,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'additional-properties': tests/extended.test.ts#L43
Error: Snapshot `extended > 'additional-properties' 1` mismatched - Expected + Received @@ -246,13 +246,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -278,11 +276,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'full-swagger-scheme': tests/extended.test.ts#L43
Error: Snapshot `extended > 'full-swagger-scheme' 1` mismatched - Expected + Received @@ -38350,13 +38350,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -38382,11 +38380,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'explode-param-3': tests/extended.test.ts#L43
Error: Snapshot `extended > 'explode-param-3' 1` mismatched - Expected + Received @@ -309,13 +309,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -341,11 +339,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'enum-type-mismatch': tests/extended.test.ts#L43
Error: Snapshot `extended > 'enum-type-mismatch' 1` mismatched - Expected + Received @@ -262,13 +262,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -294,11 +292,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'components-responses': tests/extended.test.ts#L43
Error: Snapshot `extended > 'components-responses' 1` mismatched - Expected + Received @@ -261,13 +261,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -293,11 +291,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'callback-example': tests/extended.test.ts#L43
Error: Snapshot `extended > 'callback-example' 1` mismatched - Expected + Received @@ -281,13 +281,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -313,11 +311,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'api-with-examples': tests/extended.test.ts#L43
Error: Snapshot `extended > 'api-with-examples' 1` mismatched - Expected + Received @@ -259,13 +259,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -291,11 +289,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'anyof-example': tests/extended.test.ts#L43
Error: Snapshot `extended > 'anyof-example' 1` mismatched - Expected + Received @@ -273,13 +273,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -305,11 +303,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'allof-example': tests/extended.test.ts#L43
Error: Snapshot `extended > 'allof-example' 1` mismatched - Expected + Received @@ -279,13 +279,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -311,11 +309,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'additional-properties2': tests/extended.test.ts#L43
Error: Snapshot `extended > 'additional-properties2' 1` mismatched - Expected + Received @@ -243,13 +243,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -275,11 +273,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21
tests/extended.test.ts > extended > 'additional-properties': tests/extended.test.ts#L43
Error: Snapshot `extended > 'additional-properties' 1` mismatched - Expected + Received @@ -246,13 +246,11 @@ // while maintaining all Response properties and methods as live/dynamic values const r = new Proxy(response, { get(target, prop) { // Custom properties for our API wrapper if (prop === "data") { - return target._data !== undefined - ? target._data - : (null as unknown as T); + return target._data ?? (null as unknown as T); } if (prop === "error") { return target._error !== undefined ? target._error : (null as unknown as E); @@ -278,11 +276,13 @@ target._error = value; return true; } // Prevent mutation of Response properties (ESM safety) - return false; + throw new Error( + `Cannot set property '${String(prop)}' on HttpResponse: only 'data' and 'error' can be set.`, + ); }, }) as HttpResponse<T, E>; const responseToParse = responseFormat ? response.clone() : response; const data = !responseFormat ❯ tests/extended.test.ts:43:21