code-block-wrapper.tsx — ui Source File
Architecture documentation for code-block-wrapper.tsx, a tsx file in the ui codebase. 4 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 07a31757_1e77_19bc_f032_a1b218a23f8e["code-block-wrapper.tsx"] 1d141819_425e_b5fd_4c8e_32f7c6a42cf2["react"] 07a31757_1e77_19bc_f032_a1b218a23f8e --> 1d141819_425e_b5fd_4c8e_32f7c6a42cf2 79081a1f_55a3_945a_fb8c_d53d6d3eab81["utils"] 07a31757_1e77_19bc_f032_a1b218a23f8e --> 79081a1f_55a3_945a_fb8c_d53d6d3eab81 aa2f3ec6_f291_3763_88ec_65a3f5ad5939["button"] 07a31757_1e77_19bc_f032_a1b218a23f8e --> aa2f3ec6_f291_3763_88ec_65a3f5ad5939 3569d809_9117_156a_db42_ebbe426ff35a["collapsible"] 07a31757_1e77_19bc_f032_a1b218a23f8e --> 3569d809_9117_156a_db42_ebbe426ff35a style 07a31757_1e77_19bc_f032_a1b218a23f8e fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
"use client"
import * as React from "react"
import { cn } from "@/lib/utils"
import { Button } from "@/registry/new-york/ui/button"
import {
Collapsible,
CollapsibleContent,
CollapsibleTrigger,
} from "@/registry/new-york/ui/collapsible"
interface CodeBlockProps extends React.HTMLAttributes<HTMLDivElement> {
expandButtonTitle?: string
}
export function CodeBlockWrapper({
expandButtonTitle = "View Code",
className,
children,
...props
}: CodeBlockProps) {
const [isOpened, setIsOpened] = React.useState(false)
return (
<Collapsible open={isOpened} onOpenChange={setIsOpened}>
<div className={cn("relative overflow-hidden", className)} {...props}>
<CollapsibleContent
forceMount
className={cn("overflow-hidden", !isOpened && "max-h-32")}
>
<div
className={cn(
"[&_pre]:my-0 [&_pre]:max-h-[650px] [&_pre]:pb-[100px]",
!isOpened ? "[&_pre]:overflow-hidden" : "[&_pre]:overflow-auto]"
)}
>
{children}
</div>
</CollapsibleContent>
<div
className={cn(
"absolute flex items-center justify-center bg-gradient-to-b from-zinc-700/30 to-zinc-950/90 p-2",
isOpened ? "inset-x-0 bottom-0 h-12" : "inset-0"
)}
>
<CollapsibleTrigger asChild>
<Button variant="secondary" className="h-8 text-xs">
{isOpened ? "Collapse" : expandButtonTitle}
</Button>
</CollapsibleTrigger>
</div>
</div>
</Collapsible>
)
}
Domain
Subdomains
Functions
Types
Dependencies
- button
- collapsible
- react
- utils
Source
Frequently Asked Questions
What does code-block-wrapper.tsx do?
code-block-wrapper.tsx is a source file in the ui codebase, written in tsx. It belongs to the ComponentRegistry domain, UIPrimitives subdomain.
What functions are defined in code-block-wrapper.tsx?
code-block-wrapper.tsx defines 1 function(s): CodeBlockWrapper.
What does code-block-wrapper.tsx depend on?
code-block-wrapper.tsx imports 4 module(s): button, collapsible, react, utils.
Where is code-block-wrapper.tsx in the architecture?
code-block-wrapper.tsx is located at deprecated/www/components/code-block-wrapper.tsx (domain: ComponentRegistry, subdomain: UIPrimitives, directory: deprecated/www/components).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free