import { useState } from "react"; import { createBrowserRouter, RouterProvider } from "react-router-dom"; import { collection, doc, writeBatch } from "firebase/firestore"; import { AppLayout } from "@/components/AppLayout"; import { Button } from "@/components/ui/button"; import { GroupsProvider } from "@/context/GroupsContext"; import { CONNECTORS_SEED } from "@/data/connectorsSeed"; import { db } from "@/lib/firebase"; import { CompartmentPage } from "@/pages/CompartmentPage"; import { GroupPage } from "@/pages/GroupPage"; import { HomePage } from "@/pages/Home"; import { PlaceholderPage } from "@/pages/PlaceholderPage"; import { NewPage } from "@/pages/NewPage"; const router = createBrowserRouter([ { path: "/", element: , children: [ { index: true, element: }, { path: "groups/:groupId", element: }, { path: "groups/:groupId/compartments/:compartmentId", element: , }, { path: "search", element: }, { path: "new", element: }, { path: "account", element: }, { path: "settings", element: }, ], }, ]); const CONNECTORS_COLLECTION = "connectors"; export function ConnectorsSeedControl() { const [busy, setBusy] = useState(false); const [notice, setNotice] = useState(""); async function insertConnectors() { if ( !window.confirm( `Insert ${CONNECTORS_SEED.length} new documents into Firestore collection "${CONNECTORS_COLLECTION}"? Each run creates new document IDs (duplicates if you run again).`, ) ) { return; } setBusy(true); setNotice(""); try { const col = collection(db, CONNECTORS_COLLECTION); const batch = writeBatch(db); for (const row of CONNECTORS_SEED) { batch.set(doc(col), { ...row }); } await batch.commit(); setNotice(`Inserted ${CONNECTORS_SEED.length} rows.`); } catch (e) { setNotice( e instanceof Error ? e.message : "Failed to write to Firestore.", ); } finally { setBusy(false); } } return (

Local only: push rows from{" "} connectorsSeed.ts into{" "} {CONNECTORS_COLLECTION}.

{notice ? (

{notice}

) : null}
); } function App() { return ( {/* {import.meta.env.DEV ? : null} */} ); } export default App;