%PDF- %PDF-
Direktori : /home/forge/api-takeaseat.eco-n-tech.co.uk/vendor/laravel/nova/src/ |
Current File : //home/forge/api-takeaseat.eco-n-tech.co.uk/vendor/laravel/nova/src/Element.php |
<?php namespace Laravel\Nova; use Illuminate\Http\Request; use JsonSerializable; abstract class Element implements JsonSerializable { use Metable; use AuthorizedToSee; use ProxiesCanSeeToGate; use Makeable; /** * The element's component. * * @var string */ public $component; /** * Indicates if the element is only shown on the detail screen. * * @var bool */ public $onlyOnDetail = false; /** * Create a new element. * * @param string|null $component * @return void */ public function __construct($component = null) { $this->component = $component ?? $this->component; } /** * Determine if the element should be displayed for the given request. * * @param \Illuminate\Http\Request $request * @return bool */ public function authorize(Request $request) { return $this->authorizedToSee($request); } /** * Get the component name for the element. * * @return string */ public function component() { return $this->component; } /** * Specify that the element should only be shown on the detail view. * * @return $this */ public function onlyOnDetail() { $this->onlyOnDetail = true; return $this; } /** * Prepare the element for JSON serialization. * * @return array */ public function jsonSerialize() { return array_merge([ 'component' => $this->component(), 'prefixComponent' => false, 'onlyOnDetail' => $this->onlyOnDetail, ], $this->meta()); } }