Skip to content

Commit 166da76

Browse files
committed
extra parameter - remain optional for backwards compatibility
1 parent 33895f4 commit 166da76

File tree

6 files changed

+9
-8
lines changed

6 files changed

+9
-8
lines changed

package-lock.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/server/sse.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ export class SSEServerTransport implements Transport {
2020
private _sessionId: string;
2121
onclose?: () => void;
2222
onerror?: (error: Error) => void;
23-
onmessage?: (message: JSONRPCMessage, extra: { authInfo?: AuthInfo, requestInfo: RequestInfo }) => void;
23+
onmessage?: (message: JSONRPCMessage, extra?: MessageExtraInfo) => void;
2424

2525
/**
2626
* Creates a new SSE server transport, which will direct the client to POST messages to the relative or absolute URL identified by `_endpoint`.
@@ -119,7 +119,7 @@ export class SSEServerTransport implements Transport {
119119
/**
120120
* Handle a client message, regardless of how it arrived. This can be used to inform the server of messages that arrive via a means different than HTTP POST.
121121
*/
122-
async handleMessage(message: unknown, extra: MessageExtraInfo): Promise<void> {
122+
async handleMessage(message: unknown, extra?: MessageExtraInfo): Promise<void> {
123123
let parsedMessage: JSONRPCMessage;
124124
try {
125125
parsedMessage = JSONRPCMessageSchema.parse(message);

src/server/streamableHttp.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ export class StreamableHTTPServerTransport implements Transport {
114114
sessionId?: string;
115115
onclose?: () => void;
116116
onerror?: (error: Error) => void;
117-
onmessage?: (message: JSONRPCMessage, extra: MessageExtraInfo) => void;
117+
onmessage?: (message: JSONRPCMessage, extra?: MessageExtraInfo) => void;
118118

119119
constructor(options: StreamableHTTPServerTransportOptions) {
120120
this.sessionIdGenerator = options.sessionIdGenerator;

src/server/types/types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export interface MessageExtraInfo {
2222
/**
2323
* The request information.
2424
*/
25-
requestInfo: RequestInfo;
25+
requestInfo?: RequestInfo;
2626

2727
/**
2828
* The authentication information.

src/shared/protocol.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ export type RequestHandlerExtra<SendRequestT extends Request,
131131
/**
132132
* The original HTTP request.
133133
*/
134-
requestInfo: RequestInfo;
134+
requestInfo?: RequestInfo;
135135

136136
/**
137137
* Sends a notification that relates to the current request being handled.
@@ -345,7 +345,7 @@ export abstract class Protocol<
345345
);
346346
}
347347

348-
private _onrequest(request: JSONRPCRequest, extra: MessageExtraInfo): void {
348+
private _onrequest(request: JSONRPCRequest, extra?: MessageExtraInfo): void {
349349
const handler =
350350
this._requestHandlers.get(request.method) ?? this.fallbackRequestHandler;
351351

@@ -381,7 +381,7 @@ export abstract class Protocol<
381381
this.request(r, resultSchema, { ...options, relatedRequestId: request.id }),
382382
authInfo: extra?.authInfo,
383383
requestId: request.id,
384-
requestInfo: extra.requestInfo
384+
requestInfo: extra?.requestInfo
385385
};
386386

387387
// Starting with Promise.resolve() puts any synchronous errors into the monad as well.

src/shared/transport.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ export interface Transport {
7070
*
7171
* The requestInfo can be used to get the original request information (headers, etc.)
7272
*/
73-
onmessage?: (message: JSONRPCMessage, extra: MessageExtraInfo) => void;
73+
onmessage?: (message: JSONRPCMessage, extra?: MessageExtraInfo) => void;
7474

7575
/**
7676
* The session ID generated for this connection.

0 commit comments

Comments
 (0)