From 97254f3269a8f695ad63f78b63ec7c9869ef3142 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 2 Dec 2025 15:12:18 +0000 Subject: [PATCH 1/2] Initial plan From 8be21ad78ff51ed16a702aa51f9f9267a11b1211 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 2 Dec 2025 15:28:40 +0000 Subject: [PATCH 2/2] Fix TypeScript build error in StreamingInterop.ts for TS 5.9.3 compatibility Co-authored-by: javiercn <6995051+javiercn@users.noreply.github.com> --- src/Components/Web.JS/src/StreamingInterop.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/Components/Web.JS/src/StreamingInterop.ts b/src/Components/Web.JS/src/StreamingInterop.ts index 193afe97ec19..1e25c2a87a9e 100644 --- a/src/Components/Web.JS/src/StreamingInterop.ts +++ b/src/Components/Web.JS/src/StreamingInterop.ts @@ -23,11 +23,11 @@ function getChunkFromArrayBufferView(data: ArrayBufferView, position: number, ne return nextChunkData; } -const transmittingDotNetToJSStreams = new Map>(); +const transmittingDotNetToJSStreams = new Map>(); export function receiveDotNetDataStream(dispatcher: DotNet.ICallDispatcher, streamId: number, data: Uint8Array, bytesRead: number, errorMessage: string): void { let streamController = transmittingDotNetToJSStreams.get(streamId); if (!streamController) { - const readableStream = new ReadableStream({ + const readableStream = new ReadableStream({ start(controller) { transmittingDotNetToJSStreams.set(streamId, controller); streamController = controller; @@ -44,6 +44,7 @@ export function receiveDotNetDataStream(dispatcher: DotNet.ICallDispatcher, stre streamController!.close(); transmittingDotNetToJSStreams.delete(streamId); } else { - streamController!.enqueue(data.length === bytesRead ? data : data.subarray(0, bytesRead)); + const chunk = data.length === bytesRead ? data : new Uint8Array(data.buffer, data.byteOffset, bytesRead); + streamController!.enqueue(chunk); } }