The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Data::InfoBox::Item - Data object for info box item.

SYNOPSIS

 use Data::InfoBox;

 my $obj = Data::InfoBox::Item->new(%params);
 my $icon_url = $obj->icon_url;
 my $icon_char = $obj->icon_char;
 my $text = $obj->text;
 my $url = $obj->url;

METHODS

new

 my $obj = Data::InfoBox->new(%params);

Constructor.

  • icon_url

    Icon URL.

    It's optional.

  • icon_char

    Icon character. Could be UTF-8 character. Only one character.

    It's optional.

  • text

    Item text. Must me a Data::Text::Simple object.

    It's required.

  • url

    URL of item.

    It's optional.

Returns instance of object.

icon_url

 my $icon_url = $obj->icon_url;

Get icon URL.

Returns string.

icon_char

 my $icon_char = $obj->icon_char;

Get icon character.

Returns string.

text

 my $text = $obj->text;

Get text of item.

Returns Data::Text::Simple object.

url

 my $url = $obj->url;

Get URL of item.

Returns string.

ERRORS

 new():
         From Mo::utils:
                 Parameter 'icon_char' has length greater than '1'.
                         Value: %s
                 Parameter 'text' is required.
                 Parameter 'text' must be a 'Data::Text::Simple' object.
                         Value: %s
                         Reference: %s
                 
         From Mo::utils::URI:
                 Parameter 'icon_url' doesn't contain valid location.
                         Value: %s
                 Parameter 'url' doesn't contain valid location.
                         Value: %s

EXAMPLE

 use strict;
 use warnings;

 use Data::InfoBox::Item;
 use Data::Text::Simple;

 my $obj = Data::InfoBox::Item->new(
         'icon_url' => 'https://example.com/foo.png',
         'text' => Data::Text::Simple->new(
                 'text' => 'Funny item'
         ),
         'url' => 'https://skim.cz',
 );

 # Print out.
 print "Icon URL: ".$obj->icon_url."\n";
 print "Text: ".$obj->text->text."\n";
 print "URL: ".$obj->url."\n";

 # Output:
 # Icon URL: https://example.com/foo.png
 # Text: Funny item
 # URL: https://skim.cz

DEPENDENCIES

Mo, Mo::utils, Mo::utils::URI.

REPOSITORY

https://github.com/michal-josef-spacek/Data-InfoBox

AUTHOR

Michal Josef Špaček mailto:skim@cpan.org

http://skim.cz

LICENSE AND COPYRIGHT

© 2024 Michal Josef Špaček

BSD 2-Clause License

VERSION

0.01