zod4 compatibility fixed for CI
This commit is contained in:
parent
4e431c9c24
commit
635a9a18f0
5 changed files with 18 additions and 10 deletions
|
|
@ -18,6 +18,10 @@ import {
|
|||
LoggingLevel,
|
||||
} from "@modelcontextprotocol/sdk/types.js";
|
||||
import { OAuthTokensSchema } from "@modelcontextprotocol/sdk/shared/auth.js";
|
||||
import type {
|
||||
AnySchema,
|
||||
SchemaOutput,
|
||||
} from "@modelcontextprotocol/sdk/server/zod-compat.js";
|
||||
import { SESSION_KEYS, getServerSpecificKey } from "./lib/constants";
|
||||
import {
|
||||
hasValidMetaName,
|
||||
|
|
@ -687,11 +691,11 @@ const App = () => {
|
|||
setErrors((prev) => ({ ...prev, [tabKey]: null }));
|
||||
};
|
||||
|
||||
const sendMCPRequest = async <T extends z.ZodType>(
|
||||
const sendMCPRequest = async <T extends AnySchema>(
|
||||
request: ClientRequest,
|
||||
schema: T,
|
||||
tabKey?: keyof typeof errors,
|
||||
) => {
|
||||
): Promise<SchemaOutput<T>> => {
|
||||
try {
|
||||
const response = await makeRequest(request, schema);
|
||||
if (tabKey !== undefined) {
|
||||
|
|
|
|||
|
|
@ -80,8 +80,8 @@ const ToolResults = ({
|
|||
<h4 className="font-semibold mb-2">Invalid Tool Result:</h4>
|
||||
<JsonView data={toolResult} />
|
||||
<h4 className="font-semibold mb-2">Errors:</h4>
|
||||
{parsedResult.error.errors.map((error, idx) => (
|
||||
<JsonView data={error} key={idx} />
|
||||
{parsedResult.error.issues.map((issue, idx) => (
|
||||
<JsonView data={issue} key={idx} />
|
||||
))}
|
||||
</>
|
||||
);
|
||||
|
|
|
|||
|
|
@ -35,7 +35,8 @@ const buttonVariants = cva(
|
|||
);
|
||||
|
||||
export interface ButtonProps
|
||||
extends React.ButtonHTMLAttributes<HTMLButtonElement>,
|
||||
extends
|
||||
React.ButtonHTMLAttributes<HTMLButtonElement>,
|
||||
VariantProps<typeof buttonVariants> {
|
||||
asChild?: boolean;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,10 +31,13 @@ import {
|
|||
LoggingLevel,
|
||||
ElicitRequestSchema,
|
||||
} from "@modelcontextprotocol/sdk/types.js";
|
||||
import type {
|
||||
AnySchema,
|
||||
SchemaOutput,
|
||||
} from "@modelcontextprotocol/sdk/server/zod-compat.js";
|
||||
import { RequestOptions } from "@modelcontextprotocol/sdk/shared/protocol.js";
|
||||
import { useEffect, useState } from "react";
|
||||
import { useToast } from "@/lib/hooks/useToast";
|
||||
import { z } from "zod";
|
||||
import { ConnectionStatus, CLIENT_IDENTITY } from "../constants";
|
||||
import { Notification } from "../notificationTypes";
|
||||
import {
|
||||
|
|
@ -166,11 +169,11 @@ export function useConnection({
|
|||
]);
|
||||
};
|
||||
|
||||
const makeRequest = async <T extends z.ZodType>(
|
||||
const makeRequest = async <T extends AnySchema>(
|
||||
request: ClientRequest,
|
||||
schema: T,
|
||||
options?: RequestOptions & { suppressToast?: boolean },
|
||||
): Promise<z.output<T>> => {
|
||||
): Promise<SchemaOutput<T>> => {
|
||||
if (!mcpClient) {
|
||||
throw new Error("MCP client not connected");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,10 +3,10 @@ import {
|
|||
ClientNotificationSchema,
|
||||
ServerNotificationSchema,
|
||||
} from "@modelcontextprotocol/sdk/types.js";
|
||||
import { z } from "zod";
|
||||
import type { SchemaOutput } from "@modelcontextprotocol/sdk/server/zod-compat.js";
|
||||
|
||||
export const NotificationSchema = ClientNotificationSchema.or(
|
||||
ServerNotificationSchema,
|
||||
).or(BaseNotificationSchema);
|
||||
|
||||
export type Notification = z.infer<typeof NotificationSchema>;
|
||||
export type Notification = SchemaOutput<typeof NotificationSchema>;
|
||||
|
|
|
|||
Loading…
Reference in a new issue