From 2e52837bdb77026ec6c505cc550920a351420077 Mon Sep 17 00:00:00 2001 From: Fredrik Jensen Date: Sun, 7 Dec 2025 11:52:50 +0100 Subject: [PATCH] add resize to content hook --- README.md | 16 +++++ nanobot.db | Bin 19521536 -> 27942912 bytes package.json | 4 +- .../demo-server/components/StockDashboard.tsx | 7 ++- .../components/WeatherDashboard.tsx | 4 +- packages/library/ui/index.ts | 59 ++++++++++++++++++ 6 files changed, 86 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 6d07488..0636726 100644 --- a/README.md +++ b/README.md @@ -120,6 +120,22 @@ createUI('dashboard', require.resolve('./Dashboard.tsx')); // CommonJS - **`useProps(defaults)`** — Get props passed from the server - **`sendPrompt(message)`** — Send a message to the AI chat - **`callTool(name, params)`** — Invoke an MCP tool +- **`resizeToContent(element?)`** — Request parent to resize iframe to fit content +- **`useResizeToContent()`** — Hook that auto-notifies parent when content size changes + +```tsx +import { useResizeToContent } from 'mcp-ui-kit/ui'; + +function MyComponent() { + const containerRef = useResizeToContent(); + + return ( +
+ {/* Content that may change size */} +
+ ); +} +``` ## Development diff --git a/nanobot.db b/nanobot.db index 1ae730899fa954dde00fc6bfc3edc75e26612d0d..58a605a6bd3eefab9b16ab2f2f15d8270a01002b 100644 GIT binary patch delta 122594 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 z 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 TosMB9rN-wdp>IX^Gamm7c7e?f delta 45601 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

YzoYJ9Vj)qTfqf$p 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 Ur~#-6s0FAEs6z^by2SYZ0AiV27ytkO diff --git a/package.json b/package.json index 1cd2eb3..6a8c5b9 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,10 @@ "scripts": { "dev": "npm run start --workspace=demo-server & npm run dev --workspace=@mcp-ui-kit/inspector", "start": "npm run start --workspace=demo-server", + "build": "npm run build --workspace=packages/library", "start:inspector": "npm run dev --workspace=@mcp-ui-kit/inspector", - "publish:library": "npm publish --workspace=packages/library" + "publish:library": "npm publish --workspace=packages/library", + "nanobot": "export $(cat .env | xargs) && nanobot run ./nanobot.yaml" }, "devDependencies": { "typescript": "^5.6.3" diff --git a/packages/demo-server/components/StockDashboard.tsx b/packages/demo-server/components/StockDashboard.tsx index 242c30c..638855d 100644 --- a/packages/demo-server/components/StockDashboard.tsx +++ b/packages/demo-server/components/StockDashboard.tsx @@ -1,6 +1,6 @@ import React, { useState, useEffect } from 'react'; import { generateMockStockData } from './stock-utils'; -import { callTool, sendPrompt, useProps } from 'mcp-ui-kit/ui'; +import { callTool, sendPrompt, useProps, useResizeToContent } from 'mcp-ui-kit/ui'; // Types for props passed from the tool handler @@ -31,6 +31,9 @@ export function StockDashboard() { timeframe: '1M', }); + // Auto-notify parent when content size changes + const containerRef = useResizeToContent(); + const stocks: StockData[] = generateMockStockData(props.symbols); const [selectedStock, setSelectedStock] = useState(stocks[0]?.symbol || ''); @@ -70,7 +73,7 @@ Please analyze this portfolio and provide recommendations.`; return ( <> -

+
{/* Header */}
diff --git a/packages/demo-server/components/WeatherDashboard.tsx b/packages/demo-server/components/WeatherDashboard.tsx index 2be2803..2007225 100644 --- a/packages/demo-server/components/WeatherDashboard.tsx +++ b/packages/demo-server/components/WeatherDashboard.tsx @@ -1,5 +1,6 @@ import React from 'react'; import { styles } from './styles'; +import { useResizeToContent } from 'mcp-ui-kit/ui'; interface WeatherData { temp: number; @@ -35,6 +36,7 @@ const weatherDataByCity: WeatherData = { export function WeatherDashboard() { + const containerRef = useResizeToContent(); const data = weatherDataByCity; const currentDate = new Date().toLocaleDateString('en-US', { weekday: 'long', @@ -60,7 +62,7 @@ ${data.forecast.map(day => `${day.day}: ${day.icon} ${day.temp}°C`).join('\n')} return ( <> -
+

diff --git a/packages/library/ui/index.ts b/packages/library/ui/index.ts index 39f61bf..eae3452 100644 --- a/packages/library/ui/index.ts +++ b/packages/library/ui/index.ts @@ -1,3 +1,4 @@ +import { useEffect, useRef, type RefObject } from 'react'; /** * Send a prompt to the parent window @@ -24,6 +25,64 @@ export function callTool(toolName: string, params: Record = {}) }, '*'); } +/** + * Request the parent to resize the iframe to fit content + * Call this after your content has rendered + */ +export function resizeToContent(element?: HTMLElement) { + const target = element || document.body; + + // Use scrollHeight/scrollWidth for full content size (not just visible area) + // Also account for any margin on the element + const style = window.getComputedStyle(target); + const marginTop = parseFloat(style.marginTop) || 0; + const marginBottom = parseFloat(style.marginBottom) || 0; + const marginLeft = parseFloat(style.marginLeft) || 0; + const marginRight = parseFloat(style.marginRight) || 0; + + // For body, also account for body padding/margin + let extraHeight = 0; + let extraWidth = 0; + if (target !== document.body) { + const bodyStyle = window.getComputedStyle(document.body); + extraHeight = (parseFloat(bodyStyle.paddingTop) || 0) + (parseFloat(bodyStyle.paddingBottom) || 0); + extraWidth = (parseFloat(bodyStyle.paddingLeft) || 0) + (parseFloat(bodyStyle.paddingRight) || 0); + } + + const width = Math.ceil(target.scrollWidth + marginLeft + marginRight + extraWidth); + const height = Math.ceil(target.scrollHeight + marginTop + marginBottom + extraHeight); + + window.parent.postMessage({ + type: 'resize', + payload: { width, height } + }, '*'); +} + +/** + * Hook that automatically notifies parent when content size changes + * Returns a ref to attach to your container element + */ +export function useResizeToContent(): RefObject { + const ref = useRef(null); + + useEffect(() => { + const element = ref.current; + if (!element) return; + + const observer = new ResizeObserver(() => { + resizeToContent(element); + }); + + observer.observe(element); + // Initial resize + resizeToContent(element); + + return () => observer.disconnect(); + }, []); + + return ref; +} + /** * Use MCP props */