package Reaction::UI::ViewPort::Field::Mutable::Boolean;
use Reaction::Class;
use namespace::clean -except => [ qw(meta) ];
extends 'Reaction::UI::ViewPort::Field::Boolean';
with 'Reaction::UI::ViewPort::Field::Role::Mutable::Simple';
sub adopt_value_string {
my ($self) = @_;
$self->value($self->value_string||0);
};
sub BUILD {
my($self) = @_;
$self->value(0) unless $self->_model_has_value;
};
# yeah, bool fields have to always be required
# otherwise we ever cant get false
# for reference, take a peek in Field::Role::Mutable::Simple's
# is_modified logic
sub value_is_required { 1 }
__PACKAGE__->meta->make_immutable;
1;