diff --git a/migrations/2025_04_24_103227_add_renderer_to_custom_fields_table.php b/migrations/2025_04_24_103227_add_renderer_to_custom_fields_table.php new file mode 100644 index 0000000..68455d5 --- /dev/null +++ b/migrations/2025_04_24_103227_add_renderer_to_custom_fields_table.php @@ -0,0 +1,32 @@ +text('renderer')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('custom_fields', function (Blueprint $table) { + $table->dropColumn('renderer'); + }); + } +} diff --git a/src/App/Http/Controllers/PlainCustomFieldController.php b/src/App/Http/Controllers/PlainCustomFieldController.php index ff00a2d..3b00868 100644 --- a/src/App/Http/Controllers/PlainCustomFieldController.php +++ b/src/App/Http/Controllers/PlainCustomFieldController.php @@ -33,7 +33,7 @@ public function __construct(CustomField $customField) * @param string|null $type * @return JsonResponse */ - public function index(string $type = null): JsonResponse + public function index(?string $type = null): JsonResponse { return response()->json($this->customField::plain($type)->get()); } diff --git a/src/App/Http/Requests/CustomFieldCreateRequest.php b/src/App/Http/Requests/CustomFieldCreateRequest.php index 9305546..46fa297 100644 --- a/src/App/Http/Requests/CustomFieldCreateRequest.php +++ b/src/App/Http/Requests/CustomFieldCreateRequest.php @@ -47,6 +47,7 @@ public function rules() 'validation_id' => 'nullable|exists:custom_field_validations,id', 'group' => 'nullable|string', 'order' => 'nullable|integer', + 'renderer' => 'nullable|string', ]; } diff --git a/src/App/Http/Requests/CustomFieldUpdateRequest.php b/src/App/Http/Requests/CustomFieldUpdateRequest.php index a86f329..8ea3fed 100644 --- a/src/App/Http/Requests/CustomFieldUpdateRequest.php +++ b/src/App/Http/Requests/CustomFieldUpdateRequest.php @@ -50,6 +50,7 @@ public function rules() 'validation_id' => 'nullable|exists:custom_field_validations,id', 'group' => 'nullable|string', 'order' => 'nullable|integer', + 'renderer' => 'nullable|string', ]; return Arr::except($rules, self::LOCKED_FOR_EDITING); diff --git a/src/App/Http/Requests/PlainCustomFieldRequest.php b/src/App/Http/Requests/PlainCustomFieldRequest.php index a8e3b22..b8bdfb4 100644 --- a/src/App/Http/Requests/PlainCustomFieldRequest.php +++ b/src/App/Http/Requests/PlainCustomFieldRequest.php @@ -44,6 +44,7 @@ public function rules() 'validation_id' => 'nullable|exists:custom_field_validations', 'group' => 'nullable|string', 'order' => 'nullable|integer', + 'renderer' => 'nullable|string', ]; } diff --git a/src/App/Http/Requests/RemoteCustomFieldRequest.php b/src/App/Http/Requests/RemoteCustomFieldRequest.php index aa090f4..a5986b2 100644 --- a/src/App/Http/Requests/RemoteCustomFieldRequest.php +++ b/src/App/Http/Requests/RemoteCustomFieldRequest.php @@ -44,6 +44,7 @@ public function rules() 'validation_id' => 'nullable|exists:custom_field_validations', 'group' => 'nullable|string', 'order' => 'nullable|integer', + 'renderer' => 'nullable|string', 'remote' => 'required|array', 'remote.url' => 'required|url', 'remote.method' => 'required|in:GET,POST,PUT', diff --git a/src/App/Http/Requests/SelectionCustomFieldRequest.php b/src/App/Http/Requests/SelectionCustomFieldRequest.php index 95c90ff..c0a2491 100644 --- a/src/App/Http/Requests/SelectionCustomFieldRequest.php +++ b/src/App/Http/Requests/SelectionCustomFieldRequest.php @@ -44,6 +44,7 @@ public function rules() 'validation_id' => 'nullable|exists:custom_field_validations', 'group' => 'nullable|string', 'order' => 'nullable|integer', + 'renderer' => 'nullable|string', 'selection' => 'array', 'selection.multiselect' => 'boolean', 'values' => 'array', diff --git a/src/App/Models/CustomField.php b/src/App/Models/CustomField.php index ff5eb59..7137389 100644 --- a/src/App/Models/CustomField.php +++ b/src/App/Models/CustomField.php @@ -80,7 +80,7 @@ public function selectable(): MorphTo return $this->morphTo(); } - public function scopePlain(Builder $query, string $subType = null): Builder + public function scopePlain(Builder $query, ?string $subType = null): Builder { /** @var PlainType $plainType */ $plainType = app(PlainType::class);