mirror of
https://github.com/vercel/flags.git
synced 2026-09-19 03:49:23 +08:00
cf9ccd0076
* 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
50 lines
1.2 KiB
TypeScript
50 lines
1.2 KiB
TypeScript
import { ExternalLinkIcon } from "lucide-react";
|
|
import {
|
|
OpenIn,
|
|
OpenInChatGPT,
|
|
OpenInClaude,
|
|
OpenInContent,
|
|
OpenInCursor,
|
|
OpenInScira,
|
|
OpenInSeparator,
|
|
OpenInT3,
|
|
OpenInTrigger,
|
|
OpenInv0,
|
|
} from "@/components/ai-elements/open-in-chat";
|
|
|
|
type OpenInChatProps = {
|
|
href: string;
|
|
};
|
|
|
|
export const OpenInChat = ({ href }: OpenInChatProps) => {
|
|
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 (
|
|
<OpenIn query={query}>
|
|
<OpenInTrigger asChild>
|
|
<button
|
|
className="flex items-center gap-1.5 text-muted-foreground text-sm transition-colors hover:text-foreground"
|
|
type="button"
|
|
>
|
|
<ExternalLinkIcon className="size-4" />
|
|
Open in chat
|
|
</button>
|
|
</OpenInTrigger>
|
|
<OpenInContent align="start" side="top">
|
|
<OpenInv0 />
|
|
<OpenInSeparator />
|
|
<OpenInChatGPT />
|
|
<OpenInClaude />
|
|
<OpenInT3 />
|
|
<OpenInScira />
|
|
<OpenInCursor />
|
|
</OpenInContent>
|
|
</OpenIn>
|
|
);
|
|
};
|