preset-picker.tsx — ui Source File
Architecture documentation for preset-picker.tsx, a tsx file in the ui codebase. 4 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR ff427092_1f62_944b_dfcf_72524c5d3630["preset-picker.tsx"] 1d141819_425e_b5fd_4c8e_32f7c6a42cf2["react"] ff427092_1f62_944b_dfcf_72524c5d3630 --> 1d141819_425e_b5fd_4c8e_32f7c6a42cf2 f14cf7ca_f213_afc2_bc66_ebc0fb7d9834["config"] ff427092_1f62_944b_dfcf_72524c5d3630 --> f14cf7ca_f213_afc2_bc66_ebc0fb7d9834 c97cebd0_0d39_fa69_4337_d0c1787c0b11["picker"] ff427092_1f62_944b_dfcf_72524c5d3630 --> c97cebd0_0d39_fa69_4337_d0c1787c0b11 c27c6e95_5daf_4dd4_dc3a_add496837570["search-params"] ff427092_1f62_944b_dfcf_72524c5d3630 --> c27c6e95_5daf_4dd4_dc3a_add496837570 style ff427092_1f62_944b_dfcf_72524c5d3630 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
"use client"
import * as React from "react"
import { STYLES, type Preset } from "@/registry/config"
import {
Picker,
PickerContent,
PickerGroup,
PickerRadioGroup,
PickerRadioItem,
PickerTrigger,
} from "@/app/(create)/components/picker"
import { useDesignSystemSearchParams } from "@/app/(create)/lib/search-params"
export function PresetPicker({
presets,
isMobile,
anchorRef,
}: {
presets: readonly Preset[]
isMobile: boolean
anchorRef: React.RefObject<HTMLDivElement | null>
}) {
const [params, setParams] = useDesignSystemSearchParams()
const currentPreset = React.useMemo(() => {
return presets.find(
(preset) =>
preset.base === params.base &&
preset.style === params.style &&
preset.baseColor === params.baseColor &&
preset.theme === params.theme &&
preset.iconLibrary === params.iconLibrary &&
preset.font === params.font &&
preset.menuAccent === params.menuAccent &&
preset.menuColor === params.menuColor &&
preset.radius === params.radius
)
}, [
presets,
params.base,
params.style,
params.baseColor,
params.theme,
params.iconLibrary,
params.font,
params.menuAccent,
params.menuColor,
params.radius,
])
// Filter presets for current base only
const currentBasePresets = React.useMemo(() => {
return presets.filter((preset) => preset.base === params.base)
}, [presets, params.base])
const handlePresetChange = (value: string) => {
const preset = presets.find((p) => p.title === value)
if (!preset) {
// ... (63 more lines)
Domain
Subdomains
Functions
Dependencies
- config
- picker
- react
- search-params
Source
Frequently Asked Questions
What does preset-picker.tsx do?
preset-picker.tsx is a source file in the ui codebase, written in tsx. It belongs to the DesignEngine domain, PreviewSystem subdomain.
What functions are defined in preset-picker.tsx?
preset-picker.tsx defines 1 function(s): PresetPicker.
What does preset-picker.tsx depend on?
preset-picker.tsx imports 4 module(s): config, picker, react, search-params.
Where is preset-picker.tsx in the architecture?
preset-picker.tsx is located at apps/v4/app/(create)/components/preset-picker.tsx (domain: DesignEngine, subdomain: PreviewSystem, directory: apps/v4/app/(create)/components).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free