52 lines
1.3 KiB
PHP
52 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace Laravel\Nova\Concerns;
|
|
|
|
use Illuminate\Support\Facades\Event;
|
|
use Laravel\Nova\Events\NovaServiceProviderRegistered;
|
|
use Laravel\Nova\Events\ServingNova;
|
|
|
|
trait InteractsWithEvents
|
|
{
|
|
/**
|
|
* Register an event listener for the Nova "booted" event.
|
|
*
|
|
* @param (\Closure(\Laravel\Nova\Events\NovaServiceProviderRegistered):(void))|string $callback
|
|
* @return void
|
|
*/
|
|
public static function booted($callback)
|
|
{
|
|
Event::listen(NovaServiceProviderRegistered::class, $callback);
|
|
}
|
|
|
|
/**
|
|
* Register an event listener for the Nova "serving" event.
|
|
*
|
|
* @param (\Closure(\Laravel\Nova\Events\ServingNova):(void))|string $callback
|
|
* @return void
|
|
*/
|
|
public static function serving($callback)
|
|
{
|
|
Event::listen(ServingNova::class, $callback);
|
|
}
|
|
|
|
/**
|
|
* Flush the persistent Nova state.
|
|
*
|
|
* @return void
|
|
*/
|
|
public static function flushState()
|
|
{
|
|
static::$rtlCallback = null;
|
|
static::$createUserCallback = null;
|
|
static::$createUserCommandCallback = null;
|
|
static::$dashboards = [];
|
|
static::$jsonVariables = [];
|
|
static::$resources = [];
|
|
static::$resourcesByModel = [];
|
|
static::$scripts = [];
|
|
static::$styles = [];
|
|
static::$tools = [];
|
|
}
|
|
}
|