/nova-telescope-link

Smart Link for Laravel Nova to Telescope Debug Assistant.

Primary LanguagePHPMIT LicenseMIT

Stand With Ukraine

Smart Link to Laravel Telescope Assistant from Laravel Nova

Latest Stable Version Code Style Status Quality Score Software License

Laravel Nova Telescope Smart Link

Ability to add link to the Laravel Telescope Assistant in the Laravel Nova sidebar. Link automatically disables if current user hasn't access to the Telescope Debug Assistant according with access policy which is defined in gate viewTelescope. For more information, checkout the documentation.

Demo

Installation

At first, install via composer:

composer require mad-web/nova-telescope-link

Next up, register the link in the tools method of the NovaServiceProvider:

// app/Providers/NovaServiceProvider.php

// ...

public function tools()
{
    return [
        // ...
        new \MadWeb\NovaTelescopeLink\TelescopeLink,
    ];
}

Customization

By default, link label is - Telescope Debug, if you prefer to customize it, just pass new label text into constructor:

// app/Providers/NovaServiceProvider.php

// ...

public function tools()
{
    return [
        // ...
        new \MadWeb\NovaTelescopeLink\TelescopeLink('Custom Label'),
    ];
}

In addition, you may use Telescope logo, just pass null or call useLogo method to provide more readable view:

// app/Providers/NovaServiceProvider.php

// ...

public function tools()
{
    return [
        // ...

        new \MadWeb\NovaTelescopeLink\TelescopeLink(null),
        // or
        \MadWeb\NovaTelescopeLink\TelescopeLink::useLogo(),
    ];
}

If you need to customize link target attribute (for example to open a page in a new tab), just pass it as second parameter into constructor or as first parameter into useLogo method. A value should be without prepended underscore _:

// app/Providers/NovaServiceProvider.php

// ...

public function tools()
{
    return [
        // ...

        new \MadWeb\NovaTelescopeLink\TelescopeLink('Telescope Debug', 'blank'),
        // or
        \MadWeb\NovaTelescopeLink\TelescopeLink::useLogo('blank'),
    ];
}

If you prefer to use Fluent Interface:

// app/Providers/NovaServiceProvider.php

// ...

public function tools()
{
    return [
        // ...

        \MadWeb\NovaTelescopeLink\TelescopeLink::make()->target('blank'),
        // or
        \MadWeb\NovaTelescopeLink\TelescopeLink::useLogo()->target('blank'),
    ];
}

Contributing

Please see CONTRIBUTING and CONDUCT for details.

Security

If you discover any security related issues, please email madweb.dev@gmail.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.