Problem with validation in 2.0 dev?

I'm using 2.0.0-dev.11 and cannot figure out why some very basic validation fails. Short example:

import { type } from "arktype";

const nospacePattern = /^\S*$/;

const schema = type({
  name: "string",
  email: "email",
  tags: "(string>=2)[]>=3",
  score: "integer>=0",
  "date?": "Date",
  "nospace?": nospacePattern,
  extra: "string|null",
});

const data = {
  name: "Ok",
  email: "",
  tags: ["AB", "B"],
  score: -1,
  date: undefined,
  nospace: "One space",
};

const out = schema(data);

console.log("nospace matches:", nospacePattern.test(data.nospace));

if (out instanceof type.errors) {
  console.log(out.summary);
} else {
  console.log(out);
}


The output I get from running this is:

nospace matches: false
email must be a valid email (was "")        
extra must be a string or null (was missing)
date must be a Date (was undefined)


I'd expected errors for score, nospace, tags and maybe tags[1] as well. Anything very simple I'm missing?
Was this page helpful?