diff --git a/src/app-bridge.test.ts b/src/app-bridge.test.ts index a4fe1de1e..71ad740da 100644 --- a/src/app-bridge.test.ts +++ b/src/app-bridge.test.ts @@ -14,8 +14,8 @@ import { } from "@modelcontextprotocol/sdk/types.js"; import { z } from "zod/v4"; -import { App } from "./app"; -import { LATEST_PROTOCOL_VERSION } from "./types"; +import { App } from "./app.js"; +import { LATEST_PROTOCOL_VERSION } from "./types.js"; import { AppBridge, buildAllowAttribute, @@ -23,7 +23,7 @@ import { isToolVisibilityModelOnly, isToolVisibilityAppOnly, type McpUiHostCapabilities, -} from "./app-bridge"; +} from "./app-bridge.js"; /** Wait for pending microtasks to complete */ const flush = () => new Promise((resolve) => setTimeout(resolve, 0)); diff --git a/src/app-bridge.ts b/src/app-bridge.ts index 23383c40f..9664d601b 100644 --- a/src/app-bridge.ts +++ b/src/app-bridge.ts @@ -47,7 +47,7 @@ import { ProtocolOptions, RequestOptions, } from "@modelcontextprotocol/sdk/shared/protocol.js"; -import { ProtocolWithEvents } from "./events"; +import { ProtocolWithEvents } from "./events.js"; import { type AppNotification, @@ -92,11 +92,11 @@ import { McpUiRequestDisplayModeResult, McpUiResourcePermissions, McpUiToolMeta, -} from "./types"; -export * from "./types"; -export { RESOURCE_URI_META_KEY, RESOURCE_MIME_TYPE } from "./app"; -import { RESOURCE_URI_META_KEY } from "./app"; -export { PostMessageTransport } from "./message-transport"; +} from "./types.js"; +export * from "./types.js"; +export { RESOURCE_URI_META_KEY, RESOURCE_MIME_TYPE } from "./app.js"; +import { RESOURCE_URI_META_KEY } from "./app.js"; +export { PostMessageTransport } from "./message-transport.js"; /** * Extract UI resource URI from tool metadata. diff --git a/src/app.ts b/src/app.ts index adfad5c77..1eb36d448 100644 --- a/src/app.ts +++ b/src/app.ts @@ -31,10 +31,10 @@ import { ToolAnnotations, ToolListChangedNotification, } from "@modelcontextprotocol/sdk/types.js"; -import { AppNotification, AppRequest, AppResult } from "./types"; -import { ProtocolWithEvents } from "./events"; +import { AppNotification, AppRequest, AppResult } from "./types.js"; +import { ProtocolWithEvents } from "./events.js"; export { ProtocolWithEvents }; -import { PostMessageTransport } from "./message-transport"; +import { PostMessageTransport } from "./message-transport.js"; import { LATEST_PROTOCOL_VERSION, McpUiAppCapabilities, @@ -67,28 +67,28 @@ import { McpUiToolResultNotificationSchema, McpUiRequestDisplayModeRequest, McpUiRequestDisplayModeResultSchema, -} from "./types"; +} from "./types.js"; import { Transport } from "@modelcontextprotocol/sdk/shared/transport.js"; import { StandardSchemaV1, standardSchemaToJsonSchema, validateStandardSchema, -} from "./standard-schema"; +} from "./standard-schema.js"; import { z } from "zod/v4"; export type { StandardSchemaV1, StandardSchemaWithJSON, -} from "./standard-schema"; +} from "./standard-schema.js"; -export { PostMessageTransport } from "./message-transport"; -export * from "./types"; +export { PostMessageTransport } from "./message-transport.js"; +export * from "./types.js"; export { applyHostStyleVariables, applyHostFonts, getDocumentTheme, applyDocumentTheme, -} from "./styles"; +} from "./styles.js"; /** * Metadata key for associating a UI resource URI with a tool. diff --git a/src/message-transport.test.ts b/src/message-transport.test.ts index d5f509204..df163741e 100644 --- a/src/message-transport.test.ts +++ b/src/message-transport.test.ts @@ -1,7 +1,7 @@ import { describe, it, expect, beforeEach, afterEach, mock } from "bun:test"; import type { JSONRPCMessage } from "@modelcontextprotocol/sdk/types.js"; -import { PostMessageTransport } from "./message-transport"; +import { PostMessageTransport } from "./message-transport.js"; /** * Minimal `window` stub for bun's DOM-less test environment. diff --git a/src/message-transport.ts b/src/message-transport.ts index 9d195435a..621362e58 100644 --- a/src/message-transport.ts +++ b/src/message-transport.ts @@ -7,7 +7,7 @@ import { Transport, TransportSendOptions, } from "@modelcontextprotocol/sdk/shared/transport.js"; -import { TOOL_INPUT_PARTIAL_METHOD } from "./spec.types"; +import { TOOL_INPUT_PARTIAL_METHOD } from "./spec.types.js"; /** * JSON-RPC transport using `window.postMessage` for iframe↔parent communication. diff --git a/src/react/index.tsx b/src/react/index.tsx index e76e197a8..9693fb116 100644 --- a/src/react/index.tsx +++ b/src/react/index.tsx @@ -31,7 +31,7 @@ * } * ``` */ -export * from "./useApp"; -export * from "./useAutoResize"; -export * from "./useDocumentTheme"; -export * from "./useHostStyles"; +export * from "./useApp.js"; +export * from "./useAutoResize.js"; +export * from "./useDocumentTheme.js"; +export * from "./useHostStyles.js"; diff --git a/src/react/useApp.tsx b/src/react/useApp.tsx index 61892464a..64438d216 100644 --- a/src/react/useApp.tsx +++ b/src/react/useApp.tsx @@ -6,8 +6,8 @@ import { AppOptions, McpUiAppCapabilities, PostMessageTransport, -} from "../app"; -export * from "../app"; +} from "../app.js"; +export * from "../app.js"; /** * Options for configuring the {@link useApp `useApp`} hook. diff --git a/src/react/useAutoResize.ts b/src/react/useAutoResize.ts index 78217d6b4..66af07e96 100644 --- a/src/react/useAutoResize.ts +++ b/src/react/useAutoResize.ts @@ -1,5 +1,5 @@ import { useEffect, RefObject } from "react"; -import { App } from "../app"; +import { App } from "../app.js"; /** * React hook that automatically reports UI size changes to the host. diff --git a/src/react/useDocumentTheme.ts b/src/react/useDocumentTheme.ts index 2fdfcc2f1..3dc851e67 100644 --- a/src/react/useDocumentTheme.ts +++ b/src/react/useDocumentTheme.ts @@ -1,6 +1,6 @@ import { useEffect, useState } from "react"; -import { getDocumentTheme } from "../styles"; -import { McpUiTheme } from "../types"; +import { getDocumentTheme } from "../styles.js"; +import { McpUiTheme } from "../types.js"; /** * React hook that provides the current document theme reactively. diff --git a/src/react/useHostStyles.ts b/src/react/useHostStyles.ts index e380efae9..d8376a0c8 100644 --- a/src/react/useHostStyles.ts +++ b/src/react/useHostStyles.ts @@ -1,11 +1,11 @@ import { useEffect, useRef } from "react"; -import { App } from "../app"; +import { App } from "../app.js"; import { applyDocumentTheme, applyHostFonts, applyHostStyleVariables, -} from "../styles"; -import { McpUiHostContext } from "../types"; +} from "../styles.js"; +import { McpUiHostContext } from "../types.js"; /** * React hook that applies host style variables and theme as CSS custom properties. diff --git a/src/server/index.test.ts b/src/server/index.test.ts index 1853cc05a..55c47202d 100644 --- a/src/server/index.test.ts +++ b/src/server/index.test.ts @@ -6,7 +6,7 @@ import { RESOURCE_MIME_TYPE, getUiCapability, EXTENSION_ID, -} from "./index"; +} from "./index.js"; import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; describe("registerAppTool", () => { diff --git a/src/server/index.ts b/src/server/index.ts index c90514acd..52215a363 100644 --- a/src/server/index.ts +++ b/src/server/index.ts @@ -52,7 +52,7 @@ import type { AnySchema, ZodRawShapeCompat, } from "@modelcontextprotocol/sdk/server/zod-compat.js"; -import type { StandardSchemaWithJSON } from "../standard-schema"; +import type { StandardSchemaWithJSON } from "../standard-schema.js"; import type { ClientCapabilities, ReadResourceResult, diff --git a/src/styles.ts b/src/styles.ts index ad900e29e..895073b8d 100644 --- a/src/styles.ts +++ b/src/styles.ts @@ -1,4 +1,4 @@ -import { McpUiStyles, McpUiTheme } from "./types"; +import { McpUiStyles, McpUiTheme } from "./types.js"; /** * Get the current document theme from the root HTML element.