import { Title } from "./Primitives/Title"; import { colorForItemAtPath } from "~/utilities/colors"; import { IconComponent } from "~/useColumnView"; import { useJson } from "../hooks/useJson"; import { memo, useMemo } from "react"; import { useJsonDoc } from "~/hooks/useJsonDoc"; export type ColumnProps = { id: string; title: string; icon?: IconComponent; hasHighlightedElement: boolean; children: React.ReactNode; }; function ColumnElement(column: ColumnProps) { const { id, title, children } = column; const [json] = useJson(); const { minimal } = useJsonDoc(); const iconColor = useMemo(() => colorForItemAtPath(id, json), [id, json]); return (
{column.icon && } {title}
{children}
); } export const Column = memo(ColumnElement);