| use Illuminate\Support\Facades\Route; | |
| use Inertia\Inertia; | |
| use Laravel\Fortify\Features; | |
| Route::inertia('/', 'welcome', [ | |
| 'canRegister' => Features::enabled(Features::registration()), | |
| ])->name('home'); | |
| Route::inertia('dashboard', 'dashboard')->name('dashboard'); | |
| Route::inertia('register/mahasiswa', 'auth/register-mahasiswa')->name('register.mahasiswa'); | |
| Route::inertia('register/dosen', 'auth/register-dosen')->name('register.dosen'); | |
| Route::inertia('embed', 'embed')->name('embed'); | |
| Route::inertia('admin/login', 'auth/admin-login')->name('admin.login'); | |
| Route::middleware('rag.auth:admin')->prefix('admin')->name('admin.')->group(function (): void { | |
| Route::inertia('/', 'admin/dashboard')->name('dashboard'); | |
| Route::inertia('rag-config', 'admin/rag-config')->name('rag-config'); | |
| Route::inertia('llm-config', 'admin/llm-config')->name('llm-config'); | |
| Route::inertia('vector-retrieval-config', 'admin/vector-retrieval-config')->name('vector-retrieval-config'); | |
| Route::inertia('vectordb-config', 'admin/vectordb-config')->name('vectordb-config'); | |
| Route::inertia('retrieval-config', 'admin/retrieval-config')->name('retrieval-config'); | |
| Route::inertia('api-keys', 'admin/api-keys')->name('api-keys.index'); | |
| Route::inertia('users', 'admin/users')->name('users.index'); | |
| Route::inertia('pengaturan', 'admin/pengaturan')->name('pengaturan'); | |
| }); | |
| Route::middleware('rag.auth:student')->group(function (): void { | |
| Route::inertia('mahasiswa', 'mahasiswa')->name('mahasiswa'); | |
| Route::get('mahasiswa/{sessionId}', fn (string $sessionId) => Inertia::render('mahasiswa-chat', [ | |
| 'sessionId' => $sessionId, | |
| ]))->name('mahasiswa.show'); | |
| }); | |
| Route::middleware('rag.auth:lecturer')->group(function (): void { | |
| Route::inertia('dosen', 'dosen')->name('dosen'); | |
| Route::get('dosen/{courseId}', fn (string $courseId) => Inertia::render('dosen-detail', [ | |
| 'courseId' => $courseId, | |
| ]))->name('dosen.show'); | |
| }); | |
| require __DIR__.'/settings.php'; | |