refactor: replace custom CRM with Monica fork
Some checks failed
Build & Push Monica Image to Gitea Registry / build-and-push (push) Failing after 9s

This commit is contained in:
Kroonk
2026-05-22 16:19:55 +02:00
parent 38cc4c09ca
commit a213a1dba0
2215 changed files with 242567 additions and 6015 deletions

View File

@@ -0,0 +1,40 @@
<?php
namespace App\Http\Resources\Conversation;
use App\Helpers\DateHelper;
use Illuminate\Http\Resources\Json\JsonResource;
use App\Http\Resources\Conversation\Message as MessageResource;
use App\Http\Resources\Contact\ContactShort as ContactShortResource;
use App\Http\Resources\Settings\ContactFieldType\ContactFieldType as ContactFieldTypeResource;
/**
* @extends JsonResource<\App\Models\Contact\Conversation>
*/
class Conversation extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request $request
* @return array|\Illuminate\Contracts\Support\Arrayable|\JsonSerializable
*/
public function toArray($request)
{
return [
'id' => $this->id,
'uuid' => $this->uuid,
'object' => 'conversation',
'happened_at' => DateHelper::getTimestamp($this->happened_at),
'messages' => MessageResource::collection($this->messages),
'contact_field_type' => new ContactFieldTypeResource($this->contactFieldType),
'url' => route('api.conversation', $this->id),
'account' => [
'id' => $this->account_id,
],
'contact' => new ContactShortResource($this->contact),
'created_at' => DateHelper::getTimestamp($this->created_at),
'updated_at' => DateHelper::getTimestamp($this->updated_at),
];
}
}

View File

@@ -0,0 +1,40 @@
<?php
namespace App\Http\Resources\Conversation;
use App\Helpers\DateHelper;
use Illuminate\Http\Resources\Json\JsonResource;
use App\Http\Resources\Contact\ContactShort as ContactShortResource;
/**
* @extends JsonResource<\App\Models\Contact\Message>
*/
class Message extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request $request
* @return array|\Illuminate\Contracts\Support\Arrayable|\JsonSerializable
*/
public function toArray($request)
{
return [
'id' => $this->id,
'uuid' => $this->uuid,
'object' => 'message',
'content' => $this->content,
'written_at' => DateHelper::getTimestamp($this->written_at),
'written_by_me' => (bool) $this->written_by_me,
'account' => [
'id' => $this->account_id,
],
'contact' => new ContactShortResource($this->contact),
'conversation' => [
'id' => $this->conversation->id,
],
'created_at' => DateHelper::getTimestamp($this->created_at),
'updated_at' => DateHelper::getTimestamp($this->updated_at),
];
}
}