HTML::FormHandler::Types(3p)

NAME
HTML::FormHandler::Types - Moose type constraints

VERSION
version 0.40068

SYNOPSIS
These types are provided by MooseX::Types. These types must not be quoted when they are used:

  has 'posint' => ( is => 'rw', isa => PositiveInt);
  has_field 'email' => ( apply => [ Email ] );

Types declared using Moose::Util::TypeConstraints, on the other hand, must be quoted:

  has_field 'text_both' => ( apply => [ PositiveInt, 'GreaterThan10' ] );

To import these types into your forms, you must either specify (':all') or list the types you want to use:

   use HTML::FormHandler::Types (':all');

or:

   use HTML::FormHandler::Types ('Email', 'PositiveInt');

DESCRIPTION
It would be possible to import the MooseX types (Common, etc), but for now we'll just re-implement them here in order to be able to change the messages and keep control of what types we provide.

From MooseX::Types::Common:

  'PositiveNum', 'PositiveInt', 'NegativeNum', 'NegativeInt', 'SingleDigit',
  'SimpleStr', 'NonEmptySimpleStr', 'Password', 'StrongPassword', 'NonEmptyStr',

Type Constraints
These types check the value and issue an error message.

Email
    Uses Email::Valid

State
    Checks that the state is in a list of two uppercase letters.

Zip
IPAddress
    Must be a valid IPv4 address.

NoSpaces
    No spaces in string allowed.

WordChars
    Must be made up of letters, digits, and underscores.

NotAllDigits
    Might be useful for passwords.

Printable
    Must not contain non-printable characters.

SingleWord
    Contains a single word.

  Type Coercions
These types will transform the value without an error message;

Collapse
    Replaces multiple spaces with a single space

Upper
    Makes the string all upper case

Lower
    Makes the string all lower case

Trim
    Trims the string of starting and ending spaces

AUTHOR
FormHandler Contributors - see HTML::FormHandler

COPYRIGHT AND LICENSE
This software is copyright (c) 2017 by Gerda Shank.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.