---
url: https://talkjs.com/docs/UI_Components/Theme/Theme_components/VideoBlock
title: '<VideoBlock>'

minidoc-source: js
minidoc-lib: components
---

The `<VideoBlock>` component displays a video attachment.

## VideoBlockProps
/** */
export declare interface VideoBlockProps  {
/** The video block to display. */
block: VideoBlock;
/** A collection of objects which are passed to all Chatbox theme components. */
common: CommonChatboxProps;
/** The URL used to download the file.
This URL is not the same as `block.url`. When the current user sends a file message, the `block.url` will hold a temporary `blob:` URL until that file is uploaded to TalkJS. The user can immediately see their file present in the chat, which makes for a smoother user experience.
The `downloadUrl` is the URL of the file once it is uploaded to TalkJS. As such, this property will be `undefined` until the upload is completed, while `block.url` will always be defined and should be used for preview purposes. */
downloadUrl?: string;
/** The message that this content block belongs to. */
message: MessageSnapshot;
}

## Example

In the default theme, the `<VideoBlock>` component is implemented as follows:

<GithubThemeComponent name="VideoBlock" />