use crate::Backend;
use axum::{extract::State, routing::get, Json, Router};
use openvet_common::rust::*;
use std::collections::BTreeSet;
async fn crates_list(State(backend): State<Backend>) -> Json<BTreeSet<CrateName>> {
let list = backend.crates_list().await.unwrap();
Json(list)
}
async fn crate_info(_backend: State<Backend>) {
todo!()
}
impl Backend {
pub fn router_api_v1(&self) -> Router {
Router::new()
.route("/crates", get(crates_list))
.route("/crate/:name", get(crate_info))
.with_state(self.clone())
}
}