Home / Function/ SearchResults() — ui Function Reference

SearchResults() — ui Function Reference

Architecture documentation for the SearchResults() function in command-menu.tsx from the ui codebase.

Entity Profile

Dependency Diagram

graph TD
  1bfb957b_a671_c779_170b_cec7bc3a2861["SearchResults()"]
  f230e63c_c621_4fb0_5506_e74b21915cf5["command-menu.tsx"]
  1bfb957b_a671_c779_170b_cec7bc3a2861 -->|defined in| f230e63c_c621_4fb0_5506_e74b21915cf5
  style 1bfb957b_a671_c779_170b_cec7bc3a2861 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

apps/v4/components/command-menu.tsx lines 520–580

function SearchResults({
  setOpen,
  query,
  search,
}: {
  setOpen: (open: boolean) => void
  query: Query
  search: string
}) {
  const router = useRouter()

  const uniqueResults = React.useMemo(() => {
    if (!query.data || !Array.isArray(query.data)) {
      return []
    }

    return query.data.filter(
      (item, index, self) =>
        !(
          item.type === "text" && item.content.trim().split(/\s+/).length <= 1
        ) && index === self.findIndex((t) => t.content === item.content)
    )
  }, [query.data])

  if (!search.trim()) {
    return null
  }

  if (!query.data || query.data === "empty") {
    return null
  }

  if (query.data && uniqueResults.length === 0) {
    return null
  }

  return (
    <CommandGroup
      className="!px-0 [&_[cmdk-group-heading]]:scroll-mt-16 [&_[cmdk-group-heading]]:!p-3 [&_[cmdk-group-heading]]:!pb-1"
      heading="Search Results"
    >
      {uniqueResults.map((item) => {
        return (
          <CommandItem
            key={item.id}
            data-type={item.type}
            onSelect={() => {
              router.push(item.url)
              setOpen(false)
            }}
            className="data-[selected=true]:border-input data-[selected=true]:bg-input/50 h-9 rounded-md border border-transparent !px-3 font-normal"
            keywords={[item.content]}
            value={`${item.content} ${item.type}`}
          >
            <div className="line-clamp-1 text-sm">{item.content}</div>
          </CommandItem>
        )
      })}
    </CommandGroup>
  )
}

Subdomains

Frequently Asked Questions

What does SearchResults() do?
SearchResults() is a function in the ui codebase, defined in apps/v4/components/command-menu.tsx.
Where is SearchResults() defined?
SearchResults() is defined in apps/v4/components/command-menu.tsx at line 520.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free