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