From 74cf37e3a3df2853a8ddbde45c3b3d842a2b1427 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Tue, 4 Mar 2025 01:35:52 +0100 Subject: [PATCH] Query example --- packages/example/src/main.tsx | 4 ++-- packages/example/src/routes/__root.tsx | 1 + packages/example/src/routes/query.tsx | 7 ++++--- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/example/src/main.tsx b/packages/example/src/main.tsx index fc8645f..8fe1e6d 100644 --- a/packages/example/src/main.tsx +++ b/packages/example/src/main.tsx @@ -26,11 +26,11 @@ declare module "@tanstack/react-router" { createRoot(document.getElementById("root")!).render( - // + - // + ) diff --git a/packages/example/src/routes/__root.tsx b/packages/example/src/routes/__root.tsx index e5a9b44..a02f201 100644 --- a/packages/example/src/routes/__root.tsx +++ b/packages/example/src/routes/__root.tsx @@ -20,6 +20,7 @@ function Root() { Count Tests Promise + Query Blank diff --git a/packages/example/src/routes/query.tsx b/packages/example/src/routes/query.tsx index efa1d87..8a2c328 100644 --- a/packages/example/src/routes/query.tsx +++ b/packages/example/src/routes/query.tsx @@ -3,7 +3,7 @@ import { HttpClient } from "@effect/platform" import { Button, Container, Flex, Text } from "@radix-ui/themes" import { createFileRoute } from "@tanstack/react-router" import * as AsyncData from "@typed/async-data" -import { Effect, Schema } from "effect" +import { Console, Effect, Schema } from "effect" export const Route = createFileRoute("/query")({ @@ -17,11 +17,12 @@ function RouteComponent() { const runSync = R.useRunSync() const { state, refresh } = R.useQuery({ - effect: () => HttpClient.get("https://www.uuidtools.com/api/generate/v4").pipe( + effect: () => Console.log("Querying...").pipe( + Effect.andThen(Effect.sleep("500 millis")), + Effect.andThen(HttpClient.get("https://www.uuidtools.com/api/generate/v4")), HttpClient.withTracerPropagation(false), Effect.flatMap(res => res.json), Effect.flatMap(Schema.decodeUnknown(Result)), - Effect.delay("500 millis"), Effect.scoped, ), deps: [],