ResolvesJsonApiElements
trait ResolvesJsonApiElements
Constants
| protected DEFAULT_MAX_RELATIONSHIP_DEPTH |
The default maximum relationship depth. |
Properties
| protected bool | $usesRequestQueryString | Determine whether resources respect inclusions and fields from the request. |
|
| protected bool | $includesPreviouslyLoadedRelationships | Determine whether included relationship for the resource from eager loaded relationship. |
|
| null|JsonApiResource, 1: string, 2: string, 3: bool}> | $loadedRelationshipsMap | Cached loaded relationships map. |
|
| protected array | $loadedRelationshipIdentifiers | Cached loaded relationships identifers. |
|
| static int | $maxRelationshipDepth | The maximum relationship depth. |
Methods
Specify the maximum relationship depth.
Resolve the resource's attributes.
Resolve relationships for the resource's data object.
Compile resource relations.
Compile included relationships map.
Resolve the meta information for the resource.
Indicate that relationship loading should respect the request's "includes" query string.
Indicate that relationship loading should not rely on the request's "includes" query string.
Indicate that relationship should include loaded relationships.
Details
at line 67
static void
maxRelationshipDepth(int $depth)
Specify the maximum relationship depth.
Boot-only. The depth limit persists in a static property for the worker lifetime and affects every subsequent JSON:API resource resolution.
at line 75
protected array
resolveResourceObject(JsonApiRequest $request)
Resolves data for the resource.
at line 96
string
resolveResourceIdentifier(JsonApiRequest $request)
Resolve the resource's identifier.
at line 114
string
resolveResourceType(JsonApiRequest $request)
Resolve the resource's type.
at line 142
protected array
resolveResourceAttributes(JsonApiRequest $request, string $resourceType)
Resolve the resource's attributes.
at line 171
protected array
resolveResourceRelationshipIdentifiers(JsonApiRequest $request)
Resolve relationships for the resource's data object.
at line 190
protected void
compileResourceRelationships(JsonApiRequest $request)
Compile resource relationships.
at line 236
protected Generator
compileResourceRelationshipUsingResolver(JsonApiRequest $request, mixed $resource, RelationResolver $relationResolver, Collection|Model|null $relatedModels)
Compile resource relations.
at line 323
protected void
compileIncludedNestedRelationshipsMap(JsonApiRequest $request, Model $relation, JsonApiResource $resource)
Compile included relationships map.
at line 337
Collection
resolveIncludedResourceObjects(JsonApiRequest $request)
Resolves included for the resource.
at line 400
protected array
resolveResourceLinks(JsonApiRequest $request)
Resolve the links for the resource.
at line 410
protected array
resolveResourceMetaInformation(JsonApiRequest $request)
Resolve the meta information for the resource.
at line 418
ResolvesJsonApiElements
respectFieldsAndIncludesInQueryString(bool $value = true)
Indicate that relationship loading should respect the request's "includes" query string.
at line 428
ResolvesJsonApiElements
ignoreFieldsAndIncludesInQueryString()
Indicate that relationship loading should not rely on the request's "includes" query string.
at line 436
ResolvesJsonApiElements
includePreviouslyLoadedRelationships()
Indicate that relationship should include loaded relationships.