diff options
| author | Owen Jacobson <owen@grimoire.ca> | 2025-07-24 22:32:27 -0400 |
|---|---|---|
| committer | Owen Jacobson <owen@grimoire.ca> | 2025-07-24 22:32:27 -0400 |
| commit | b63380b251d04dd92f06aa5bbc22a72ca3e4bf8e (patch) | |
| tree | 3956ec457131ce049fd91f2f53309bc0620fffe2 /src/app.rs | |
| parent | 2e42057694851b82574e0a406ded429fb95a07fa (diff) | |
wip: 83B78D40-D7CB-4419-9FE7-E7D858909443
Diffstat (limited to 'src/app.rs')
| -rw-r--r-- | src/app.rs | 19 |
1 files changed, 16 insertions, 3 deletions
@@ -1,14 +1,15 @@ -use sqlx::sqlite::SqlitePool; - use crate::{ boot::app::Boot, conversation::app::Conversations, event::{self, app::Events}, invite::app::Invites, message::app::Messages, + push::app::Push, setup::app::Setup, token::{self, app::Tokens}, }; +use sqlx::sqlite::SqlitePool; +use web_push::PartialVapidSignatureBuilder; #[cfg(test)] use crate::user::app::Users; @@ -18,16 +19,24 @@ pub struct App { db: SqlitePool, events: event::Broadcaster, token_events: token::Broadcaster, + vapid_public_key: String, + vapid_signer: PartialVapidSignatureBuilder, } impl App { - pub fn from(db: SqlitePool) -> Self { + pub fn from( + db: SqlitePool, + vapid_public_key: String, + vapid_signer: PartialVapidSignatureBuilder, + ) -> Self { let events = event::Broadcaster::default(); let token_events = token::Broadcaster::default(); Self { db, events, token_events, + vapid_public_key, + vapid_signer, } } } @@ -58,6 +67,10 @@ impl App { Messages::new(&self.db, &self.events) } + pub fn push(&self) -> Push { + Push::new(&self.db, &self.vapid_public_key, &self.vapid_signer) + } + pub const fn setup(&self) -> Setup { Setup::new(&self.db, &self.events) } |
