<?php
namespace Laravel\Nova\Fields;
use Laravel\Nova\Http\Requests\NovaRequest;
trait HasSuggestions
{
/**
* The field's suggestions callback.
*
* @var array|callable
*/
public $suggestions;
/**
* Set the callback or array to be used to determine the field's suggestions list.
*
* @param array|callable $suggestions
* @return $this
*/
public function suggestions($suggestions)
{
$this->suggestions = $suggestions;
return $this;
}
/**
* Resolve the display suggestions for the field.
*
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
* @return array|null
*/
public function resolveSuggestions(NovaRequest $request)
{
if (is_callable($this->suggestions)) {
return call_user_func($this->suggestions, $request) ?? null;
}
return $this->suggestions;
}
}