export class DbTag extends Context.Tag("DbTag")<DbTag, EffectKysely<DbTables>>() {}
const make = Effect.gen(function* AppRepositoryGen(_) {
const db = yield* _(DbTag)
const InsertUser = yield* SqlResolver.ordered("InsertUser", {
Request: InsertUserSchema,
Result: Schema.Void,
// here instead of calling sql`my query`, I call kysely db
execute: (user) => Effect.promise(() =>
db.insertInto("user").values(user).executeTakeFirstOrThrow())
})
...
export class DbTag extends Context.Tag("DbTag")<DbTag, EffectKysely<DbTables>>() {}
const make = Effect.gen(function* AppRepositoryGen(_) {
const db = yield* _(DbTag)
const InsertUser = yield* SqlResolver.ordered("InsertUser", {
Request: InsertUserSchema,
Result: Schema.Void,
// here instead of calling sql`my query`, I call kysely db
execute: (user) => Effect.promise(() =>
db.insertInto("user").values(user).executeTakeFirstOrThrow())
})
...