callout-node
plate/callout-nodeFreeComponent
A callout component for highlighting important information with customizable icons and styles.
Live preview
live · rendered by the registry
Rendered by plate on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://platejs.org/r/callout-node.jsonSource
1'use client';23import * as React from 'react';45import { useCalloutEmojiPicker } from '@platejs/callout/react';6import { useEmojiDropdownMenuState } from '@platejs/emoji/react';7import { PlateElement } from 'platejs/react';89import { Button } from '@/components/ui/button';10import { cn } from '@/lib/utils';1112import { EmojiPicker, EmojiPopover } from './emoji-toolbar-button';1314export function CalloutElement({15 attributes,16 children,17 className,18 ...props19}: React.ComponentProps<typeof PlateElement>) {20 const { emojiPickerState, isOpen, setIsOpen } = useEmojiDropdownMenuState({21 closeOnSelect: true,22 });2324 const { emojiToolbarDropdownProps, props: calloutProps } =25 useCalloutEmojiPicker({26 isOpen,27 setIsOpen,28 });2930 return (31 <PlateElement32 className={cn('my-1 flex rounded-sm bg-muted p-4 pl-3', className)}33 style={{34 backgroundColor: props.element.backgroundColor as any,35 }}36 attributes={{37 ...attributes,38 'data-plate-open-context-menu': true,39 }}40 {...props}41 >42 <div className="flex w-full gap-2 rounded-md">43 <EmojiPopover44 {...emojiToolbarDropdownProps}45 control={46 <Button47 variant="ghost"48 className="size-6 select-none p-1 text-[18px] hover:bg-muted-foreground/15"49 style={{50 fontFamily:51 '"Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Noto Color Emoji", "Segoe UI Symbol", "Android Emoji", EmojiSymbols',52 }}53 contentEditable={false}54 >55 {(props.element.icon as any) || '💡'}56 </Button>57 }58 >59 <EmojiPicker {...emojiPickerState} {...calloutProps} />60 </EmojiPopover>61 <div className="w-full">{children}</div>62 </div>63 </PlateElement>64 );65}
What it pulls in
npm packages
Other registry items
Files it writes
More from plate
All 324 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| ai-kitai-kit | plate | Components | Free | 1 dep | |
| AI Menuai-menu | plate | Components | Free | 5 deps · 2 files | |
| AI Leafai-node | plate | Components | Free | no deps | |
| AI Toolbar Buttonai-toolbar-button | plate | Components | Free | 1 dep | |
| align-base-kitalign-base-kit | plate | Components | Free | 1 dep | |
| align-kitalign-kit | plate | Components | Free | 1 dep | |
| Align Toolbar Buttonalign-toolbar-button | plate | Components | Free | 1 dep | |
| autoformat-classic-kitautoformat-classic-kit | plate | Components | Free | 2 deps |
