novius/laravel-nova-field-preview

A Laravel Nova field for open front preview

2.0.0 2024-07-10 13:43 UTC

This package is auto-updated.

Last update: 2024-11-10 14:17:22 UTC


README

License: AGPL v3

Introduction

This package allows you to add Laravel Nova field to open the front preview url of a ressource.

Requirements

  • Laravel Nova >= 4.0
  • Laravel >= 10.0
  • Laravel >= 8.2

NOTE: These instructions are for Laravel >= 10.0 and PHP >= 8.2 If you are using prior version, please see the previous version's docs.

Installation

You can install the package via composer:

composer require novius/laravel-nova-field-preview

Add OpenPreview field on your Nova Resource.

If the resource have a previewUrl method :

use Laravel\Nova\Resource;
use Novius\LaravelNovaFieldPreview\Nova\Fields\OpenPreview;

class Post extends Resource
{
    protected function fields(): array
    {
        return [
            OpenPreview::make('Preview link'),

Otherwise you must specify the preview url :

use Laravel\Nova\Resource;
use Novius\LaravelNovaFieldPreview\Nova\Fields\OpenPreview;

class Post extends Resource
{
    protected function fields(): array
    {
        return [
            OpenPreview::make('Preview link')
            ->previewUrl(function() {
                // Return here the preview url of the resource
                return $this->resource->url().'.?preview=1';
            }),

Lang files

If you want to customize the lang files, you can publish them with:

php artisan vendor:publish --provider="Novius\LaravelNovaFieldPreview\LaravelNovaFieldPreviewServiceProvider" --tag="lang"

Lint

Lint your code with Laravel Pint using:

composer run-script lint

Licence

This package is under GNU Affero General Public License v3 or (at your option) any later version.