class UserRepository extends Effect.Service<UserRepository>()('UserRepository', {
effect: Effect.gen(function*() {
const getById = Effect.fn('UserRepository.getById')(function*() {
yield* Effect.logInfo('getById from user repo')
return 'foobar'
})
return {
getById
}
})
}) {}
class UserService extends Effect.Service<UserService>()('UserService', {
dependencies: [UserRepository.Default],
effect: Effect.gen(function*() {
const userRepository = yield* UserRepository
const getById = userRepository.getById // is it ok or can it create issues in some cases?
return {
getById
}
})
}) {}
class UserRepository extends Effect.Service<UserRepository>()('UserRepository', {
effect: Effect.gen(function*() {
const getById = Effect.fn('UserRepository.getById')(function*() {
yield* Effect.logInfo('getById from user repo')
return 'foobar'
})
return {
getById
}
})
}) {}
class UserService extends Effect.Service<UserService>()('UserService', {
dependencies: [UserRepository.Default],
effect: Effect.gen(function*() {
const userRepository = yield* UserRepository
const getById = userRepository.getById // is it ok or can it create issues in some cases?
return {
getById
}
})
}) {}