marshmallow / resource-progress
A Laravel Nova field.
Installs: 365
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
pkg:composer/marshmallow/resource-progress
Requires
- php: ^8.3
- marshmallow/metadata: ^v1.2.0
Requires (Dev)
- laravel/nova: ^4.33.0|^5.0
README
use HasMetadata;
use TrackResourceProgress;
#[ResourceProgressSuite(suite: 'progress', name: 'Progress')]
#[ResourceProgressSuite(suite: 'publish', name: 'Publish', fields: ['name', 'intro'])]
class Product extends ModelsProduct implements HasMedia, Sortable
{
// Optional if you dont provide the fields in the attribute
public function getProgressRequiredFields(): array
{
return ['name', 'intro', 'description', 'supplier_id', 'product_category_id'];
}
}
public function setPublishActions(): array
{
return [
\Marshmallow\ResourceProgress\Actions\FieldFilled::class,
];
}
artisan make:resource-progress-action MissingTranslationsAction
a make:resource-progress-suite SeoSuite
Register your suites in the model (required action)
#[ResourceProgressSuite(suite: 'progress', name: 'Progress')]
#[ResourceProgressSuite(suite: 'publish', name: 'Publish')]
#[ResourceProgressSuite(suite: 'seo', name: 'SEO')]
class Product extends ModelsProduct implements HasMedia, Sortable
Register the field (required action)
ResourceProgress::make(__('Progress')),
// Selected resources
IndexResourceProgress::make(),
// All resources
IndexResourcesProgress::make(self::class)->standalone(),
``