abstract class Component (View source)

Properties

static protected array $propertyCache

The cache of public property names, keyed by class.

static protected array $methodCache

The cache of public method names, keyed by class.

protected array $except

The properties / methods that should not be exposed to the component.

string $componentName

The component alias name.

ComponentAttributeBag $attributes

The component attributes.

Methods

View|Closure|string
render()

Get the view / view contents that represent the component.

View|Closure|string
resolveView()

Resolve the Blade view or view file that should be used when rendering the component.

string
createBladeViewFromString(Factory $factory, string $contents)

Create a Blade view with the raw component string content.

array
data()

Get the data that should be supplied to the view.

array
extractPublicProperties()

Extract the public properties for the component.

array
extractPublicMethods()

Extract the public methods for the component.

mixed
createVariableFromMethod(ReflectionMethod $method)

Create a callable variable from the given method.

createInvokableVariable(string $method)

Create an invokable, toStringable variable for the given component method.

bool
shouldIgnore(string $name)

Determine if the given property / method should be ignored.

array
ignoredMethods()

Get the methods that should be ignored.

$this
withName(string $name)

Set the component alias name.

$this
withAttributes(array $attributes)

Set the extra attributes that the component should make available.

bool
shouldRender()

Determine if the component should be rendered.

Details

abstract View|Closure|string render()

Get the view / view contents that represent the component.

Return Value

View|Closure|string

View|Closure|string resolveView()

Resolve the Blade view or view file that should be used when rendering the component.

Return Value

View|Closure|string

protected string createBladeViewFromString(Factory $factory, string $contents)

Create a Blade view with the raw component string content.

Parameters

Factory $factory
string $contents

Return Value

string

array data()

Get the data that should be supplied to the view.

Return Value

array

protected array extractPublicProperties()

Extract the public properties for the component.

Return Value

array

protected array extractPublicMethods()

Extract the public methods for the component.

Return Value

array

protected mixed createVariableFromMethod(ReflectionMethod $method)

Create a callable variable from the given method.

Parameters

ReflectionMethod $method

Return Value

mixed

protected InvokableComponentVariable createInvokableVariable(string $method)

Create an invokable, toStringable variable for the given component method.

Parameters

string $method

Return Value

InvokableComponentVariable

protected bool shouldIgnore(string $name)

Determine if the given property / method should be ignored.

Parameters

string $name

Return Value

bool

protected array ignoredMethods()

Get the methods that should be ignored.

Return Value

array

$this withName(string $name)

Set the component alias name.

Parameters

string $name

Return Value

$this

$this withAttributes(array $attributes)

Set the extra attributes that the component should make available.

Parameters

array $attributes

Return Value

$this

bool shouldRender()

Determine if the component should be rendered.

Return Value

bool