From 26254220e4cd274ed2ffc171908076b332b2b35d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Tue, 9 Jul 2024 06:00:49 +0200 Subject: [PATCH] PrimeReact setup --- bun.lockb | Bin 261743 -> 265078 bytes packages/webui/package.json | 3 ++- packages/webui/src/App.tsx | 12 ++++++---- packages/webui/src/todo/VTodo.tsx | 7 +++--- packages/webui/src/todo/VTodos.tsx | 2 +- .../webui/src/todo/VTodosSubscription.tsx | 21 ++++-------------- 6 files changed, 19 insertions(+), 26 deletions(-) diff --git a/bun.lockb b/bun.lockb index 207ac14ec47da18c3a67fc510b004ef279e5b7b6..690ee21edbc42c4c5140b1313f60ef07de51a2d2 100755 GIT binary patch delta 29953 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 delta 28320 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 P^b+&RoU-@KLu>sX&VoUA diff --git a/packages/webui/package.json b/packages/webui/package.json index 6208941..446d49b 100644 --- a/packages/webui/package.json +++ b/packages/webui/package.json @@ -12,17 +12,18 @@ "@effect/schema": "^0.68.17", "@tanstack/react-query": "4", "@thilawyn/thilalib": "^0.1.5", + "@todo-tests/common": "workspace:*", "@trpc/client": "^10.45.2", "@trpc/react-query": "^10.45.2", "effect": "^3.4.7", "mobx": "^6.13.0", "mobx-react-lite": "^4.0.7", + "primereact": "^10.7.0", "react": "^18.3.1", "react-dom": "^18.3.1", "ws": "^8.18.0" }, "devDependencies": { - "@todo-tests/common": "workspace:*", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "@typescript-eslint/eslint-plugin": "^7.15.0", diff --git a/packages/webui/src/App.tsx b/packages/webui/src/App.tsx index b1f5dcd..89b745e 100644 --- a/packages/webui/src/App.tsx +++ b/packages/webui/src/App.tsx @@ -1,3 +1,5 @@ +import { PrimeReactProvider } from "primereact/api" +import "primereact/resources/themes/lara-light-cyan/theme.css" import "./index.css" import { VTodosSubscription } from "./todo/VTodosSubscription" import { TRPCClientProvider } from "./trpc/TRPCClientProvider" @@ -6,10 +8,12 @@ import { TRPCClientProvider } from "./trpc/TRPCClientProvider" export function App() { return ( - - {/* */} - - + + + {/* */} + + + ) } diff --git a/packages/webui/src/todo/VTodo.tsx b/packages/webui/src/todo/VTodo.tsx index f88c8fc..f0e0217 100644 --- a/packages/webui/src/todo/VTodo.tsx +++ b/packages/webui/src/todo/VTodo.tsx @@ -1,4 +1,5 @@ import { observer } from "mobx-react-lite" +import { Card } from "primereact/card" import { Todo } from "../data" @@ -10,9 +11,9 @@ export interface VTodoProps { export const VTodo = observer(({ todo }: VTodoProps) => { return ( -
-

{todo.content}

-
+ +

{todo.content}

+
) }) diff --git a/packages/webui/src/todo/VTodos.tsx b/packages/webui/src/todo/VTodos.tsx index a4f98e1..bed7c34 100644 --- a/packages/webui/src/todo/VTodos.tsx +++ b/packages/webui/src/todo/VTodos.tsx @@ -14,7 +14,7 @@ export interface VTodosProps { * Shows a vertical list of todos */ export const VTodos = observer(({ todos }: VTodosProps) => ( -
+
{todos.map(todo => ( { const [todos, setTodos] = useState>(observable.array()) trpc.todos.changes.useSubscription(undefined, { - onData(data) { + onData: data => { setTodos(decodeTodos(data)) } }) - return ( -
- {todos.map(todo => ( - todo.order, - })} - - todo={todo} - /> - ))} -
- ) + return })