Expand support API validation for writable resources
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled

This commit is contained in:
Codex Agent
2026-01-28 20:46:12 +01:00
parent 981df2ee45
commit f0e8cee850
7 changed files with 367 additions and 17 deletions

View File

@@ -1,7 +1,12 @@
<?php
use App\Http\Requests\Support\Resources\SupportBlogPostResourceRequest;
use App\Http\Requests\Support\Resources\SupportDataExportResourceRequest;
use App\Http\Requests\Support\Resources\SupportEmotionResourceRequest;
use App\Http\Requests\Support\Resources\SupportEventResourceRequest;
use App\Http\Requests\Support\Resources\SupportPhotoboothSettingResourceRequest;
use App\Http\Requests\Support\Resources\SupportPhotoResourceRequest;
use App\Http\Requests\Support\Resources\SupportTaskResourceRequest;
use App\Http\Requests\Support\Resources\SupportTenantFeedbackResourceRequest;
use App\Http\Requests\Support\Resources\SupportTenantResourceRequest;
use App\Http\Requests\Support\Resources\SupportUserResourceRequest;
@@ -90,14 +95,17 @@ return [
'events' => [
'model' => Event::class,
'search' => ['name', 'slug'],
'read_only' => true,
'abilities' => [
'read' => ['support:read'],
'write' => ['support:write'],
],
'validation' => [
'update' => SupportEventResourceRequest::class,
],
'mutations' => [
'create' => false,
'update' => false,
'delete' => false,
'update' => true,
'delete' => true,
],
],
'event-types' => [
@@ -116,9 +124,17 @@ return [
'photos' => [
'model' => Photo::class,
'search' => ['id'],
'read_only' => true,
'abilities' => [
'read' => ['support:read'],
'write' => ['support:write'],
],
'validation' => [
'update' => SupportPhotoResourceRequest::class,
],
'mutations' => [
'create' => false,
'update' => true,
'delete' => true,
],
],
'event-purchases' => [
@@ -321,40 +337,52 @@ return [
'blog-posts' => [
'model' => BlogPost::class,
'search' => ['title', 'slug'],
'read_only' => true,
'abilities' => [
'read' => ['support:content'],
'write' => ['support:content'],
],
'validation' => [
'create' => SupportBlogPostResourceRequest::class,
'update' => SupportBlogPostResourceRequest::class,
],
'mutations' => [
'create' => false,
'update' => false,
'delete' => false,
'create' => true,
'update' => true,
'delete' => true,
],
],
'emotions' => [
'model' => Emotion::class,
'search' => ['name', 'slug'],
'read_only' => true,
'abilities' => [
'read' => ['support:content'],
'write' => ['support:content'],
],
'validation' => [
'create' => SupportEmotionResourceRequest::class,
'update' => SupportEmotionResourceRequest::class,
],
'mutations' => [
'create' => false,
'update' => false,
'delete' => false,
'create' => true,
'update' => true,
'delete' => true,
],
],
'tasks' => [
'model' => Task::class,
'search' => ['title'],
'read_only' => true,
'abilities' => [
'read' => ['support:read'],
'read' => ['support:content'],
'write' => ['support:content'],
],
'validation' => [
'create' => SupportTaskResourceRequest::class,
'update' => SupportTaskResourceRequest::class,
],
'mutations' => [
'create' => false,
'update' => false,
'delete' => false,
'create' => true,
'update' => true,
'delete' => true,
],
],
'task-collections' => [