diff --git a/packages/example/src/routes/promise.tsx b/packages/example/src/routes/promise.tsx
index edb3e4f..9d69d62 100644
--- a/packages/example/src/routes/promise.tsx
+++ b/packages/example/src/routes/promise.tsx
@@ -1,8 +1,9 @@
import { R } from "@/reffuse"
import { HttpClient } from "@effect/platform"
+import { Text } from "@radix-ui/themes"
import { createFileRoute } from "@tanstack/react-router"
import { Console, Effect } from "effect"
-import { use, useMemo } from "react"
+import { Suspense, use, useEffect, useMemo } from "react"
export const Route = createFileRoute("/promise")({
@@ -10,19 +11,32 @@ export const Route = createFileRoute("/promise")({
})
function RouteComponent() {
+ return (
+ Loading...}>
+
+
+ )
+}
- const runPromise = R.useRunPromise()
+function AsyncComponent() {
- const promise = useMemo(() => HttpClient.HttpClient.pipe(
- Effect.flatMap(client => client.get("https://www.uuidtools.com/api/generate/v4")),
- HttpClient.withTracerPropagation(false),
- Effect.flatMap(res => res.json),
- Effect.tap(Console.log),
+ // const runPromise = R.useRunPromise()
- Effect.scoped,
- runPromise,
- ), [runPromise])
+ // const promise = useMemo(() => HttpClient.HttpClient.pipe(
+ // Effect.flatMap(client => client.get("https://www.uuidtools.com/api/generate/v4")),
+ // HttpClient.withTracerPropagation(false),
+ // Effect.flatMap(res => res.json),
+ // Effect.tap(Console.log),
+ // Effect.scoped,
+ // runPromise,
+ // ), [runPromise])
+
+ const promise = useMemo(() => new Promise((resolve => {
+ setTimeout(() => { resolve("prout") }, 500)
+ })), [])
+
+ console.log("React.use invoked with:", promise);
const value = use(promise)