Open rprieto opened 8 years ago
sounds good to me~
Could also do something like:
s.object({with: properties})
Which would kind of be read in a similar way as "object with only properties", just now it would be "object with properties" (which IMHO is much more fluent).
It is very important that we run strict comparisons by default and only allow ignoring properties if explicitly asking to do so.
:+1:
:+1: for s.object({with: properties})
Strummer matchers usually have several forms:
s.array({of: matcher, min :1})
s.array(matcher)
object
is the only exception, because the canonical version iss.object(fields)
. This means the matcher can never have an other options. It would be a breaking change, but I suggest we should change tos.object({props: ...})
, which would allow for things likeWe could still have the top-level shorthand
s(someObject)
which would delegate tos.object({props: someObject})
.Note: this would remove the need for
s.objectOnly
.