MentionTransformer.php 549 B

123456789101112131415161718192021
  1. <?php
  2. namespace App\Transformer\Api\Mastodon\v1;
  3. use App\Profile;
  4. use League\Fractal;
  5. class MentionTransformer extends Fractal\TransformerAbstract
  6. {
  7. public function transform(Profile $profile)
  8. {
  9. $local = $profile->domain == null;
  10. $username = $local ? $profile->username : explode('@', substr($profile->username, 1))[0];
  11. return [
  12. 'id' => (string) $profile->id,
  13. 'url' => $profile->url(),
  14. 'username' => $profile->username,
  15. 'acct' => $username,
  16. ];
  17. }
  18. }