From f0065e15276c26303c1299d74df2c68a8f3bf204 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Thu, 27 Jun 2024 19:03:01 +0200 Subject: [PATCH] TodoRepository --- packages/server/src/TodoRepository.ts | 22 ++++++++++++++++++++-- packages/server/src/index.ts | 23 ++--------------------- 2 files changed, 22 insertions(+), 23 deletions(-) diff --git a/packages/server/src/TodoRepository.ts b/packages/server/src/TodoRepository.ts index 430fb30..2799294 100644 --- a/packages/server/src/TodoRepository.ts +++ b/packages/server/src/TodoRepository.ts @@ -1,5 +1,23 @@ -import type { Todo } from "@todo-tests/common/data" -import { Context, Ref } from "effect" +import { Todo } from "@todo-tests/common/data" +import { Array, Context, Effect, Option, Ref } from "effect" export class TodoRepository extends Context.Tag("TodoRepository")>() {} + + +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(), + createdAt: new Date(), + updatedAt: new Date(), + }) + ]) + ) + ) +) diff --git a/packages/server/src/index.ts b/packages/server/src/index.ts index 397ff32..08db479 100644 --- a/packages/server/src/index.ts +++ b/packages/server/src/index.ts @@ -1,25 +1,6 @@ import { BunRuntime } from "@effect/platform-bun" -import { Todo } from "@todo-tests/common/data" -import { Array, Effect, Option, Ref } from "effect" -import { TodoRepository } from "./TodoRepository" - - -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(), - createdAt: new Date(), - updatedAt: new Date(), - }) - ]) - ) - ) -) +import { Array, Effect, Ref } from "effect" +import { TodoRepository, createDefaultTodos } from "./TodoRepository" const main = Effect.gen(function*() {