1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2import { Link } from "react-router";
3import { useProjects } from "../hooks/useProjects.tsx";
4import { Loading } from "./Loading.tsx";
1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2import React, { useEffect, useRef, useState } from "react";
3import { RefreshIcon } from "./icons.tsx";
4
42 }, [messages, running, currentEndpoint, customPath]);
43
44 const handleEndpointChange = (e: React.ChangeEvent<HTMLSelectElement>) => {
45 setSelectedEndpointIndex(Number(e.target.value));
46 };
47
48 const handlePathChange = (e: React.ChangeEvent<HTMLInputElement>) => {
49 setCustomPath(e.target.value);
50 };
1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2import { useEffect, useRef, useState } from "react";
3import { RefreshIcon } from "./icons.tsx";
4
1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2
3export function NotFoundRoute () {
1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2import { useState } from "react";
3import { useNavigate } from "react-router";
4import { useCreateProject } from "../hooks/useCreateProject.tsx";
5
1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2import { useEffect, useState } from "react";
3
4const formatTime = (ms: number): string => {
1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2import { useState, createContext, useContext } from "react";
3import ReactMarkdown from "react-markdown";
4
5import { Loading } from "./Loading.tsx";
124function TextPart ({ part }) {
125 return (
126 <ReactMarkdown>
127 {part.text}
128 </ReactMarkdown>
129 );
130}
300 {message.parts.map((part, i) => part.type === "text" ? (
301 <div key={i} className="user-message">
302 <ReactMarkdown>
303 {part.text}
304 </ReactMarkdown>
305 </div>
306 ) : (
1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2import { useNavigate } from "react-router";
3import { useEffect, useState } from "react";
4import { useAuth } from "../hooks/useAuth.tsx";
5
1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2
3export function Loading () {
1/** @jsxImportSource https://esm.sh/react@18.2.0?dev */
2import { Outlet } from "react-router";
3import { Header } from "./Header.tsx";
4