import { q } from "@thorium/context/AppContext"; import { toast } from "@thorium/context/ToastContext"; import { usePrompt } from "@thorium/ui/AlertDialog"; import Button from "@thorium/ui/Button"; import { useMenubar } from "@thorium/ui/Menubar"; import SearchableList from "@thorium/ui/SearchableList"; import { Fragment } from "react"; import { useNavigate, Outlet } from "react-router"; import type { Route } from "./+types/layout"; export default function TextPatternList({ params: { pluginId, textPatternId }, }: Route.ComponentProps) { useMenubar({ backTo: `/config/${pluginId}/list` }); const navigate = useNavigate(); const prompt = usePrompt(); const [data] = q.plugin.textPattern.all.useNetRequest({ pluginId }); const textPattern = data.find((d) => d.name === textPatternId); return (

Text Pattern Config

({ id: d.name, name: d.name, description: d.description, category: d.category, }))} searchKeys={["name"]} selectedItem={textPatternId || null} setSelectedItem={({ id }) => navigate(`${id}`)} renderItem={(c) => (
{c.name}
)} />
); }