TLComponents
See source codeTable of contents
- A11y
 - ActionsMenu
 - Background
 - Brush
 - Canvas
 - CollaboratorBrush
 - CollaboratorCursor
 - CollaboratorHint
 - CollaboratorScribble
 - CollaboratorShapeIndicator
 - ContextMenu
 - Cursor
 - CursorChatBubble
 - DebugMenu
 - DebugPanel
 - Dialogs
 - ErrorFallback
 - FollowingIndicator
 - Grid
 - Handle
 - Handles
 - HelperButtons
 - HelpMenu
 - ImageToolbar
 - InFrontOfTheCanvas
 - KeyboardShortcutsDialog
 - LoadingScreen
 - MainMenu
 - MenuPanel
 - Minimap
 - NavigationPanel
 - OnTheCanvas
 - Overlays
 - PageMenu
 - QuickActions
 - RichTextToolbar
 - Scribble
 - SelectionBackground
 - SelectionForeground
 - ShapeErrorFallback
 - ShapeIndicator
 - ShapeIndicatorErrorFallback
 - ShapeIndicators
 - ShapeWrapper
 - SharePanel
 - SnapIndicator
 - Spinner
 - StylePanel
 - SvgDefs
 - Toasts
 - Toolbar
 - TopPanel
 - VideoToolbar
 - ZoomBrush
 - ZoomMenu
 - Properties
 
