CodeBlockCommand() — ui Function Reference
Architecture documentation for the CodeBlockCommand() function in code-block-command.tsx from the ui codebase.
Entity Profile
Dependency Diagram
graph TD 22e89f76_d0d0_8720_d5f8_8fe381f569d3["CodeBlockCommand()"] baae3241_177a_8f9c_1fe0_1ee553f9d099["code-block-command.tsx"] 22e89f76_d0d0_8720_d5f8_8fe381f569d3 -->|defined in| baae3241_177a_8f9c_1fe0_1ee553f9d099 style 22e89f76_d0d0_8720_d5f8_8fe381f569d3 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
deprecated/www/components/code-block-command.tsx lines 13–110
export function CodeBlockCommand({
__npmCommand__,
__yarnCommand__,
__pnpmCommand__,
__bunCommand__,
}: React.ComponentProps<"pre"> & NpmCommands) {
const [config, setConfig] = useConfig()
const [hasCopied, setHasCopied] = React.useState(false)
React.useEffect(() => {
if (hasCopied) {
const timer = setTimeout(() => setHasCopied(false), 2000)
return () => clearTimeout(timer)
}
}, [hasCopied])
const packageManager = config.packageManager || "pnpm"
const tabs = React.useMemo(() => {
return {
pnpm: __pnpmCommand__,
npm: __npmCommand__,
yarn: __yarnCommand__,
bun: __bunCommand__,
}
}, [__npmCommand__, __pnpmCommand__, __yarnCommand__, __bunCommand__])
const copyCommand = React.useCallback(() => {
const command = tabs[packageManager]
if (!command) {
return
}
copyToClipboardWithMeta(command, {
name: "copy_npm_command",
properties: {
command,
pm: packageManager,
},
})
setHasCopied(true)
}, [packageManager, tabs])
return (
<div className="relative mt-6 max-h-[650px] overflow-x-auto rounded-xl bg-zinc-950 dark:bg-zinc-900">
<Tabs
value={packageManager}
onValueChange={(value) => {
setConfig({
...config,
packageManager: value as "pnpm" | "npm" | "yarn" | "bun",
})
}}
>
<div className="flex items-center justify-between border-b border-zinc-800 bg-zinc-900 px-3 pt-2.5">
<TabsList className="h-7 translate-y-[2px] gap-3 bg-transparent p-0 pl-1">
{Object.entries(tabs).map(([key, value]) => {
return (
<TabsTrigger
key={key}
value={key}
className="rounded-none border-b border-transparent bg-transparent p-0 pb-1.5 font-mono text-zinc-400 data-[state=active]:border-b-zinc-50 data-[state=active]:bg-transparent data-[state=active]:text-zinc-50"
>
{key}
</TabsTrigger>
)
})}
</TabsList>
</div>
<div className="overflow-x-auto">
{Object.entries(tabs).map(([key, value]) => {
return (
<TabsContent key={key} value={key} className="mt-0">
<pre className="px-4 py-5">
<code
className="relative font-mono text-sm leading-none"
data-language="bash"
>
{value}
</code>
</pre>
Domain
Subdomains
Source
Frequently Asked Questions
What does CodeBlockCommand() do?
CodeBlockCommand() is a function in the ui codebase, defined in deprecated/www/components/code-block-command.tsx.
Where is CodeBlockCommand() defined?
CodeBlockCommand() is defined in deprecated/www/components/code-block-command.tsx at line 13.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free