import type { LoaderArgs } from "@remix-run/node"; import { json } from "@remix-run/node"; import { Form, Link, NavLink, Outlet, useLoaderData } from "@remix-run/react"; import { useEffect, useState } from "react"; import { getTranslationsListItems } from "~/models/translation.server"; import { requireUserId } from "~/session.server"; export const loader = async ({ request }: LoaderArgs) => { const userId = await requireUserId(request); const translations = await getTranslationsListItems({ userId }); return json({ translations }); }; export default function TranslationsPage() { const data = useLoaderData(); const [expanded, _setExpanded] = useState(false); const setExpanded: typeof _setExpanded = (value) => { const isMobile = window.matchMedia("(max-width: 640px)").matches; if (isMobile) { _setExpanded(value); } else { _setExpanded(true); } }; useEffect(() => { const isMobile = window.matchMedia("(max-width: 640px)").matches; if (!isMobile) { _setExpanded(true); } }, []); return (

TranslAIte

Account
); }