Extends TLEditorComponents, TLUiComponents.
Override the default react components used by the editor and UI. Set components to null to disable them entirely.
interface TLComponents extends TLEditorComponents, TLUiComponents {}Example
import { Tldraw, TLComponents } from 'tldraw'
const components: TLComponents = {
  Scribble: MyCustomScribble,
}
export function MyApp() {
  return <Tldraw components={components} />
}Properties
A11y
optional
from TLUiComponents
A11y?: ComponentType | nullActionsMenu
optional
from TLUiComponents
ActionsMenu?: ComponentType<TLUiActionsMenuProps> | nullBackground
optional
from TLEditorComponents
Background?: ComponentType | nullBrush
optional
from TLEditorComponents
Brush?: ComponentType<TLBrushProps> | nullCanvas
optional
from TLEditorComponents
Canvas?: ComponentType<TLCanvasComponentProps> | nullCollaboratorBrush
optional
from TLEditorComponents
CollaboratorBrush?: ComponentType<TLBrushProps> | nullCollaboratorCursor
optional
from TLEditorComponents
CollaboratorCursor?: ComponentType<TLCursorProps> | nullCollaboratorHint
optional
from TLEditorComponents
CollaboratorHint?: ComponentType<TLCollaboratorHintProps> | nullCollaboratorScribble
optional
from TLEditorComponents
CollaboratorScribble?: ComponentType<TLScribbleProps> | nullCollaboratorShapeIndicator
optional
from TLEditorComponents
CollaboratorShapeIndicator?: ComponentType<TLShapeIndicatorProps> | nullContextMenu
optional
from TLUiComponents
ContextMenu?: ComponentType<TLUiContextMenuProps> | nullCursor
optional
from TLEditorComponents
Cursor?: ComponentType<TLCursorProps> | nullCursorChatBubble
optional
from TLUiComponents
CursorChatBubble?: ComponentType | nullDebugMenu
optional
from TLUiComponents
DebugMenu?: ComponentType | nullDebugPanel
optional
from TLUiComponents
DebugPanel?: ComponentType | nullDialogs
optional
from TLUiComponents
Dialogs?: ComponentType | nullErrorFallback
optional
from TLEditorComponents
ErrorFallback?: TLErrorFallbackComponentFollowingIndicator
optional
from TLUiComponents
FollowingIndicator?: ComponentType | nullGrid
optional
from TLEditorComponents
Grid?: ComponentType<TLGridProps> | nullHandle
optional
from TLEditorComponents
Handle?: ComponentType<TLHandleProps> | nullHandles
optional
from TLEditorComponents
Handles?: ComponentType<TLHandlesProps> | nullHelperButtons
optional
from TLUiComponents
HelperButtons?: ComponentType<TLUiHelperButtonsProps> | nullHelpMenu
optional
from TLUiComponents
HelpMenu?: ComponentType<TLUiHelpMenuProps> | nullImageToolbar
optional
from TLUiComponents
ImageToolbar?: ComponentType | nullInFrontOfTheCanvas
optional
from TLEditorComponents
InFrontOfTheCanvas?: ComponentType | nullKeyboardShortcutsDialog
optional
from TLUiComponents
KeyboardShortcutsDialog?: ComponentType<TLUiKeyboardShortcutsDialogProps> | nullLoadingScreen
optional
from TLEditorComponents
LoadingScreen?: ComponentType | nullMainMenu
optional
from TLUiComponents
MainMenu?: ComponentType<TLUiMainMenuProps> | nullMenuPanel
optional
from TLUiComponents
MenuPanel?: ComponentType | nullMinimap
optional
from TLUiComponents
Minimap?: ComponentType | nullNavigationPanel
optional
from TLUiComponents
NavigationPanel?: ComponentType | nullOnTheCanvas
optional
from TLEditorComponents
OnTheCanvas?: ComponentType | nullOverlays
optional
from TLEditorComponents
Overlays?: ComponentType | nullPageMenu
optional
from TLUiComponents
PageMenu?: ComponentType | nullQuickActions
optional
from TLUiComponents
QuickActions?: ComponentType<TLUiQuickActionsProps> | nullRichTextToolbar
optional
from TLUiComponents
RichTextToolbar?: ComponentType<TLUiRichTextToolbarProps> | nullScribble
optional
from TLEditorComponents
Scribble?: ComponentType<TLScribbleProps> | nullSelectionBackground
optional
from TLEditorComponents
SelectionBackground?: ComponentType<TLSelectionBackgroundProps> | nullSelectionForeground
optional
from TLEditorComponents
SelectionForeground?: ComponentType<TLSelectionForegroundProps> | nullShapeErrorFallback
optional
from TLEditorComponents
ShapeErrorFallback?: TLShapeErrorFallbackComponentShapeIndicator
optional
from TLEditorComponents
ShapeIndicator?: ComponentType<TLShapeIndicatorProps> | nullShapeIndicatorErrorFallback
optional
from TLEditorComponents
ShapeIndicatorErrorFallback?: TLShapeIndicatorErrorFallbackComponentShapeIndicators
optional
from TLEditorComponents
ShapeIndicators?: ComponentType | nullShapeWrapper
optional
from TLEditorComponents
ShapeWrapper?: ComponentType<
  TLShapeWrapperProps & RefAttributes<HTMLDivElement>
> | nullSharePanel
optional
from TLUiComponents
SharePanel?: ComponentType | nullSnapIndicator
optional
from TLEditorComponents
SnapIndicator?: ComponentType<TLSnapIndicatorProps> | nullSpinner
optional
from TLEditorComponents
Spinner?: ComponentType<React.SVGProps<SVGSVGElement>> | nullStylePanel
optional
from TLUiComponents
StylePanel?: ComponentType<TLUiStylePanelProps> | nullSvgDefs
optional
from TLEditorComponents
SvgDefs?: ComponentType | nullToasts
optional
from TLUiComponents
Toasts?: ComponentType | nullToolbar
optional
from TLUiComponents
Toolbar?: ComponentType | nullTopPanel
optional
from TLUiComponents
TopPanel?: ComponentType | nullVideoToolbar
optional
from TLUiComponents
VideoToolbar?: ComponentType | nullZoomBrush
optional
from TLEditorComponents
ZoomBrush?: ComponentType<TLBrushProps> | nullZoomMenu
optional
from TLUiComponents
ZoomMenu?: ComponentType<TLUiZoomMenuProps> | nullPrev
TLArrowPointNext
TLDefaultExternalContentHandlerOpts