"use client"; import { useVisualization } from "./visualization-context"; import { ArrayVisualizer } from "./visualizers/array-visualizer"; import { HistogramVisualizer } from "./visualizers/histogram-visualizer"; import { LinkedListVisualizer } from "./visualizers/linkedlist-visualizer"; import { StackVisualizer } from "./visualizers/stack-visualizer"; import { TreeVisualizer } from "./visualizers/tree-visualizer"; import type { DataStructureState } from "@/types/visualization"; interface StructureVisualizerProps { name: string; data: DataStructureState; } function StructureVisualizer({ name, data }: StructureVisualizerProps) { switch (data.type) { case "array": return ; case "histogram": return ; case "linkedlist": return ; case "stack": return ; case "tree": return ; case "graph": return (
Graph visualization coming soon
); case "matrix": return (
Matrix visualization coming soon
); default: return (
Unknown data structure type
); } } export function StructureRenderer() { const { currentStep } = useVisualization(); if (!currentStep?.structures) { return (
No data structures to display
); } const structureEntries = Object.entries(currentStep.structures); if (structureEntries.length === 0) { return (
No data structures to display
); } return (
{structureEntries.map(([name, data]) => ( ))}
); }