0.1.2 (#4)
Some checks failed
Publish / publish (push) Failing after 13s
Lint / lint (push) Successful in 12s

Co-authored-by: Julien Valverdé <julien.valverde@mailo.com>
Reviewed-on: https://gitea:3000/Thilawyn/reffuse/pulls/4
This commit was merged in pull request #4.
This commit is contained in:
Julien Valverdé
2025-02-26 19:27:38 +01:00
parent 8a9f7ad4c2
commit 08f0610752
35 changed files with 1716 additions and 519 deletions

View File

@@ -1,6 +1,6 @@
import { R } from "@/reffuse"
import { Button } from "@radix-ui/themes"
import { createFileRoute } from "@tanstack/react-router"
import { GetRandomValues, makeUuid4 } from "@typed/id"
import { Console, Effect } from "effect"
@@ -9,15 +9,23 @@ export const Route = createFileRoute("/tests")({
})
function RouteComponent() {
// R.useMemo(Effect.addFinalizer(() => Console.log("Cleanup!")).pipe(
// Effect.map(() => "test")
// ))
// const value = R.useMemoScoped(Effect.addFinalizer(() => Console.log("cleanup")).pipe(
// Effect.andThen(makeUuid4),
// Effect.provide(GetRandomValues.CryptoRandom),
// ), [])
// console.log(value)
const value = R.useMemoScoped(Effect.addFinalizer(() => Console.log("cleanup")).pipe(
Effect.andThen(makeUuid4),
Effect.provide(GetRandomValues.CryptoRandom),
R.useFork(() => Effect.addFinalizer(() => Console.log("cleanup")).pipe(
Effect.andThen(Console.log("ouient")),
Effect.delay("1 second"),
), [])
console.log(value)
return <div>Hello "/tests"!</div>
const logValue = R.useCallbackSync(Effect.fn(function*(value: string) {
yield* Effect.log(value)
}), [])
return (
<Button onClick={() => logValue("test")}>Log value</Button>
)
}