Condition
in package
implements
JsonSerializable
Condition object for conditional component properties.
Conditions allow components to have different properties based on device characteristics like screen size, orientation, or platform.
Tags
Table of Contents
Interfaces
- JsonSerializable
Constants
- COLOR_SCHEME_ANY = 'any'
- Valid preferred color scheme values.
- COLOR_SCHEME_DARK = 'dark'
- COLOR_SCHEME_LIGHT = 'light'
- PLATFORM_ANY = 'any'
- Valid platform values.
- PLATFORM_IOS = 'ios'
- PLATFORM_MACOS = 'macos'
- SIZE_CLASS_ANY = 'any'
- Valid size class values.
- SIZE_CLASS_COMPACT = 'compact'
- SIZE_CLASS_REGULAR = 'regular'
- SUBSCRIPTION_BUNDLE = 'bundle'
- Valid subscription status values.
- SUBSCRIPTION_SUBSCRIBED = 'subscribed'
- VIEW_ARTICLE = 'article'
- Valid view location values.
- VIEW_ISSUE = 'issue'
- VIEW_ISSUE_TABLE_OF_CONTENTS = 'issue_table_of_contents'
Properties
- $horizontalSizeClass : string|null
- The horizontal size class.
- $maxColumns : int|null
- The maximum number of columns.
- $maxContentSizeCategory : string|null
- The maximum content size category.
- $maxSpecifiedWidth : int|null
- The maximum specified width.
- $maxViewportAspectRatio : float|null
- The maximum viewport aspect ratio.
- $maxViewportWidth : int|null
- The maximum viewport width in points.
- $minColumns : int|null
- The minimum number of columns.
- $minContentSizeCategory : string|null
- The minimum content size category.
- $minSpecifiedWidth : int|null
- The minimum specified width.
- $minViewportAspectRatio : float|null
- The minimum viewport aspect ratio.
- $minViewportWidth : int|null
- The minimum viewport width in points.
- $platform : string|null
- The platform to match.
- $preferredColorScheme : string|null
- The preferred color scheme.
- $subscriptionStatus : array<int, string>|null
- The subscription status.
- $verticalSizeClass : string|null
- The vertical size class.
- $viewLocation : string|null
- The view location.
Methods
- compactWidth() : self
- Create a condition for compact horizontal size class.
- darkMode() : self
- Create a condition for dark mode.
- iOS() : self
- Create a condition for iOS platform only.
- jsonSerialize() : array<string, mixed>
- {@inheritdoc}
- lightMode() : self
- Create a condition for light mode.
- macOS() : self
- Create a condition for macOS platform only.
- regularWidth() : self
- Create a condition for regular horizontal size class.
- setHorizontalSizeClass() : $this
- Set the horizontal size class.
- setMaxColumns() : $this
- Set the maximum columns.
- setMaxContentSizeCategory() : $this
- Set the maximum content size category.
- setMaxSpecifiedWidth() : $this
- Set the maximum specified width.
- setMaxViewportAspectRatio() : $this
- Set the maximum viewport aspect ratio.
- setMaxViewportWidth() : $this
- Set the maximum viewport width.
- setMinColumns() : $this
- Set the minimum columns.
- setMinContentSizeCategory() : $this
- Set the minimum content size category.
- setMinSpecifiedWidth() : $this
- Set the minimum specified width.
- setMinViewportAspectRatio() : $this
- Set the minimum viewport aspect ratio.
- setMinViewportWidth() : $this
- Set the minimum viewport width.
- setPlatform() : $this
- Set the platform.
- setPreferredColorScheme() : $this
- Set the preferred color scheme.
- setSubscriptionStatus() : $this
- Set the subscription status.
- setVerticalSizeClass() : $this
- Set the vertical size class.
- setViewLocation() : $this
- Set the view location.
- viewportWidth() : self
- Create a condition for a viewport width range.
Constants
COLOR_SCHEME_ANY
Valid preferred color scheme values.
public
mixed
COLOR_SCHEME_ANY
= 'any'
COLOR_SCHEME_DARK
public
mixed
COLOR_SCHEME_DARK
= 'dark'
COLOR_SCHEME_LIGHT
public
mixed
COLOR_SCHEME_LIGHT
= 'light'
PLATFORM_ANY
Valid platform values.
public
mixed
PLATFORM_ANY
= 'any'
PLATFORM_IOS
public
mixed
PLATFORM_IOS
= 'ios'
PLATFORM_MACOS
public
mixed
PLATFORM_MACOS
= 'macos'
SIZE_CLASS_ANY
Valid size class values.
public
mixed
SIZE_CLASS_ANY
= 'any'
SIZE_CLASS_COMPACT
public
mixed
SIZE_CLASS_COMPACT
= 'compact'
SIZE_CLASS_REGULAR
public
mixed
SIZE_CLASS_REGULAR
= 'regular'
SUBSCRIPTION_BUNDLE
Valid subscription status values.
public
mixed
SUBSCRIPTION_BUNDLE
= 'bundle'
SUBSCRIPTION_SUBSCRIBED
public
mixed
SUBSCRIPTION_SUBSCRIBED
= 'subscribed'
VIEW_ARTICLE
Valid view location values.
public
mixed
VIEW_ARTICLE
= 'article'
VIEW_ISSUE
public
mixed
VIEW_ISSUE
= 'issue'
VIEW_ISSUE_TABLE_OF_CONTENTS
public
mixed
VIEW_ISSUE_TABLE_OF_CONTENTS
= 'issue_table_of_contents'
Properties
$horizontalSizeClass
The horizontal size class.
private
string|null
$horizontalSizeClass
= null
$maxColumns
The maximum number of columns.
private
int|null
$maxColumns
= null
$maxContentSizeCategory
The maximum content size category.
private
string|null
$maxContentSizeCategory
= null
$maxSpecifiedWidth
The maximum specified width.
private
int|null
$maxSpecifiedWidth
= null
$maxViewportAspectRatio
The maximum viewport aspect ratio.
private
float|null
$maxViewportAspectRatio
= null
$maxViewportWidth
The maximum viewport width in points.
private
int|null
$maxViewportWidth
= null
$minColumns
The minimum number of columns.
private
int|null
$minColumns
= null
$minContentSizeCategory
The minimum content size category.
private
string|null
$minContentSizeCategory
= null
$minSpecifiedWidth
The minimum specified width.
private
int|null
$minSpecifiedWidth
= null
$minViewportAspectRatio
The minimum viewport aspect ratio.
private
float|null
$minViewportAspectRatio
= null
$minViewportWidth
The minimum viewport width in points.
private
int|null
$minViewportWidth
= null
$platform
The platform to match.
private
string|null
$platform
= null
$preferredColorScheme
The preferred color scheme.
private
string|null
$preferredColorScheme
= null
$subscriptionStatus
The subscription status.
private
array<int, string>|null
$subscriptionStatus
= null
$verticalSizeClass
The vertical size class.
private
string|null
$verticalSizeClass
= null
$viewLocation
The view location.
private
string|null
$viewLocation
= null
Methods
compactWidth()
Create a condition for compact horizontal size class.
public
static compactWidth() : self
Return values
self —A new Condition instance.
darkMode()
Create a condition for dark mode.
public
static darkMode() : self
Return values
self —A new Condition instance.
iOS()
Create a condition for iOS platform only.
public
static iOS() : self
Return values
self —A new Condition instance.
jsonSerialize()
{@inheritdoc}
public
jsonSerialize() : array<string, mixed>
Return values
array<string, mixed>lightMode()
Create a condition for light mode.
public
static lightMode() : self
Return values
self —A new Condition instance.
macOS()
Create a condition for macOS platform only.
public
static macOS() : self
Return values
self —A new Condition instance.
regularWidth()
Create a condition for regular horizontal size class.
public
static regularWidth() : self
Return values
self —A new Condition instance.
setHorizontalSizeClass()
Set the horizontal size class.
public
setHorizontalSizeClass(string $sizeClass) : $this
Parameters
- $sizeClass : string
-
One of 'any', 'compact', 'regular'.
Return values
$thissetMaxColumns()
Set the maximum columns.
public
setMaxColumns(int $columns) : $this
Parameters
- $columns : int
-
Maximum column count.
Return values
$thissetMaxContentSizeCategory()
Set the maximum content size category.
public
setMaxContentSizeCategory(string $category) : $this
Parameters
- $category : string
-
The content size category.
Return values
$thissetMaxSpecifiedWidth()
Set the maximum specified width.
public
setMaxSpecifiedWidth(int $width) : $this
Parameters
- $width : int
-
Maximum width.
Return values
$thissetMaxViewportAspectRatio()
Set the maximum viewport aspect ratio.
public
setMaxViewportAspectRatio(float $ratio) : $this
Parameters
- $ratio : float
-
Maximum aspect ratio (width/height).
Return values
$thissetMaxViewportWidth()
Set the maximum viewport width.
public
setMaxViewportWidth(int $width) : $this
Parameters
- $width : int
-
Maximum width in points.
Return values
$thissetMinColumns()
Set the minimum columns.
public
setMinColumns(int $columns) : $this
Parameters
- $columns : int
-
Minimum column count.
Return values
$thissetMinContentSizeCategory()
Set the minimum content size category.
public
setMinContentSizeCategory(string $category) : $this
Parameters
- $category : string
-
The content size category.
Return values
$thissetMinSpecifiedWidth()
Set the minimum specified width.
public
setMinSpecifiedWidth(int $width) : $this
Parameters
- $width : int
-
Minimum width.
Return values
$thissetMinViewportAspectRatio()
Set the minimum viewport aspect ratio.
public
setMinViewportAspectRatio(float $ratio) : $this
Parameters
- $ratio : float
-
Minimum aspect ratio (width/height).
Return values
$thissetMinViewportWidth()
Set the minimum viewport width.
public
setMinViewportWidth(int $width) : $this
Parameters
- $width : int
-
Minimum width in points.
Return values
$thissetPlatform()
Set the platform.
public
setPlatform(string $platform) : $this
Parameters
- $platform : string
-
One of 'any', 'ios', 'macos'.
Return values
$thissetPreferredColorScheme()
Set the preferred color scheme.
public
setPreferredColorScheme(string $scheme) : $this
Parameters
- $scheme : string
-
One of 'any', 'light', 'dark'.
Return values
$thissetSubscriptionStatus()
Set the subscription status.
public
setSubscriptionStatus(array<int, string> $status) : $this
Parameters
- $status : array<int, string>
-
Array of subscription statuses.
Return values
$thissetVerticalSizeClass()
Set the vertical size class.
public
setVerticalSizeClass(string $sizeClass) : $this
Parameters
- $sizeClass : string
-
One of 'any', 'compact', 'regular'.
Return values
$thissetViewLocation()
Set the view location.
public
setViewLocation(string $location) : $this
Parameters
- $location : string
-
One of 'article', 'issue_table_of_contents', 'issue'.
Return values
$thisviewportWidth()
Create a condition for a viewport width range.
public
static viewportWidth([int|null $min = null ][, int|null $max = null ]) : self
Parameters
- $min : int|null = null
-
Minimum width in points.
- $max : int|null = null
-
Maximum width in points.
Return values
self —A new Condition instance.