File Coverage

blib/lib/Chart/Plotly/Trace/Scatter/Hoverlabel/Font.pm
Criterion Covered Total %
statement 9 25 36.0
branch 0 8 0.0
condition 0 8 0.0
subroutine 3 4 75.0
pod 1 1 100.0
total 13 46 28.2


line stmt bran cond sub pod time code
1             use Moose;
2 4     4   23 use MooseX::ExtraArgs;
  4         9  
  4         21  
3 4     4   20313 use Moose::Util::TypeConstraints qw(enum union);
  4         7  
  4         20  
4 4     4   6574 if ( !defined Moose::Util::TypeConstraints::find_type_constraint('PDL') ) {
  4         9  
  4         26  
5             Moose::Util::TypeConstraints::type('PDL');
6             }
7              
8             our $VERSION = '0.042'; # VERSION
9              
10             # ABSTRACT: This attribute is one of the possible options for the trace scatter.
11              
12             my $self = shift;
13             my $extra_args = $self->extra_args // {};
14 0     0 1   my $meta = $self->meta;
15 0   0       my %hash = %$self;
16 0           for my $name ( sort keys %hash ) {
17 0           my $attr = $meta->get_attribute($name);
18 0           if ( defined $attr ) {
19 0           my $value = $hash{$name};
20 0 0         my $type = $attr->type_constraint;
21 0           if ( $type && $type->equals('Bool') ) {
22 0           $hash{$name} = $value ? \1 : \0;
23 0 0 0       }
24 0 0         }
25             }
26             %hash = ( %hash, %$extra_args );
27             delete $hash{'extra_args'};
28 0           if ( $self->can('type') && ( !defined $hash{'type'} ) ) {
29 0           $hash{type} = $self->type();
30 0 0 0       }
31 0           return \%hash;
32             }
33 0            
34             has color => ( is => "rw",
35             isa => "Str|ArrayRef[Str]", );
36              
37             has colorsrc => ( is => "rw",
38             isa => "Str",
39             documentation => "Sets the source reference on Chart Studio Cloud for `color`.",
40             );
41              
42             has description => ( is => "ro",
43             default => "Sets the font used in hover labels.", );
44              
45             has family => (
46             is => "rw",
47             isa => "Str|ArrayRef[Str]",
48             documentation =>
49             "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.",
50             );
51              
52             has familysrc => ( is => "rw",
53             isa => "Str",
54             documentation => "Sets the source reference on Chart Studio Cloud for `family`.",
55             );
56              
57             has size => ( is => "rw",
58             isa => "Num|ArrayRef[Num]", );
59              
60             has sizesrc => ( is => "rw",
61             isa => "Str",
62             documentation => "Sets the source reference on Chart Studio Cloud for `size`.",
63             );
64              
65             __PACKAGE__->meta->make_immutable();
66             1;
67              
68              
69             =pod
70              
71             =encoding utf-8
72              
73             =head1 NAME
74              
75             Chart::Plotly::Trace::Scatter::Hoverlabel::Font - This attribute is one of the possible options for the trace scatter.
76              
77             =head1 VERSION
78              
79             version 0.042
80              
81             =head1 SYNOPSIS
82              
83             use HTML::Show;
84             use Chart::Plotly;
85             use Chart::Plotly::Trace::Scatter;
86             my $scatter = Chart::Plotly::Trace::Scatter->new( x => [ 1 .. 5 ], y => [ 1 .. 5 ] );
87            
88             HTML::Show::show( Chart::Plotly::render_full_html( data => [$scatter] ) );
89              
90             =head1 DESCRIPTION
91              
92             This attribute is part of the possible options for the trace scatter.
93              
94             This file has been autogenerated from the official plotly.js source.
95              
96             If you like Plotly, please support them: L<https://plot.ly/>
97             Open source announcement: L<https://plot.ly/javascript/open-source-announcement/>
98              
99             Full reference: L<https://plot.ly/javascript/reference/#scatter>
100              
101             =head1 DISCLAIMER
102              
103             This is an unofficial Plotly Perl module. Currently I'm not affiliated in any way with Plotly.
104             But I think plotly.js is a great library and I want to use it with perl.
105              
106             =head1 METHODS
107              
108             =head2 TO_JSON
109              
110             Serialize the trace to JSON. This method should be called only by L<JSON> serializer.
111              
112             =head1 ATTRIBUTES
113              
114             =over
115              
116             =item * color
117              
118             =item * colorsrc
119              
120             Sets the source reference on Chart Studio Cloud for `color`.
121              
122             =item * description
123              
124             =item * family
125              
126             HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.
127              
128             =item * familysrc
129              
130             Sets the source reference on Chart Studio Cloud for `family`.
131              
132             =item * size
133              
134             =item * sizesrc
135              
136             Sets the source reference on Chart Studio Cloud for `size`.
137              
138             =back
139              
140             =head1 AUTHOR
141              
142             Pablo Rodríguez González <pablo.rodriguez.gonzalez@gmail.com>
143              
144             =head1 COPYRIGHT AND LICENSE
145              
146             This software is Copyright (c) 2022 by Pablo Rodríguez González.
147              
148             This is free software, licensed under:
149              
150             The MIT (X11) License
151              
152             =cut