set(DASHBOARDROUTES_SOURCES "APIRoutes.cpp" "StaticRoutes.cpp" "DashboardRoutes.cpp" "WSRoutes.cpp" "AuthRoutes.cpp" "RouteUtils.cpp" "PlayerActions.cpp" "AccountRoutes.cpp" "ClientAssets.cpp" "MaintenanceRoutes.cpp" "ReportRoutes.cpp" "EconomyPlaces.cpp" "SecurityRoutes.cpp" "WebhookRoutes.cpp" "EconomyJobs.cpp" "LiveWorld.cpp" "SettingsRoutes.cpp" "Background.cpp" "Scheduler.cpp" "SettingsCatalog.cpp" "BackupRoutes.cpp" "BackupFiles.cpp" "ReportViews.cpp" "CharacterTools.cpp" "CharacterRestore.cpp" "MissionTools.cpp" "CharacterProgress.cpp" "ServerRoutes.cpp" "LeaderboardRoutes.cpp" "VanityRoutes.cpp" "ChatRoutes.cpp" "Strikes.cpp" "Inspector.cpp" "CDClientBrowser.cpp" "SettingsHistory.cpp" "Announcements.cpp" "EventsCalendar.cpp" "LiveEventRoutes.cpp" "ChallengeRoutes.cpp" "InstanceLoad.cpp" "WorldView.cpp" "NifFile.cpp" "Scenery.cpp" "WorkerPool.cpp" "AccountModeration.cpp" "ModerationTools.cpp" "ModeratorHelper.cpp" "../ai/ClaudeClient.cpp" "../ai/ModeratorPrompt.cpp" "PublicRoutes.cpp" "Showcase.cpp" "FeaturedProperties.cpp" "PasswordRecovery.cpp" "PrometheusMetrics.cpp" "../email/SmtpClient.cpp" "../email/EmailService.cpp" "../email/OAuth2.cpp" "../notify/WebhookFormat.cpp" "../notify/Alerts.cpp" # Shared with the world servers, which add items and models the same way "${PROJECT_SOURCE_DIR}/dGame/dUtilities/ObjectIDManager.cpp" ) add_library(DashboardRoutes STATIC ${DASHBOARDROUTES_SOURCES}) target_include_directories(DashboardRoutes PRIVATE "${PROJECT_SOURCE_DIR}/dCommon" "${PROJECT_SOURCE_DIR}/dCommon/dClient" "${PROJECT_SOURCE_DIR}/dCommon/dEnums" "${PROJECT_SOURCE_DIR}/dDatabase" "${PROJECT_SOURCE_DIR}/dDatabase/CDClientDatabase" "${PROJECT_SOURCE_DIR}/dDatabase/CDClientDatabase/CDClientTables" "${PROJECT_SOURCE_DIR}/dDatabase/GameDatabase" "${PROJECT_SOURCE_DIR}/dDatabase/GameDatabase/ITables" "${PROJECT_SOURCE_DIR}/dDatabase/GameDatabase/MySQL" "${PROJECT_SOURCE_DIR}/dNet" "${PROJECT_SOURCE_DIR}/dWeb" "${PROJECT_SOURCE_DIR}/dServer" "${PROJECT_SOURCE_DIR}/thirdparty" "${PROJECT_SOURCE_DIR}/thirdparty/nlohmann" "${PROJECT_SOURCE_DIR}/thirdparty/libbcrypt/include" "${PROJECT_SOURCE_DIR}/dDashboardServer/auth" "${PROJECT_SOURCE_DIR}/dDashboardServer/routes" "${PROJECT_SOURCE_DIR}/dDashboardServer/email" "${PROJECT_SOURCE_DIR}/dDashboardServer/notify" "${PROJECT_SOURCE_DIR}/dDashboardServer/ai" "${PROJECT_SOURCE_DIR}/dChatFilter" # word rules for the chat filter page "${PROJECT_SOURCE_DIR}/dGame/dUtilities" # ObjectIDManager.h ) target_compile_definitions(DashboardRoutes PRIVATE PROJECT_VERSION="\"${PROJECT_VERSION}\"") target_link_libraries(DashboardRoutes PRIVATE ${COMMON_LIBRARIES} dWeb dServer sqlite3 OpenSSL::Crypto CURL::libcurl)