LaravelPackages.net
Acme Inc.
Toggle sidebar
nova-kit/nova-field-mixins

Laravel Nova Field Mixins

12.557
4
v3.0.1
About nova-kit/nova-field-mixins

nova-kit/nova-field-mixins is a Laravel package for laravel nova field mixins. It currently has 4 GitHub stars and 12.557 downloads on Packagist (latest version v3.0.1). Install it with composer require nova-kit/nova-field-mixins. Discover more Laravel packages by nova-kit or browse all Laravel packages to compare alternatives.

Last updated

Laravel Nova Field Mixins

tests Latest Stable Version Total Downloads Latest Unstable Version License Coverage Status

Installation

To install through composer, run the following command from the terminal:

composer require "nova-kit/nova-field-mixins"

Usages

Laravel Nova Field Mixins are useful for applying a common set of configurations to a Field without repeating it. E.g:

use Laravel\Nova\Fields\DateTime;

DateTime::make('Created At')->sortable()->displayUsing(fn ($d) => $d?->diffForHumans()),
DateTime::make('Updated At')->sortable()->displayUsing(fn ($d) => $d?->diffForHumans()),

By adding the following class App\Nova\Fields\Mixins\StandardDateTime:

<?php 

namespace App\Nova\Fields\Mixins;

use Laravel\Nova\Fields\Field;

class StandardDateTime
{
    public function __invoke(Field $field)
    {
        $field->sortable()->displayUsing(fn ($d) => $d?->diffForHumans());
    }
}

You can now write the above example as:

use App\Nova\Fields\Mixins\StandardDateTime;
use Laravel\Nova\Fields\DateTime;

DateTime::make('Created At')->apply(StandardDateTime::class),
DateTime::make('Updated At')->apply(StandardDateTime::class),

Available Mixin

Handle AsArrayobject Cast

This package provides a default implement casting for AsArrayObject.

use Laravel\Nova\Fields\Text;
use NovaKit\Fields\Mixins\AsArrayObject;

Text::make('Name', 'profile.name')->apply(new AsArrayObject()),

You can also simplify this by using fromArrayObject macro.

use Laravel\Nova\Fields\Text;

Text::make('Name', 'profile.name')->fromArrayObject(),
Comments