From 8fdd3fc1305622153ccf5cbc91f60878190f3982 Mon Sep 17 00:00:00 2001 From: Matthias Guillitte Date: Sat, 16 Aug 2025 14:27:52 +0200 Subject: [PATCH] Created Resume component data type --- .../ResumeComponentDataTypeController.php | 66 +++++++++++++++++++ .../StoreResumeComponentDataTypeRequest.php | 28 ++++++++ .../UpdateResumeComponentDataTypeRequest.php | 28 ++++++++ app/Models/ResumeComponentDataType.php | 17 +++++ .../ResumeComponentDataTypePolicy.php | 66 +++++++++++++++++++ ...eate_resume_component_data_types_table.php | 31 +++++++++ 6 files changed, 236 insertions(+) create mode 100644 app/Http/Controllers/ResumeComponentDataTypeController.php create mode 100644 app/Http/Requests/StoreResumeComponentDataTypeRequest.php create mode 100644 app/Http/Requests/UpdateResumeComponentDataTypeRequest.php create mode 100644 app/Models/ResumeComponentDataType.php create mode 100644 app/Policies/ResumeComponentDataTypePolicy.php create mode 100644 database/migrations/2025_08_16_113258_create_resume_component_data_types_table.php diff --git a/app/Http/Controllers/ResumeComponentDataTypeController.php b/app/Http/Controllers/ResumeComponentDataTypeController.php new file mode 100644 index 0000000..43b0c0b --- /dev/null +++ b/app/Http/Controllers/ResumeComponentDataTypeController.php @@ -0,0 +1,66 @@ +|string> + */ + public function rules(): array + { + return [ + // + ]; + } +} diff --git a/app/Http/Requests/UpdateResumeComponentDataTypeRequest.php b/app/Http/Requests/UpdateResumeComponentDataTypeRequest.php new file mode 100644 index 0000000..52a716c --- /dev/null +++ b/app/Http/Requests/UpdateResumeComponentDataTypeRequest.php @@ -0,0 +1,28 @@ +|string> + */ + public function rules(): array + { + return [ + // + ]; + } +} diff --git a/app/Models/ResumeComponentDataType.php b/app/Models/ResumeComponentDataType.php new file mode 100644 index 0000000..9a940cc --- /dev/null +++ b/app/Models/ResumeComponentDataType.php @@ -0,0 +1,17 @@ + */ + use HasFactory; + + protected $fillable = [ + 'data_structure', + 'vue_component_name' + ]; +} diff --git a/app/Policies/ResumeComponentDataTypePolicy.php b/app/Policies/ResumeComponentDataTypePolicy.php new file mode 100644 index 0000000..432c152 --- /dev/null +++ b/app/Policies/ResumeComponentDataTypePolicy.php @@ -0,0 +1,66 @@ +id(); + + $table->json('data_structure')->comment('JSON structure to define the data validation in laravel validation format (https://laravel.com/docs/12.x/validation#quick-writing-the-validation-logic)'); + $table->string('vue_component_name'); + + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('resume_component_data_types'); + } +};