NAME

Yukki::Types - standard types for use in Yukki

VERSION

version 0.99_01

SYNOPSIS

use Yukki::Types qw( LoginName AccessLevel );

has login_name => ( isa => LoginName );
has access_level => ( isa => AccessLevel );

DESCRIPTION

A standard type library for Yukki.

TYPES

LoginName

This is a valid login name. Login names may only contain letters and numbers, as of this writing.

AccessLevel

This is a valid access level. This includes any of the following values:

read
write
none

This is an array of hashes formatted like:

{
    label => 'Label',
    href  => '/link/to/somewhere',
    sort  => 40,
}

This is a hash of "NavigationLinks".

BaseURL

This is either an absolute URL or the words SCRIPT_NAME or REWRITE.

This is an array of hashes formatted like:

{
    label => 'Label',
    href  => '/link/to/somewhere',
}

RepositoryMap

This is a hash of Yukki::Settings::Repository objects.

PluginConfig

A plugin configuration is an array of hashes. Each hash must have at least one key named "module" defined.

PluginList

A plugin list is a loaded set of plugin objects.

COERCIONS

In addition to the types above, these coercions are provided for other types.

EmailAddress

Coerces a Str into an Email::Address.

YukkiSettings

Coerces a HashRef into this object by passing the value to the constructor.

YukkiWebSettings

Coerces a HashRef into a Yukki::Web::Settings.

YukkiSettingsAnonymous

Coerces a HashRef into this object by passing the value to the constructor.

AUTHOR

Andrew Sterling Hanenkamp <hanenkamp@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2017 by Qubling Software LLC.

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