Files
Hayden Bleasel cf9ccd0076 Open Source Docs (#272)
* Scaffold Geistdocs instance

* Update biome.json

* Replace content

* Re-path docs

* Update docs package name

* Misc fixes

* Update geistdocs.tsx

* Move content to correct folder

* Start migrating custom components

* Finish migrating custom components

* Migrate existing redirects

* Remove #next suffixes from code blocks

* Migrate homepage and flags

* Remove duplicate lockfiles

* Start fixing homepage

* Replace Geist components

* Fix colors

* Improve layout

* Fix code blocks

* Fix hero

* Fix illustrations

* Fix redirect

* Fix nav links

* Patch in FrameworkSwitcher

* Bump Next.js in docs

* Delete turbo.json

* Misc fixes

* More logo fixes
2026-02-13 09:06:03 +02:00

34 lines
909 B
TypeScript

"use client";
import { MessageCircleIcon } from "lucide-react";
import { useChatContext } from "@/hooks/geistdocs/use-chat";
type AskAIProps = {
href: string;
};
export const AskAI = ({ href }: AskAIProps) => {
const { setIsOpen, setPrompt } = useChatContext();
const protocol = process.env.NODE_ENV === "production" ? "https" : "http";
const url = new URL(
href,
`${protocol}://${process.env.NEXT_PUBLIC_VERCEL_PROJECT_PRODUCTION_URL}`
).toString();
const query = `Read this page, I want to ask questions about it. ${url}`;
return (
<button
className="flex items-center gap-1.5 text-muted-foreground text-sm transition-colors hover:text-foreground"
onClick={() => {
setPrompt(query);
setIsOpen(true);
}}
type="button"
>
<MessageCircleIcon className="size-3.5" />
<span>Ask AI about this page</span>
</button>
);
};