<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     */
    public function up(): void
    {
        Schema::create('tracked_result_images', function (Blueprint $table) {
            $table->unsignedBigInteger('tracked_result_id');
            $table->unsignedBigInteger('media_item_id');
            $table->unsignedInteger('position')->nullable();
            $table->primary(['tracked_result_id', 'media_item_id']);

            $table->foreign('tracked_result_id')->references('id')
                ->on('tracked_results')->onDelete('CASCADE')->onUpdate('CASCADE');
            $table->foreign('media_item_id')->references('id')
                ->on('media_items')->onDelete('CASCADE')->onUpdate('CASCADE');
        });
    }

    /**
     * Reverse the migrations.
     */
    public function down(): void
    {
        Schema::dropIfExists('tracked_result_images');
    }
};
