moonshine/changelog

Model ChangeLog for MoonShine

2.0.0 2024-10-12 19:47 UTC

This package is auto-updated.

Last update: 2024-11-13 17:08:12 UTC


README

Requirements

  • MoonShine v3.0+

Support MoonShine versions

Installation

composer require moonshine/changelog
php artisan migrate

Get started

Add trait HasChangeLog to model

class Post extends Model
{
    use HasChangeLog;
}

Add component to Page

protected function bottomLayer(): array
{
    return [
        ...parent::bottomLayer(),

        ChangeLog::make('Changelog', $this->getResource())
    ];
}

or in Resource

class PostResource extends ModelResource
{
    // ...
    protected function onLoad(): void
    {
        $this->getFormPage()->pushToLayer(
            Layer::BOTTOM,
            ChangeLog::make('Changelog', $this)
        );
    }
    // ...
}

By default, 5 last changes are displayed. To change this, use the limit() method

ChangeLog::make('Changelog', $this)->limit(10)

By default, Resource of BelongsTo is MoonShine\Laravel\Resources\MoonShineUserResource To change this, use the userResource parameter

ChangeLog::make('Changelog', $this, userResource: \App\MoonShine\Resources\MoonShineUserResource::class)->limit(10)