Something went wrong. Try again.
Parse and validate AT Protocol Lexicons with DTO generation for Laravel
Something went wrong. Try again.
2.2 kB · 77 lines
PHP
at dev
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778<?php
namespace SocialDept\AtpSchema\Generated\Tools\Ozone\Moderation\Defs;
use Carbon\Carbon;use SocialDept\AtpSchema\Data\Data;use SocialDept\AtpSchema\Support\UnionHelper;
/** * GENERATED CODE - DO NOT EDIT * * Lexicon: tools.ozone.moderation.defs.modEventView * Type: object * * @property int $id * @property mixed $event * @property mixed $subject * @property array<string> $subjectBlobCids * @property string $createdBy * @property Carbon $createdAt * @property string|null $creatorHandle * @property string|null $subjectHandle * @property mixed $modTool * * Constraints: * - Required: id, event, subject, subjectBlobCids, createdBy, createdAt * - createdBy: Format: did * - createdAt: Format: datetime */class ModEventView extends Data{ public function __construct( public readonly int $id, public readonly mixed $event, public readonly mixed $subject, public readonly array $subjectBlobCids, public readonly string $createdBy, public readonly Carbon $createdAt, public readonly ?string $creatorHandle = null, public readonly ?string $subjectHandle = null, public readonly mixed $modTool = null ) { }
/** * Get the lexicon NSID for this data type. * * @return string */ public static function getLexicon(): string { return 'tools.ozone.moderation.defs.modEventView'; }
/** * Create an instance from an array. * * @param array $data The data array * @return static */ public static function fromArray(array $data): static { return new static( id: $data['id'], event: UnionHelper::validateOpenUnion($data['event']), subject: UnionHelper::validateOpenUnion($data['subject']), subjectBlobCids: $data['subjectBlobCids'], createdBy: $data['createdBy'], createdAt: Carbon::parse($data['createdAt']), creatorHandle: $data['creatorHandle'] ?? null, subjectHandle: $data['subjectHandle'] ?? null, modTool: $data['modTool'] ?? null ); }
}