Implement dark mode, bug report page, and schema dump

This commit is contained in:
2025-11-27 15:06:45 +08:00
parent 13bc6db529
commit 83602b1ed1
91 changed files with 1078 additions and 2291 deletions

View File

@@ -0,0 +1,67 @@
<x-guest-layout>
<div class="max-w-3xl mx-auto py-10">
<div class="card shadow-lg">
<div class="card-header flex items-center justify-between">
<div>
<p class="text-xs uppercase tracking-wide text-slate-500 dark:text-slate-400">Beta / Internal</p>
<h1 class="text-lg font-semibold text-slate-800 dark:text-slate-100">問題回報</h1>
</div>
</div>
<div class="card-body space-y-6">
@if (session('status'))
<div class="rounded-lg border border-green-200 bg-green-50 px-4 py-3 text-green-800 dark:border-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-100">
{{ session('status') }}
</div>
@endif
<form action="{{ route('public.bug-report.store') }}" method="POST" enctype="multipart/form-data" class="space-y-4">
@csrf
<div>
<label class="block text-sm font-medium mb-1">標題 *</label>
<input type="text" name="title" value="{{ old('title') }}" required class="w-full">
@error('title') <p class="text-sm text-red-600 mt-1">{{ $message }}</p> @enderror
</div>
<div>
<label class="block text-sm font-medium mb-1">描述(可貼重現步驟) *</label>
<textarea name="description" rows="5" required class="w-full">{{ old('description') }}</textarea>
@error('description') <p class="text-sm text-red-600 mt-1">{{ $message }}</p> @enderror
</div>
<div class="grid grid-cols-1 sm:grid-cols-2 gap-4">
<div>
<label class="block text-sm font-medium mb-1">嚴重度 *</label>
<select name="severity" required class="w-full">
<option value="low" @selected(old('severity') === 'low')>UI/文案小問題)</option>
<option value="medium" @selected(old('severity') === 'medium')>中(功能可用但有異常)</option>
<option value="high" @selected(old('severity') === 'high')>高(阻斷流程/錯誤)</option>
</select>
@error('severity') <p class="text-sm text-red-600 mt-1">{{ $message }}</p> @enderror
</div>
<div>
<label class="block text-sm font-medium mb-1">回報人 Email選填便於聯繫</label>
<input type="email" name="reporter_email" value="{{ old('reporter_email') }}" class="w-full">
@error('reporter_email') <p class="text-sm text-red-600 mt-1">{{ $message }}</p> @enderror
</div>
</div>
<div>
<label class="block text-sm font-medium mb-1">附件(選填,最多 10MB</label>
<div class="upload-area">
<p>拖曳或選擇檔案(螢幕截圖 / PDF</p>
<input type="file" name="attachment" class="w-full text-sm text-slate-600 dark:text-slate-200">
</div>
@error('attachment') <p class="text-sm text-red-600 mt-1">{{ $message }}</p> @enderror
</div>
<div class="flex justify-end">
<button type="submit" class="inline-flex items-center px-4 py-2 rounded-md bg-indigo-600 text-white hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-indigo-400">
送出回報
</button>
</div>
</form>
</div>
</div>
</div>
</x-guest-layout>