- Delete old Vite+Svelte frontend - Initialize new SvelteKit project with TypeScript - Configure Tailwind CSS v4 + DaisyUI - Implement JWT authentication with auto-refresh - Create login page with form validation (Zod) - Add protected route guards - Update Docker configuration for single-stage build - Add E2E tests with Playwright (6/11 passing) - Fix Svelte 5 reactivity with $state() runes Known issues: - 5 E2E tests failing (timing/async issues) - Token refresh implementation needs debugging - Validation error display timing
32 lines
981 B
PHP
32 lines
981 B
PHP
<?php
|
|
|
|
use App\Http\Controllers\Api\AuthController;
|
|
use App\Http\Middleware\JwtAuth;
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| API Routes
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| These routes are loaded by the RouteServiceProvider within a group which
|
|
| is assigned the "api" middleware group.
|
|
|
|
|
*/
|
|
|
|
Route::post('/auth/login', [AuthController::class, 'login']);
|
|
Route::post('/auth/refresh', [AuthController::class, 'refresh']);
|
|
|
|
Route::middleware(JwtAuth::class)->group(function () {
|
|
Route::post('/auth/logout', [AuthController::class, 'logout']);
|
|
|
|
Route::get('/user', function (\Illuminate\Http\Request $request) {
|
|
return response()->json([
|
|
'id' => $request->user()->id,
|
|
'name' => $request->user()->name,
|
|
'email' => $request->user()->email,
|
|
'role' => $request->user()->role,
|
|
]);
|
|
});
|
|
});
|