Component
in package
implements
JsonSerializable
Base class for all Apple News Format (ANF) components.
All content in an Apple News article is built using components. This base class provides common properties like layouts, styles, and behaviors.
Tags
Table of Contents
Interfaces
- JsonSerializable
Properties
- $anchor : string|null
- $animation : array<string, mixed>|null
- $behavior : array<string, mixed>|null
- $conditional : array<string, mixed>|null
- $hidden : bool
- $identifier : string|null
- $layout : string|null
- $style : string|null
Methods
- getRole() : string
- Get the role name for the component (e.g., 'body', 'photo', 'heading1').
- jsonSerialize() : array<string, mixed>
- Implementation of JsonSerializable.
- setAnchor() : static
- Set the anchor configuration.
- setAnimation() : static
- Set component animation using an array.
- setAnimationObject() : static
- Set the component animation using a typed Animation object.
- setBehavior() : static
- Set the component behavior using an array.
- setBehaviorObject() : static
- Set the component behavior using a typed Behavior object.
- setConditional() : static
- Set conditional properties for the component.
- setHidden() : static
- Set whether the component is hidden.
- setIdentifier() : static
- Set a unique identifier for this component.
- setLayout() : static
- Set the layout name or inline layout.
- setStyle() : static
- Set the style name.
- getBaseProperties() : array<string, mixed>
- Get the base properties common to all components for JSON serialization.
Properties
$anchor
protected
string|null
$anchor
= null
Anchor configuration for pinning components.
$animation
protected
array<string, mixed>|null
$animation
= null
Animation settings for the component.
$behavior
protected
array<string, mixed>|null
$behavior
= null
Behavior settings (e.g., Parallax).
$conditional
protected
array<string, mixed>|null
$conditional
= null
Conditional properties based on orientation/device.
$hidden
protected
bool
$hidden
= false
Whether the component is hidden by default.
$identifier
protected
string|null
$identifier
= null
A unique identifier for this component instance.
$layout
protected
string|null
$layout
= null
Reference to a named layout defined in Article.
$style
protected
string|null
$style
= null
Reference to a named style defined in Article.
Methods
getRole()
Get the role name for the component (e.g., 'body', 'photo', 'heading1').
public
abstract getRole() : string
Return values
stringjsonSerialize()
Implementation of JsonSerializable.
public
jsonSerialize() : array<string, mixed>
Return values
array<string, mixed>setAnchor()
Set the anchor configuration.
public
setAnchor(string $anchor) : static
Parameters
- $anchor : string
-
The anchor configuration.
Return values
staticsetAnimation()
Set component animation using an array.
public
setAnimation(array<string, mixed> $animation) : static
Parameters
- $animation : array<string, mixed>
-
Animation properties.
Tags
Return values
staticsetAnimationObject()
Set the component animation using a typed Animation object.
public
setAnimationObject(AnimationInterface $animation) : static
This method provides type-safe animation configuration:
$photo->setAnimationObject(FadeInAnimation::fromTransparent());
$body->setAnimationObject(MoveInAnimation::fromLeft());
Parameters
- $animation : AnimationInterface
-
The animation object.
Return values
staticsetBehavior()
Set the component behavior using an array.
public
setBehavior(array<string, mixed> $behavior) : static
Parameters
- $behavior : array<string, mixed>
-
The behavior configuration array.
Tags
Return values
staticsetBehaviorObject()
Set the component behavior using a typed Behavior object.
public
setBehaviorObject(BehaviorInterface $behavior) : static
This method provides type-safe behavior configuration:
$photo->setBehaviorObject(Parallax::withFactor(0.8));
$photo->setBehaviorObject(new Springy());
Parameters
- $behavior : BehaviorInterface
-
The behavior object.
Return values
staticsetConditional()
Set conditional properties for the component.
public
setConditional(array<string, mixed> $conditional) : static
Parameters
- $conditional : array<string, mixed>
-
Array of conditions.
Tags
Return values
staticsetHidden()
Set whether the component is hidden.
public
setHidden(bool $hidden) : static
Parameters
- $hidden : bool
-
Whether to hide the component.
Return values
staticsetIdentifier()
Set a unique identifier for this component.
public
setIdentifier(string $identifier) : static
Parameters
- $identifier : string
-
The unique identifier.
Return values
staticsetLayout()
Set the layout name or inline layout.
public
setLayout(string $layout) : static
Parameters
- $layout : string
-
Reference to a name in componentLayouts.
Return values
staticsetStyle()
Set the style name.
public
setStyle(string $style) : static
Parameters
- $style : string
-
Reference to a name in componentStyles.
Return values
staticgetBaseProperties()
Get the base properties common to all components for JSON serialization.
protected
getBaseProperties() : array<string, mixed>