• File: Download.php
  • Full Path: /home/bravrvjk/itiministry.org/wp-content/plugins/give/src/License/DataTransferObjects/Download.php
  • Date Modified: 05/22/2025 12:18 AM
  • File size: 1.14 KB
  • MIME-type: text/x-php
  • Charset: utf-8
<?php

namespace Give\License\DataTransferObjects;

/**
 * @since 4.3.0
 */
class Download
{
    public int $index;
    public int $attachmentId;
    public string $thumbnailSize;
    public string $name;
    public string $file;
    public string $condition;
    public int $arrayIndex;
    public string $pluginSlug;
    public string $readme;
    public string $currentVersion;

    /**
     * @since 4.3.0
     */
    public static function fromData(array $data): self
    {
        $self = new self();
        $self->index = (int)($data['index'] ?? 0);
        $self->attachmentId = (int)($data['attachment_id'] ?? 0);
        $self->thumbnailSize = (string)($data['thumbnail_size'] ?? 'thumbnail');
        $self->name = (string)($data['name'] ?? '');
        $self->file = (string)($data['file'] ?? '');
        $self->condition = (string)($data['condition'] ?? '');
        $self->arrayIndex = (int)($data['array_index'] ?? 0);
        $self->pluginSlug = (string)($data['plugin_slug'] ?? '');
        $self->readme = (string)($data['readme'] ?? '');
        $self->currentVersion = (string)($data['current_version'] ?? '');

        return $self;
    }
}