<?php namespace App\Transformer\ActivityPub\Verb; use App\Status; use League\Fractal; class UndoAnnounce extends Fractal\TransformerAbstract { public function transform(Status $status) { return [ '@context' => 'https://www.w3.org/ns/activitystreams', 'id' => $status->permalink('/undo'), 'actor' => $status->profile->permalink(), 'type' => 'Undo', 'object' => [ 'id' => $status->permalink(), 'type' => 'Announce', 'actor' => $status->profile->permalink(), 'to' => ['https://www.w3.org/ns/activitystreams#Public'], 'cc' => [ $status->profile->permalink(), $status->profile->follower_url ?? $status->profile->permalink('/followers') ], 'published' => $status->created_at->format(DATE_ISO8601), 'object' => $status->parent()->url(), ] ]; } }