trait ConditionallyLoadsAttributes

Properties

static protected array<class-string, bool> $cachedPreserveKeysAttributes

The cached preserve keys attribute values.

Methods

array
filter(array $data)

Filter the given data, removing any optional values.

array
mergeData(array $data, int $index, array $merge, bool $numericKeys)

Merge the given data in at the given index.

array
removeMissingValues(array $data)

Remove the missing values from the filtered data.

mixed
when(bool $condition, mixed $value, mixed $default = new MissingValue())

Retrieve a value if the given "condition" is truthy.

mixed
unless(bool $condition, mixed $value, mixed $default = new MissingValue())

Retrieve a value if the given "condition" is falsy.

mixed
merge(mixed $value)

Merge a value into the array.

mixed
mergeWhen(bool $condition, mixed $value, mixed $default = new MissingValue())

Merge a value if the given condition is truthy.

mixed
mergeUnless(bool $condition, mixed $value, mixed $default = new MissingValue())

Merge a value unless the given condition is truthy.

attributes(array $attributes)

Merge the given attributes.

mixed
whenHas(string $attribute, mixed $value = null, mixed $default = new MissingValue())

Retrieve an attribute if it exists on the resource.

mixed
whenNull(mixed $value, mixed $default = new MissingValue())

Retrieve a model attribute if it is null.

mixed
whenNotNull(mixed $value, mixed $default = new MissingValue())

Retrieve a model attribute if it is not null.

mixed
whenAppended(string $attribute, mixed $value = null, mixed $default = new MissingValue())

Retrieve an accessor when it has been appended.

mixed
whenLoaded(string $relationship, mixed $value = null, mixed $default = new MissingValue())

Retrieve a relationship if it has been loaded.

mixed
whenCounted(string $relationship, mixed $value = null, mixed $default = new MissingValue())

Retrieve a relationship count if it exists.

mixed
whenAggregated(string $relationship, string $column, string $aggregate, mixed $value = null, mixed $default = new MissingValue())

Retrieve a relationship aggregated value if it exists.

mixed
whenExistsLoaded(string $relationship, mixed $value = null, mixed $default = new MissingValue())

Retrieve a relationship existence check if it exists.

mixed
whenPivotLoaded(string $table, mixed $value, mixed $default = new MissingValue())

Execute a callback if the given pivot table has been loaded.

mixed
whenPivotLoadedAs(string $accessor, string $table, mixed $value, mixed $default = new MissingValue())

Execute a callback if the given pivot table with a custom accessor has been loaded.

bool
hasPivotLoaded(string $table)

Determine if the resource has the specified pivot table loaded.

bool
hasPivotLoadedAs(string $accessor, string $table)

Determine if the resource has the specified pivot table loaded with a custom accessor.

mixed
transform(mixed $value, callable $callback, mixed $default = new MissingValue())

Transform the given value if it is present.

Details

at line 24
protected array filter(array $data)

Filter the given data, removing any optional values.

Parameters

array $data

Return Value

array

at line 57
protected array mergeData(array $data, int $index, array $merge, bool $numericKeys)

Merge the given data in at the given index.

Parameters

array $data
int $index
array $merge
bool $numericKeys

Return Value

array

at line 74
protected array removeMissingValues(array $data)

Remove the missing values from the filtered data.

Parameters

array $data

Return Value

array

at line 111
protected mixed when(bool $condition, mixed $value, mixed $default = new MissingValue())

Retrieve a value if the given "condition" is truthy.

Parameters

bool $condition
mixed $value
mixed $default

Return Value

mixed

at line 125
mixed unless(bool $condition, mixed $value, mixed $default = new MissingValue())

Retrieve a value if the given "condition" is falsy.

Parameters

bool $condition
mixed $value
mixed $default

Return Value

mixed

at line 137
protected mixed merge(mixed $value)

Merge a value into the array.

Parameters

mixed $value

Return Value

mixed

at line 147
protected mixed mergeWhen(bool $condition, mixed $value, mixed $default = new MissingValue())

Merge a value if the given condition is truthy.

Parameters

bool $condition
mixed $value
mixed $default

Return Value

mixed

at line 161
protected mixed mergeUnless(bool $condition, mixed $value, mixed $default = new MissingValue())

Merge a value unless the given condition is truthy.

Parameters

bool $condition
mixed $value
mixed $default

Return Value

mixed

at line 171
protected MergeValue attributes(array $attributes)

Merge the given attributes.

Parameters

array $attributes

Return Value

MergeValue

at line 183
mixed whenHas(string $attribute, mixed $value = null, mixed $default = new MissingValue())

Retrieve an attribute if it exists on the resource.

Parameters

string $attribute
mixed $value
mixed $default

Return Value

mixed

at line 199
protected mixed whenNull(mixed $value, mixed $default = new MissingValue())

Retrieve a model attribute if it is null.

Parameters

mixed $value
mixed $default

Return Value

mixed

at line 211
protected mixed whenNotNull(mixed $value, mixed $default = new MissingValue())

Retrieve a model attribute if it is not null.

Parameters

mixed $value
mixed $default

Return Value

mixed

at line 223
protected mixed whenAppended(string $attribute, mixed $value = null, mixed $default = new MissingValue())

Retrieve an accessor when it has been appended.

Parameters

string $attribute
mixed $value
mixed $default

Return Value

mixed

at line 237
protected mixed whenLoaded(string $relationship, mixed $value = null, mixed $default = new MissingValue())

Retrieve a relationship if it has been loaded.

Parameters

string $relationship
mixed $value
mixed $default

Return Value

mixed

at line 265
mixed whenCounted(string $relationship, mixed $value = null, mixed $default = new MissingValue())

Retrieve a relationship count if it exists.

Parameters

string $relationship
mixed $value
mixed $default

Return Value

mixed

at line 293
mixed whenAggregated(string $relationship, string $column, string $aggregate, mixed $value = null, mixed $default = new MissingValue())

Retrieve a relationship aggregated value if it exists.

Parameters

string $relationship
string $column
string $aggregate
mixed $value
mixed $default

Return Value

mixed

at line 321
mixed whenExistsLoaded(string $relationship, mixed $value = null, mixed $default = new MissingValue())

Retrieve a relationship existence check if it exists.

Parameters

string $relationship
mixed $value
mixed $default

Return Value

mixed

at line 345
protected mixed whenPivotLoaded(string $table, mixed $value, mixed $default = new MissingValue())

Execute a callback if the given pivot table has been loaded.

Parameters

string $table
mixed $value
mixed $default

Return Value

mixed

at line 355
protected mixed whenPivotLoadedAs(string $accessor, string $table, mixed $value, mixed $default = new MissingValue())

Execute a callback if the given pivot table with a custom accessor has been loaded.

Parameters

string $accessor
string $table
mixed $value
mixed $default

Return Value

mixed

at line 367
protected bool hasPivotLoaded(string $table)

Determine if the resource has the specified pivot table loaded.

Parameters

string $table

Return Value

bool

at line 375
protected bool hasPivotLoadedAs(string $accessor, string $table)

Determine if the resource has the specified pivot table loaded with a custom accessor.

Parameters

string $accessor
string $table

Return Value

bool

at line 385
protected mixed transform(mixed $value, callable $callback, mixed $default = new MissingValue())

Transform the given value if it is present.

Parameters

mixed $value
callable $callback
mixed $default

Return Value

mixed