Cleanup
Some checks failed
Lint / lint (push) Failing after 10s

This commit is contained in:
Julien Valverdé
2025-01-16 18:07:28 +01:00
parent 6526953c37
commit 3c37808131
19 changed files with 27 additions and 147 deletions

View File

@@ -1,8 +1,7 @@
import { GlobalContext } from "@/reffuse"
import { ReffuseContext } from "@thilawyn/reffuse"
import { make } from "@thilawyn/reffuse/Reffuse"
import { Reffuse, ReffuseContext } from "@thilawyn/reffuse"
import { TodosState } from "./services"
export const TodosContext = ReffuseContext.make<TodosState.TodosState>()
export const Reffuse = make(GlobalContext, TodosContext)
export const R = Reffuse.make(GlobalContext, TodosContext)

View File

@@ -1,13 +1,13 @@
import { Todo } from "@/domain"
import { Box, Button, Card, Flex, TextArea } from "@radix-ui/themes"
import { Effect, Option } from "effect"
import { Reffuse } from "../reffuse"
import { R } from "../reffuse"
import { TodosState } from "../services"
export function VNewTodo() {
const runSync = Reffuse.useRunSync()
const runSync = R.useRunSync()
const createEmptyTodo = Todo.generateUniqueID.pipe(
Effect.map(id => Todo.Todo.make({
@@ -17,8 +17,8 @@ export function VNewTodo() {
}, true))
)
const todoRef = Reffuse.useRefFromEffect(createEmptyTodo)
const [todo, setTodo] = Reffuse.useRefState(todoRef)
const todoRef = R.useRefFromEffect(createEmptyTodo)
const [todo, setTodo] = R.useRefState(todoRef)
return (

View File

@@ -3,7 +3,7 @@ import { Box, Card, Flex, IconButton, TextArea } from "@radix-ui/themes"
import { Effect } from "effect"
import { Delete } from "lucide-react"
import { useState } from "react"
import { Reffuse } from "../reffuse"
import { R } from "../reffuse"
import { TodosState } from "../services"
@@ -14,7 +14,7 @@ export interface VTodoProps {
export function VTodo({ index, todo }: VTodoProps) {
const runSync = Reffuse.useRunSync()
const runSync = R.useRunSync()
const editorMode = useState(false)

View File

@@ -1,6 +1,6 @@
import { Box, Flex } from "@radix-ui/themes"
import { Chunk, Effect, Stream } from "effect"
import { Reffuse } from "../reffuse"
import { R } from "../reffuse"
import { TodosState } from "../services"
import { VNewTodo } from "./VNewTodo"
import { VTodo } from "./VTodo"
@@ -9,14 +9,14 @@ import { VTodo } from "./VTodo"
export function VTodos() {
// Sync changes to the todos with the local storage
Reffuse.useFork(TodosState.TodosState.pipe(
R.useFork(TodosState.TodosState.pipe(
Effect.flatMap(state =>
Stream.runForEach(state.todos.changes, () => state.saveToLocalStorage)
)
))
const todosRef = Reffuse.useMemo(TodosState.TodosState.pipe(Effect.map(state => state.todos)))
const [todos] = Reffuse.useRefState(todosRef)
const todosRef = R.useMemo(TodosState.TodosState.pipe(Effect.map(state => state.todos)))
const [todos] = R.useRefState(todosRef)
return (