use Reaction::UI::RenderingContext;
use File::ShareDir;
use File::Basename;
+use Config::Any;
use aliased 'Path::Class::Dir';
};
sub _load_skin_config {
my ($self, $args) = @_;
+ my $class = ref($self) || $self;
my $base = $self->skin_dir;
my $lst = sub { (ref $_[0] eq 'ARRAY') ? $_[0] : [$_[0]] };
my @files = (
# we get [ { $file => $conf }, ... ]
my %cfg = (map { %{(values %{$_})[0]} }
@{Config::Any->load_files({
- files => [ grep { -e $_ } @files ],
+ files => [ grep { -e $_ } map { $_->stringify } @files ],
use_ext => 1,
})}
);
if (my $super_name = $cfg{extends}) {
- my $super = $self->new(
+ my $super = $class->new(
name => $super_name,
view => $self->view,
skin_base_dir => $args->{skin_base_dir},