Schema restrictions
Not every Effect Schema
is valid for use in Confect. Remember that an Effect Schema
looks like this:
For Schema
s used in Confect:
Type
represents the value that you'll be operating on in your code. Any TypeScript type is permitted here.Encoded
represents the value that is stored in the database or provided as an argument/returned as a value in a Convex function. This must be a valid Convex value.Context
is not currently supported. It should always benever
.
Additional caveats
No-op returns from Convex functions
Unlike with the vanilla APIs, Convex functions defined with Confect may not return undefined
or void
—use null
(Schema.Null
as the returns
validator) instead. Convex coerces undefined
/void
returns to null
anyways—this just makes that more explicit.
✅
❌
❌
Last updated