feat(cms): expose public document api and trigger site revalidation

This commit is contained in:
2026-02-11 09:00:11 +08:00
parent b6e18a83ec
commit 4e7ef92d0b
10 changed files with 489 additions and 50 deletions

View File

@@ -0,0 +1,25 @@
<?php
namespace App\Http\Resources;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;
class PublicDocumentResource extends JsonResource
{
public function toArray(Request $request): array
{
return array_merge(
(new PublicDocumentCollectionResource($this))->toArray($request),
[
'versions' => PublicDocumentVersionResource::collection($this->whenLoaded('versions')),
'audit' => [
'view_count' => $this->view_count,
'download_count' => $this->download_count,
'last_updated_by' => $this->lastUpdatedBy?->name,
'created_by' => $this->createdBy?->name,
],
]
);
}
}