CAD/client/src/components/DbView.tsx

31 lines
961 B
TypeScript

import { useState } from "react";
import { db } from "../backend/db";
import { PrimitiveView } from "./PrimitiveView";
import type { Primitive } from "../types";
export const DbView = function () {
const [selectedPrimitiveId, setSelectedPrimitiveId] = useState<string>('');
let selectedPrimitives: Primitive[] = [];
if (selectedPrimitiveId) {
const primitive = db.primitiveById(selectedPrimitiveId);
if (primitive)
selectedPrimitives = [primitive];
}
else
selectedPrimitives = db.solids;
return (
<div id="blob-view">
<div>
<input type="text" placeholder="Search..." value={selectedPrimitiveId} onChange={(e) => setSelectedPrimitiveId(e.target.value)} />
</div>
<div>
{
selectedPrimitives.map(p => <PrimitiveView key={p.id} primitive={p} />)
}
</div>
</div>
)
}