- Removed `SocialMediaService` and migrated core post generation logic to `GeneratePostService`. - Added `GetAllChatMessagesAction` for fetching chat history. - Introduced `MessageDto`, `MessageResource`, and `MessageCollection` for consistent backend API responses. - Updated frontend state and services to support JSON:API-compliant chat messages and history retrieval. - Improved typings and casting for chat message data.
34 lines
767 B
PHP
34 lines
767 B
PHP
<?php
|
|
|
|
namespace App\Http\Resources\Chats;
|
|
|
|
use App\Data\Chats\MessageDto;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Http\Resources\JsonApi\JsonApiResource;
|
|
|
|
/**
|
|
* @property MessageDto $resource
|
|
*/
|
|
class MessageResource extends JsonApiResource
|
|
{
|
|
public function type(): string
|
|
{
|
|
return 'messages';
|
|
}
|
|
|
|
public function resolveResourceIdentifier($request): string
|
|
{
|
|
return $this->resource->id;
|
|
}
|
|
|
|
public function toAttributes(Request $request): array
|
|
{
|
|
return [
|
|
'role' => $this->resource->role,
|
|
'content' => $this->resource->content,
|
|
'attachments' => $this->resource->attachments,
|
|
'createdAt' => $this->resource->createdAt->toIso8601String(),
|
|
];
|
|
}
|
|
}
|