Refactor Hooks
All checks were successful
Lint / lint (push) Successful in 41s

This commit is contained in:
Julien Valverdé
2025-10-21 06:16:54 +02:00
parent 1f14e8be6b
commit 3695128923
11 changed files with 324 additions and 253 deletions

View File

@@ -1,15 +1,15 @@
import { Container, Flex, Heading } from "@radix-ui/themes"
import { Chunk, Console, Effect } from "effect"
import { Component, Hooks } from "effect-fc"
import { Component, Subscribable } from "effect-fc"
import { Todo } from "./Todo"
import { TodosState } from "./TodosState.service"
export class Todos extends Component.makeUntraced("Todos")(function*() {
const state = yield* TodosState
const [todos] = yield* Hooks.useSubscribables(state.ref)
const [todos] = yield* Subscribable.useSubscribables(state.ref)
yield* Hooks.useOnce(() => Effect.andThen(
yield* Component.useOnMount(() => Effect.andThen(
Console.log("Todos mounted"),
Effect.addFinalizer(() => Console.log("Todos unmounted")),
))