Fix
All checks were successful
Lint / lint (push) Successful in 11s

This commit is contained in:
Julien Valverdé
2025-08-19 03:01:51 +02:00
parent d7128c963f
commit 36c8a01a5d
2 changed files with 3 additions and 1 deletions

View File

@@ -41,6 +41,7 @@ export const useInput: {
internalRef.pipe( internalRef.pipe(
Effect.andThen(Schema.decode(options.schema)), Effect.andThen(Schema.decode(options.schema)),
Effect.andThen(decodedInternalValue => !(options.equivalence ?? Equal.equals)(upstreamValue, decodedInternalValue)), Effect.andThen(decodedInternalValue => !(options.equivalence ?? Equal.equals)(upstreamValue, decodedInternalValue)),
Effect.catchTag("ParseError", () => Effect.succeed(false)),
), ),
) )
), ),

View File

@@ -49,7 +49,7 @@ export const useOptionalInput: {
yield* useFork(() => Effect.all([ yield* useFork(() => Effect.all([
// Sync the upstream state with the internal state // Sync the upstream state with the internal state
// Only mutate the internal state if the upstream encoded value is actually different. This avoids infinite re-render loops. // Only mutate the internal state if the upstream value is actually different. This avoids infinite re-render loops.
Stream.runForEach(options.ref.changes, Option.match({ Stream.runForEach(options.ref.changes, Option.match({
onSome: upstreamValue => Effect.whenEffect( onSome: upstreamValue => Effect.whenEffect(
Effect.andThen( Effect.andThen(
@@ -59,6 +59,7 @@ export const useOptionalInput: {
internalRef.pipe( internalRef.pipe(
Effect.andThen(Schema.decode(options.schema)), Effect.andThen(Schema.decode(options.schema)),
Effect.andThen(decodedInternalValue => !(options.equivalence ?? Equal.equals)(upstreamValue, decodedInternalValue)), Effect.andThen(decodedInternalValue => !(options.equivalence ?? Equal.equals)(upstreamValue, decodedInternalValue)),
Effect.catchTag("ParseError", () => Effect.succeed(false)),
), ),
), ),