1 package Reaction::UI::ViewPort::Field::Mutable::File;
3 use Reaction::Types::File qw/Upload/;
6 use namespace::clean -except => [ qw(meta) ];
7 extends 'Reaction::UI::ViewPort::Field';
9 with 'Reaction::UI::ViewPort::Field::Role::Mutable::Simple'
10 => { value_type => Upload };
12 override apply_our_events => sub {
13 my ($self, $events) = @_;
14 my $value_key = $self->event_id_for('value_string');
15 if (my $upload = $self->ctx->req->upload($value_key)) {
16 local $events->{$value_key} = $upload;
22 sub adopt_value_string {
24 $self->value($self->value_string) if $self->value_string;
26 override _value_string_from_value => sub { '' };
28 __PACKAGE__->meta->make_immutable;