From d66728889105f6f1ef5113d9ceb223e362df0008 Mon Sep 17 00:00:00 2001 From: Owen Jacobson Date: Mon, 27 Oct 2025 18:15:25 -0400 Subject: Convert the `Setup` component into a freestanding struct. The changes to the setup-requiring middleware are probably more general than was strictly needed, but they will make it work with anything that can provide a `Setup` component rather than being bolted to `App` specifically, which feels tidier. --- src/app.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/app.rs') diff --git a/src/app.rs b/src/app.rs index 74e1070..202d542 100644 --- a/src/app.rs +++ b/src/app.rs @@ -58,8 +58,8 @@ impl App { Messages::new(self.db.clone(), self.events.clone()) } - pub const fn setup(&self) -> Setup<'_> { - Setup::new(&self.db, &self.events) + pub fn setup(&self) -> Setup { + Setup::new(self.db.clone(), self.events.clone()) } pub const fn tokens(&self) -> Tokens<'_> { @@ -101,3 +101,9 @@ impl FromRef for Messages { app.messages() } } + +impl FromRef for Setup { + fn from_ref(app: &App) -> Self { + app.setup() + } +} -- cgit v1.2.3