From 3cd3f0752a9e25cb7804d3cbf723d05111111a0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Thu, 27 Jun 2024 17:20:01 +0200 Subject: [PATCH] TodoRepository --- packages/server/src/TodoRepository.ts | 5 +++++ packages/server/src/Todos.ts | 5 ----- packages/server/src/index.ts | 12 ++++++------ 3 files changed, 11 insertions(+), 11 deletions(-) create mode 100644 packages/server/src/TodoRepository.ts delete mode 100644 packages/server/src/Todos.ts diff --git a/packages/server/src/TodoRepository.ts b/packages/server/src/TodoRepository.ts new file mode 100644 index 0000000..430fb30 --- /dev/null +++ b/packages/server/src/TodoRepository.ts @@ -0,0 +1,5 @@ +import type { Todo } from "@todo-tests/common/data" +import { Context, Ref } from "effect" + + +export class TodoRepository extends Context.Tag("TodoRepository")>() {} diff --git a/packages/server/src/Todos.ts b/packages/server/src/Todos.ts deleted file mode 100644 index 9da8fc5..0000000 --- a/packages/server/src/Todos.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type { Todo } from "@todo-tests/common/data" -import { Context, Ref } from "effect" - - -export class Todos extends Context.Tag("Todos")>() {} diff --git a/packages/server/src/index.ts b/packages/server/src/index.ts index f76c65a..397ff32 100644 --- a/packages/server/src/index.ts +++ b/packages/server/src/index.ts @@ -1,12 +1,12 @@ import { BunRuntime } from "@effect/platform-bun" import { Todo } from "@todo-tests/common/data" import { Array, Effect, Option, Ref } from "effect" -import { Todos } from "./Todos" +import { TodoRepository } from "./TodoRepository" -const createDefaultTodos = Todos.pipe( - Effect.flatMap(ref => - Ref.update(ref, todos => +const createDefaultTodos = TodoRepository.pipe( + Effect.flatMap(repo => + Ref.update(repo, todos => Array.appendAll(todos, [ new Todo({ id: "1", @@ -25,12 +25,12 @@ const createDefaultTodos = Todos.pipe( const main = Effect.gen(function*() { yield* createDefaultTodos - const todos = yield* Todos + const todos = yield* TodoRepository console.log(yield* Ref.get(todos)) }) const runnableMain = main.pipe( - Effect.provideServiceEffect(Todos, Ref.make(Array.empty())) + Effect.provideServiceEffect(TodoRepository, Ref.make(Array.empty())) ) BunRuntime.runMain(runnableMain)