Files
Hayden Bleasel 101ca62c2d Update docs styles (#22)
* Initial implementation

* Bump deps

* Update code-block.tsx

* Update navbar.tsx

* Move video to Geistdocs

* Update layout.tsx

* Margin fixes

* Update code-block-tabs.tsx

* Update docs-page.tsx

* Update navbar.tsx

* Add feed

* Update docs-layout.tsx

* Update mobile-menu.tsx

* Fix adaptable layout

* Update docs-page.tsx

* Update docs page composability

* Update global.css

* Remove unused AI Elements

* Update Feedback
2025-11-14 11:56:29 -08:00

57 lines
1.2 KiB
TypeScript

"use client";
import { Button } from "@/components/ui/button";
import {
ScrollArea,
ScrollBar,
} from "@/components/ui/scroll-area";
import { cn } from "@/lib/utils";
import type { ComponentProps } from "react";
export type SuggestionsProps = ComponentProps<typeof ScrollArea>;
export const Suggestions = ({
className,
children,
...props
}: SuggestionsProps) => (
<ScrollArea className="w-full overflow-x-auto whitespace-nowrap" {...props}>
<div className={cn("flex w-max flex-nowrap items-center gap-2", className)}>
{children}
</div>
<ScrollBar className="hidden" orientation="horizontal" />
</ScrollArea>
);
export type SuggestionProps = Omit<ComponentProps<typeof Button>, "onClick"> & {
suggestion: string;
onClick?: (suggestion: string) => void;
};
export const Suggestion = ({
suggestion,
onClick,
className,
variant = "outline",
size = "sm",
children,
...props
}: SuggestionProps) => {
const handleClick = () => {
onClick?.(suggestion);
};
return (
<Button
className={cn("cursor-pointer rounded-full px-4", className)}
onClick={handleClick}
size={size}
type="button"
variant={variant}
{...props}
>
{children || suggestion}
</Button>
);
};