Strickland
  • Readme
  • Introduction
    • Validators
    • Validation
    • Validation Results
  • Extensibility
    • Validator Factories
    • Validation Context
    • Validation Result Props
    • Extensibility Pattern
    • formatResult
  • Built-In Validators
    • required
    • compare
    • min
    • max
    • range
    • minLength
    • maxLength
    • length
  • Composition
    • Arrays of Validators
      • every
      • all
      • some
    • Validating Array Elements
      • arrayElements
    • Validating Objects
      • objectProps
      • Advanced Object Validation
      • Nested Objects
      • Arrays of Objects
    • Composition Conventions
    • Composition and formatResult
  • Async Validation
    • Resolving Async Validation
    • Deferred Async Validation
    • Async Validator Arrays and Objects
    • Two-Stage Sync/Async Validation
    • Race Conditions
    • Automatic Race Condition Handling
    • Async Validation and formatResult
  • Form Validation
    • form
    • Async Form Validation
    • validateFields
    • emptyResults
    • updateFieldResults
  • Inspiration
  • Design Goals
  • Wrap-Up
  • Change Log
  • NPM
  • GitHub
Powered by GitBook
On this page
  • Named Props
  • Parameters
  • Usage

Was this helpful?

  1. Built-In Validators

max

PreviousminNextrange

Last updated 4 years ago

Was this helpful?

The max validator checks that a numeric value is at most the maximum value provided.

If the value being validated is null, false, an empty string, or another falsy value other than 0, then the result will be valid. This respects the rule of thumb described in the notes for the validator.

Named Props

  • max: The maximum value compared against

Parameters

The max validator supports three parameter signatures:

  1. max(value) where the value is used as the max named prop

  2. max(propsObject) where the props object contains a max named prop

  3. max(propsFunction) where the props function returns a props object with a max named prop

Usage

import validate, {max} from 'strickland';

// As a value parameter
const maxOf3 = max(3);

// As a named prop
const maxOf2 = max({
    max: 2,
    message: 'Must be at most 2'
});

// As a function that resolves to have the named prop
const maxValidator = max((context) => ({
    max: context.max,
    message: `Must be at most ${context.max}`
}));
required