Merge pull request #1580 from eikek/fix/mail-address-input

Fix/mail address input
This commit is contained in:
mergify[bot]
2022-06-04 17:39:55 +00:00
committed by GitHub
2 changed files with 24 additions and 8 deletions

View File

@ -6,7 +6,7 @@
package docspell.restserver.routes
import cats.data.NonEmptyList
import cats.data.{EitherT, NonEmptyList}
import cats.effect._
import cats.implicits._
@ -64,17 +64,29 @@ object NotificationRoutes extends NonEmptyListSupport {
case req @ POST -> Root =>
for {
input <- req.as[NotificationChannel]
ch <- Sync[F].pure(NotificationChannel.convert(input)).rethrow
res <- backend.notification.createChannel(ch, user.account)
resp <- Ok(Conversions.basicResult(res, "Channel created"))
ch <- Sync[F].pure(NotificationChannel.convert(input))
resp <- EitherT
.fromEither[F](ch)
.semiflatMap { c =>
backend.notification
.createChannel(c, user.account)
.map(res => Conversions.basicResult(res, "Channel created"))
}
.foldF(ex => BadRequest(BasicResult(false, ex.getMessage)), Ok(_))
} yield resp
case req @ PUT -> Root =>
for {
input <- req.as[NotificationChannel]
ch <- Sync[F].pure(NotificationChannel.convert(input)).rethrow
res <- backend.notification.updateChannel(ch, user.account)
resp <- Ok(Conversions.basicResult(res, "Channel created"))
ch <- Sync[F].pure(NotificationChannel.convert(input))
resp <- EitherT
.fromEither[F](ch)
.semiflatMap { c =>
backend.notification
.updateChannel(c, user.account)
.map(res => Conversions.basicResult(res, "Channel created"))
}
.foldF(ex => BadRequest(BasicResult(false, ex.getMessage)), Ok(_))
} yield resp
}
}

View File

@ -185,7 +185,11 @@ view2 cfg values model =
, placeholder cfg.placeholder
, onKeyUp KeyPress
, onInput SetInput
, onBlur (KeyPress 13)
, if List.isEmpty model.candidates then
onBlur (KeyPress 13)
else
class ""
, class "inline-flex w-24 border-0 px-0 focus:ring-0 h-6 text-sm"
, class "placeholder-gray-400 dark:text-slate-200 dark:bg-slate-800 dark:border-slate-500"
]