login: (userName: string, password: string) => client.execute(
HttpClientRequest.post("/api/v1/auth/login").pipe(
HttpClientRequest.bodyUnsafeJson({
user: userName,
password
})
)
).pipe(
Effect.flatMap(
HttpClientResponse.schemaBodyJson(resultSchema)
),
Effect.flatMap((result) =>
Effect.if(
result.success, {
onTrue: () => Effect.succeed(Schema.decodeUnknownSync(loginResultSchema)(result)),
onFalse: () => Effect.fail(Schema.decodeUnknownSync(errorResultSchema)(result))
}
),
),
Effect.scoped
),
login: (userName: string, password: string) => client.execute(
HttpClientRequest.post("/api/v1/auth/login").pipe(
HttpClientRequest.bodyUnsafeJson({
user: userName,
password
})
)
).pipe(
Effect.flatMap(
HttpClientResponse.schemaBodyJson(resultSchema)
),
Effect.flatMap((result) =>
Effect.if(
result.success, {
onTrue: () => Effect.succeed(Schema.decodeUnknownSync(loginResultSchema)(result)),
onFalse: () => Effect.fail(Schema.decodeUnknownSync(errorResultSchema)(result))
}
),
),
Effect.scoped
),