use actix_web::web; pub mod handlers; pub mod stream; pub mod watch; pub fn init_chat_routes(cfg: &mut web::ServiceConfig) { cfg.service( web::scope("/ai/conversations") .route("", web::post().to(handlers::conversation::conversation_create)) .route("", web::get().to(handlers::conversation::conversation_list)) .route( "/{conversation_id}", web::get().to(handlers::conversation::conversation_get), ) .route( "/{conversation_id}", web::patch().to(handlers::conversation::conversation_update), ) .route( "/{conversation_id}", web::delete().to(handlers::conversation::conversation_delete), ) .route( "/{conversation_id}/watch", web::get().to(watch::conversation_watch), ) .route( "/{conversation_id}/share", web::post().to(handlers::share::conversation_share), ) .route( "/{conversation_id}/share/{share_token}", web::get().to(handlers::share::shared_conversation_get), ) .route( "/{conversation_id}/messages", web::get().to(handlers::message::message_list), ) .route( "/{conversation_id}/messages", web::post().to(handlers::message::message_create), ) .route( "/{conversation_id}/messages/{message_id}", web::get().to(handlers::message::message_get), ) .route( "/{conversation_id}/messages/{message_id}/stop", web::post().to(handlers::message::message_stop), ) .route( "/{conversation_id}/messages/{message_id}/resend", web::post().to(handlers::message::message_resend), ) .route( "/{conversation_id}/messages/{message_id}/fork/{target_message_id}", web::post().to(handlers::fork::message_fork), ) .route( "/{conversation_id}/messages/{message_id}/forks", web::get().to(handlers::fork::message_forks), ) .route( "/{conversation_id}/messages/{message_id}/stream", web::get().to(handlers::message::message_stream), ) .route( "/{conversation_id}/messages/{message_id}/children", web::get().to(handlers::message::message_children), ) .route( "/{conversation_id}/messages/{message_id}/edit", web::post().to(handlers::message::message_edit), ) .route( "/{conversation_id}/messages/{message_id}/versions", web::get().to(handlers::message::message_versions), ) .route( "/{conversation_id}/messages/{message_id}/switch-version", web::post().to(handlers::message::message_switch_version), ), ); }