TodoRepository

This commit is contained in:
Julien Valverdé
2024-06-27 21:10:42 +02:00
parent 53757b029d
commit 91f7b90e2c

View File

@@ -5,20 +5,18 @@ import { Array, Context, Effect, Option, Ref } from "effect"
export class TodoRepository extends Context.Tag("TodoRepository")<TodoRepository, Ref.Ref<Todo[]>>() {}
export const createDefaultTodos = TodoRepository.pipe(
Effect.flatMap(repo =>
Ref.update(repo, todos =>
Array.appendAll(todos, [
new Todo({
id: "1",
title: "A test todo",
content: "Lorem ipsum",
due: Option.none(),
completed: false,
createdAt: new Date(),
updatedAt: new Date(),
})
])
)
export const createDefaultTodos = TodoRepository.pipe(Effect.flatMap(repo =>
Ref.update(repo, todos =>
Array.appendAll(todos, [
new Todo({
id: "1",
title: "A test todo",
content: "Lorem ipsum",
due: Option.none(),
completed: false,
createdAt: new Date(),
updatedAt: new Date(),
})
])
)
)
))