Appearance
FlexibleDateTimeCast
php
class Zairakai\LaravelTwitch\Dto\EventSub\Casts\FlexibleDateTimeCast implements CastCasts Twitch RFC3339 timestamps to Carbon.
Twitch sends variable fractional-second precision (.123Z millisecond, .171067Z microsecond, or none at all) and spatie/laravel-data's default DateTimeInterfaceCast only tries a single fixed format (DATE_ATOM, no fractional seconds) - it rejects every real Twitch example payload. Carbon::parse() handles all ISO8601 variants natively, no format guessing needed.
Source: src/Dto/EventSub/Casts/FlexibleDateTimeCast.php
Methods
cast()
php
public function cast(DataProperty $property, mixed $value, array $properties, CreationContext $context): Carbon|Uncastable