refactor: move DB to shared crate, convert push endpoints to server functions, remove dead REST handlers
All checks were successful
Build MIPS Binary / build (push) Successful in 5m17s
All checks were successful
Build MIPS Binary / build (push) Successful in 5m17s
This commit is contained in:
22
shared/src/server_fns/push.rs
Normal file
22
shared/src/server_fns/push.rs
Normal file
@@ -0,0 +1,22 @@
|
||||
use leptos::prelude::*;
|
||||
|
||||
#[server(GetPushPublicKey, "/api/server_fns")]
|
||||
pub async fn get_public_key() -> Result<String, ServerFnError> {
|
||||
let key = std::env::var("VAPID_PUBLIC_KEY")
|
||||
.map_err(|_| ServerFnError::new("VAPID_PUBLIC_KEY not configured"))?;
|
||||
Ok(key)
|
||||
}
|
||||
|
||||
#[server(SubscribePush, "/api/server_fns")]
|
||||
pub async fn subscribe_push(
|
||||
endpoint: String,
|
||||
p256dh: String,
|
||||
auth: String,
|
||||
) -> Result<(), ServerFnError> {
|
||||
let db_ctx = expect_context::<crate::DbContext>();
|
||||
db_ctx
|
||||
.db
|
||||
.save_push_subscription(&endpoint, &p256dh, &auth)
|
||||
.await
|
||||
.map_err(|e| ServerFnError::new(format!("Failed to save subscription: {}", e)))
|
||||
}
|
||||
Reference in New Issue
Block a user