1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
package Reaction::UI::ViewPort::GridView::Row;
use Reaction::Class;
class Row is 'Reaction::UI::ViewPort::ObjectView', which {
around build_fields_for_type_Num => sub {
my ($orig, $self, $attr, $args) = @_;
$args->{Field}{$attr->name}{layout} = 'value/number'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
around build_fields_for_type_Int => sub {
my ($orig, $self, $attr, $args) = @_;
$args->{Field}{$attr->name}{layout} = 'value/number'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
around build_fields_for_type_Bool => sub {
my ($orig, $self, $attr, $args) = @_;
$args->{Field}{$attr->name}{layout} = 'value/boolean'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
around build_fields_for_type_Str => sub {
my ($orig, $self, $attr, $args) = @_;
$args->{Field}{$attr->name}{layout} = 'value/string'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
around build_fields_for_type_SimpleStr => sub {
my ($orig, $self, $attr, $args) = @_;
$args->{Field}{$attr->name}{layout} = 'value/string'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
around build_fields_for_type_Enum => sub {
my ($orig, $self, $attr, $args) = @_;
$args->{Field}{$attr->name}{layout} = 'value/string'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
around build_fields_for_type_DateTime => sub {
my ($orig, $self, $attr, $args) = @_;
$args->{Field}{$attr->name}{layout} = 'value/date_time'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
around build_fields_for_type_ArrayRef => sub {
my ($orig, $self, $attr, $args) = @_;
return;
$args->{Field}{$attr->name}{layout} = 'value/list'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
around build_fields_for_type_Reaction_InterfaceModel_Collection => sub {
my ($orig, $self, $attr, $args) = @_;
return;
$args->{Field}{$attr->name}{layout} = 'value/collection'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
around build_fields_for_type_Reaction_InterfaceModel_Object => sub {
my ($orig, $self, $attr, $args) = @_;
return;
$args->{Field}{$attr->name}{layout} = 'value/related_object'
unless( exists $args->{Field}{$attr->name} &&
exists $args->{Field}{$attr->name}{layout} &&
defined $args->{Field}{$attr->name}{layout}
);
$orig->($self, $attr, $args);
};
};
1;
|