diff --git a/src/api/mod.rs b/src/api/mod.rs index 008ab04a..1141f6c6 100644 --- a/src/api/mod.rs +++ b/src/api/mod.rs @@ -1,4 +1,4 @@ -#![type_length_limit = "65536"] //TODO: REDUCE ME +#![type_length_limit = "163840"] //TODO: REDUCE ME #![allow(clippy::toplevel_ref_arg)] pub mod client; diff --git a/src/service/rooms/state_cache/mod.rs b/src/service/rooms/state_cache/mod.rs index 930b092c..21b08700 100644 --- a/src/service/rooms/state_cache/mod.rs +++ b/src/service/rooms/state_cache/mod.rs @@ -257,10 +257,22 @@ pub async fn room_knocked_count(&self, room_id: &RoomId) -> Result { .deserialized() } +/// Returns an iterator of all our local joined users in a room who are +/// active (not deactivated, not guest) #[implement(Service)] #[tracing::instrument(skip(self), level = "debug")] +pub fn active_local_users_in_room<'a>( + &'a self, + room_id: &'a RoomId, +) -> impl Stream + Send + 'a { + self.local_users_in_room(room_id) + .filter(|user| self.services.users.is_active(user)) +} + /// Returns an iterator of all our local users in the room, even if they're /// deactivated/guests +#[implement(Service)] +#[tracing::instrument(skip(self), level = "debug")] pub fn local_users_in_room<'a>( &'a self, room_id: &'a RoomId, @@ -269,16 +281,15 @@ pub fn local_users_in_room<'a>( .ready_filter(|user| self.services.globals.user_is_local(user)) } -/// Returns an iterator of all our local joined users in a room who are -/// active (not deactivated, not guest) +/// Returns an iterator of only our users invited to this room. #[implement(Service)] -#[tracing::instrument(skip(self), level = "trace")] -pub fn active_local_users_in_room<'a>( +#[tracing::instrument(skip(self), level = "debug")] +pub fn local_users_invited_to_room<'a>( &'a self, room_id: &'a RoomId, ) -> impl Stream + Send + 'a { - self.local_users_in_room(room_id) - .filter(|user| self.services.users.is_active(user)) + self.room_members_invited(room_id) + .ready_filter(|user| self.services.globals.user_is_local(user)) } /// Returns an iterator over all User IDs who ever joined a room.