Laravel Cloudflare

PHP MIT

Complete Laravel Cloudflare API SDK for managing DNS records, zones, cache, SSL, firewall rules, workers, analytics, and Cloudflare services with a fluent Laravel-first developer experience.

Stars
2
Forks
0
Downloads
N/A
Open Issues
0
Files main

Repository Files

Loading file structure...
src/DTOs/StreamVideo.php
<?php

namespace Vendor\Cloudflare\DTOs;

class StreamVideo
{
    public string $uid;

    public string $thumbnail;

    public bool $readyToStream;

    public array $status;

    public array $meta;

    public string $created;

    public string $modified;

    public int $size;

    public float $duration;

    public int $maxDurationSeconds;

    public string $preview;

    /**
     * Create a new DTO instance from array data.
     */
    public static function fromArray(array $data): self
    {
        $dto = new self;
        $dto->uid = (string) ($data['uid'] ?? '');
        $dto->thumbnail = (string) ($data['thumbnail'] ?? '');
        $dto->readyToStream = (bool) ($data['ready_to_stream'] ?? false);
        $dto->status = (array) ($data['status'] ?? []);
        $dto->meta = (array) ($data['meta'] ?? []);
        $dto->created = (string) ($data['created'] ?? '');
        $dto->modified = (string) ($data['modified'] ?? '');
        $dto->size = (int) ($data['size'] ?? 0);
        $dto->duration = (float) ($data['duration'] ?? 0.0);
        $dto->maxDurationSeconds = (int) ($data['max_duration_seconds'] ?? 0);
        $dto->preview = (string) ($data['preview'] ?? '');

        return $dto;
    }
}