Skip to content

Commit

Permalink
[components] Fix crash on function passed as media
Browse files Browse the repository at this point in the history
  • Loading branch information
rexxars committed Oct 6, 2020
1 parent 0526716 commit 89f573b
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions packages/@sanity/components/src/previews/BlockPreview.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,17 @@ type BlockPreviewStatusComponent = React.FunctionComponent<{
layout: 'default'
}>

type MediaCallable = (options: {
dimensions: PreviewMediaDimensions
layout: 'default'
}) => React.ReactNode | null | undefined

interface BlockPreviewProps {
title?: BlockPreviewFieldProp
subtitle?: BlockPreviewFieldProp
description?: BlockPreviewFieldProp
mediaDimensions?: PreviewMediaDimensions
media?: React.ReactNode | BlockPreviewMediaComponent
media?: React.ReactNode | MediaCallable
status?: React.ReactNode | BlockPreviewStatusComponent
children?: React.ReactNode
extendedPreview?: BlockPreviewFieldProp
Expand Down Expand Up @@ -57,7 +62,7 @@ export default class BlockPreview extends React.PureComponent<BlockPreviewProps>
{media && (
<div className={`${styles.media}`}>
{typeof media === 'function' &&
createElement(media as BlockPreviewMediaComponent, {
media({
dimensions: mediaDimensions || DEFAULT_MEDIA_DIMENSIONS,
layout: 'default'
})}
Expand Down

0 comments on commit 89f573b

Please sign in to comment.