<?php

use Illuminate\Support\Facades\Route;

/*
| Laravel 为本文件自动加前缀 `api`，此处再写 `v1`，故完整路径形如 `/api/v1/health`。
*/

Route::prefix('v1')->group(function (): void {
    // 公开路由（无需登录）
    require __DIR__.'/api/v1/public.php';

    // 玩家端路由（需 lottery.player）
    require __DIR__.'/api/v1/player.php';

    // 管理端路由
    Route::prefix('admin')
        ->name('api.v1.admin.')
        ->group(function (): void {
            // 认证（无需 Token，单独限流）
            require __DIR__.'/api/v1/admin/auth.php';

            // 以下需 auth:sanctum + lottery.admin
            Route::middleware(['auth:sanctum', 'lottery.admin', 'admin.audit'])
                ->group(function (): void {
                    require __DIR__.'/api/v1/admin/core.php';
                    require __DIR__.'/api/v1/admin/wallet.php';
                    require __DIR__.'/api/v1/admin/player.php';
                    require __DIR__.'/api/v1/admin/currency.php';
                    require __DIR__.'/api/v1/admin/integration.php';
                    require __DIR__.'/api/v1/admin/ticket.php';
                    require __DIR__.'/api/v1/admin/draw.php';
                    require __DIR__.'/api/v1/admin/jackpot.php';
                    require __DIR__.'/api/v1/admin/config.php';
                    require __DIR__.'/api/v1/admin/user.php';
                    require __DIR__.'/api/v1/admin/agent.php';
                    require __DIR__.'/api/v1/admin/agent-settlement.php';
                    require __DIR__.'/api/v1/admin/report.php';
                });
        });
});
