53 lines
1.8 KiB
TypeScript
53 lines
1.8 KiB
TypeScript
import { Markdown } from "@/components/markdown"
|
|
import {
|
|
Bubble,
|
|
BubbleContent,
|
|
BubbleReactions,
|
|
} from "@/styles/aria-rhea/ui/bubble"
|
|
|
|
export function BubbleVariantsDemo() {
|
|
return (
|
|
<div className="flex w-full max-w-sm flex-col gap-12 py-12">
|
|
<Bubble>
|
|
<BubbleContent>This is the default primary bubble.</BubbleContent>
|
|
</Bubble>
|
|
<Bubble variant="secondary" align="end">
|
|
<BubbleContent>This is the secondary variant.</BubbleContent>
|
|
</Bubble>
|
|
<Bubble variant="muted">
|
|
<BubbleContent>
|
|
This one is muted. It uses a lower emphasis color for the chat bubble.
|
|
</BubbleContent>
|
|
<BubbleReactions role="img" aria-label="Reaction: thumbs up">
|
|
<span>👍</span>
|
|
</BubbleReactions>
|
|
</Bubble>
|
|
<Bubble variant="tinted" align="end">
|
|
<BubbleContent>
|
|
This one is tinted. The tint is a softer color derived from the
|
|
primary color.
|
|
</BubbleContent>
|
|
</Bubble>
|
|
<Bubble variant="outline">
|
|
<BubbleContent>We can also use an outlined variant.</BubbleContent>
|
|
</Bubble>
|
|
<Bubble variant="destructive" align="end">
|
|
<BubbleContent>Or a destructive variant with a reaction.</BubbleContent>
|
|
<BubbleReactions role="img" aria-label="Reaction: fire">
|
|
<span>🔥</span>
|
|
</BubbleReactions>
|
|
</Bubble>
|
|
<Bubble variant="ghost">
|
|
<BubbleContent>
|
|
<Markdown>{`Ghost bubbles work for assistant text, **markdown**, and other content that should not be framed.
|
|
|
|
This is perfect for assistant messages that should not have a frame and can take the full width of the container. You can also render \`code\` in it.
|
|
|
|
Ghost bubbles are full width and can take the full width of the container.
|
|
`}</Markdown>
|
|
</BubbleContent>
|
|
</Bubble>
|
|
</div>
|
|
)
|
|
}
|