<?php

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

return new class extends Migration
{
    public function up(): void
    {
        Schema::create('settings', function (Blueprint $table) {
            $table->id();
            $table->string('key')->unique();
            $table->text('value')->nullable();
            $table->timestamps();
        });

        // Seed defaults
        $defaults = [
            ['key' => 'gpu_enabled',  'value' => 'true'],
            ['key' => 'gpu_device',   'value' => '0'],
            ['key' => 'gpu_encoder',  'value' => 'h264_nvenc'],
            ['key' => 'gpu_hwaccel',  'value' => 'cuda'],
            ['key' => 'gpu_preset',   'value' => 'p4'],
        ];
        foreach ($defaults as $row) {
            DB::table('settings')->insert(array_merge($row, [
                'created_at' => now(), 'updated_at' => now(),
            ]));
        }
    }

    public function down(): void
    {
        Schema::dropIfExists('settings');
    }
};
