KeySchemaclass

new KeySchema({ one = "key", title = "Key", min = 1, max = 32, ...options }: StringSchemaOptions)
ParamType
optionsStringSchemaOptions
Options for StringSchema. required
    .valuestring
Default string value used when the input is undefined. Defaults to "" readonly
    .minnumber
Minimum allowed character length. Defaults to 0 readonly
    .maxnumber
Maximum allowed character length. Defaults to Number.POSITIVE_INFINITY readonly
    .rowsnumber
Number of rows; more than one enables multiline sanitization. Defaults to 1 readonly
    .matchRegExp
Regular expression the sanitized string must match. readonly
    .case"upper"
"lower"
Force the result to "upper" or "lower" case. readonly
    .inputStringInputType
HTML <input /> type="" hint for downstream UIs. Defaults to "text" readonly
Return
KeySchema
Schema that validates a database key string, stripping any non-alphanumeric characters.

Schema that validates a database key string, stripping any non-alphanumeric characters.

  • Characters that are not a-z, A-Z, 0-9 are removed.
  • Default minimum key length is 1 character.
  • Default maximum key length is 32 characters.
  • 32 characters is enough for UUIDs, as the 4 - hyphens are removed.

Examples

const schema = new KeySchema({});
 schema.validate("a1b2-c3d4"); // "a1b2c3d4"