diff --git a/.changeset/afraid-countries-own.md b/.changeset/afraid-countries-own.md new file mode 100644 index 000000000..4f91e8b4d --- /dev/null +++ b/.changeset/afraid-countries-own.md @@ -0,0 +1,5 @@ +--- +'@gitbook/react-contentkit': minor +--- + +Fix an issue where ContentKit iframes were not resizing. diff --git a/packages/react-contentkit/src/ElementWebframe.tsx b/packages/react-contentkit/src/ElementWebframe.tsx index 6e68fb896..63ee2345d 100644 --- a/packages/react-contentkit/src/ElementWebframe.tsx +++ b/packages/react-contentkit/src/ElementWebframe.tsx @@ -14,8 +14,7 @@ export function ElementWebframe(props: ContentKitClientElementProps(null); const [size, setSize] = React.useState<{ - maxWidth?: number; - maxHeight?: number; + height?: number; aspectRatio?: number; }>({}); @@ -88,9 +87,8 @@ export function ElementWebframe(props: ContentKitClientElementProps ({ + aspectRatio: + typeof message.action.size.aspectRatio !== 'undefined' + ? Number(message.action.size.aspectRatio) + : size.aspectRatio, + + height: (() => { + if (typeof message.action.size.height !== 'undefined') { + return Number(message.action.size.height); + } + + // maxHeight was used prior to moving to height, maintain it for backward compatibility. + if (typeof message.action.size.maxHeight !== 'undefined') { + return Number(message.action.size.maxHeight); + } + + return size.height; + })(), + })); break; default: renderer.update({ @@ -149,33 +161,33 @@ export function ElementWebframe(props: ContentKitClientElementProps - {mounted ? ( -