diff --git a/core/shared/src/main/scala/works/iterative/core/auth/CurrentUser.scala b/core/shared/src/main/scala/works/iterative/core/auth/CurrentUser.scala new file mode 100644 index 0000000..8543d10 --- /dev/null +++ b/core/shared/src/main/scala/works/iterative/core/auth/CurrentUser.scala @@ -0,0 +1,12 @@ +package works.iterative.core.auth + +import zio.* + +/** A service that provides the current user, if any. + */ +trait CurrentUser: + def currentUser: UIO[Option[UserId]] + +object CurrentUser: + def currentUser: URIO[CurrentUser, Option[UserId]] = + ZIO.serviceWithZIO(_.currentUser)