]> Untitled Git - lemmy.git/commitdiff
Merge websocket crate into api_common
authorFelix Ableitner <me@nutomic.com>
Sat, 26 Nov 2022 02:04:46 +0000 (03:04 +0100)
committerFelix Ableitner <me@nutomic.com>
Fri, 2 Dec 2022 09:46:49 +0000 (10:46 +0100)
170 files changed:
Cargo.lock
Cargo.toml
crates/api/Cargo.toml
crates/api/src/comment/like.rs
crates/api/src/comment/save.rs
crates/api/src/comment_report/create.rs
crates/api/src/comment_report/list.rs
crates/api/src/comment_report/resolve.rs
crates/api/src/community/add_mod.rs
crates/api/src/community/ban.rs
crates/api/src/community/block.rs
crates/api/src/community/follow.rs
crates/api/src/community/hide.rs
crates/api/src/community/transfer.rs
crates/api/src/lib.rs
crates/api/src/local_user/add_admin.rs
crates/api/src/local_user/ban_person.rs
crates/api/src/local_user/block.rs
crates/api/src/local_user/change_password.rs
crates/api/src/local_user/change_password_after_reset.rs
crates/api/src/local_user/get_captcha.rs
crates/api/src/local_user/list_banned.rs
crates/api/src/local_user/login.rs
crates/api/src/local_user/notifications/list_mentions.rs
crates/api/src/local_user/notifications/list_replies.rs
crates/api/src/local_user/notifications/mark_all_read.rs
crates/api/src/local_user/notifications/mark_mention_read.rs
crates/api/src/local_user/notifications/mark_reply_read.rs
crates/api/src/local_user/notifications/unread_count.rs
crates/api/src/local_user/report_count.rs
crates/api/src/local_user/reset_password.rs
crates/api/src/local_user/save_settings.rs
crates/api/src/local_user/verify_email.rs
crates/api/src/post/get_link_metadata.rs
crates/api/src/post/like.rs
crates/api/src/post/lock.rs
crates/api/src/post/mark_read.rs
crates/api/src/post/save.rs
crates/api/src/post/sticky.rs
crates/api/src/post_report/create.rs
crates/api/src/post_report/list.rs
crates/api/src/post_report/resolve.rs
crates/api/src/private_message/mark_read.rs
crates/api/src/private_message_report/create.rs
crates/api/src/private_message_report/list.rs
crates/api/src/private_message_report/resolve.rs
crates/api/src/site/leave_admin.rs
crates/api/src/site/mod_log.rs
crates/api/src/site/purge/comment.rs
crates/api/src/site/purge/community.rs
crates/api/src/site/purge/person.rs
crates/api/src/site/purge/post.rs
crates/api/src/site/registration_applications/approve.rs
crates/api/src/site/registration_applications/list.rs
crates/api/src/site/registration_applications/unread_count.rs
crates/api/src/site/resolve_object.rs
crates/api/src/site/search.rs
crates/api/src/websocket.rs
crates/api_common/Cargo.toml
crates/api_common/src/lib.rs
crates/api_common/src/websocket/chat_server.rs [moved from crates/websocket/src/chat_server.rs with 98% similarity]
crates/api_common/src/websocket/handlers.rs [moved from crates/websocket/src/handlers.rs with 99% similarity]
crates/api_common/src/websocket/messages.rs [moved from crates/websocket/src/messages.rs with 97% similarity]
crates/api_common/src/websocket/mod.rs [moved from crates/websocket/src/lib.rs with 58% similarity]
crates/api_common/src/websocket/routes.rs [moved from crates/websocket/src/routes.rs with 97% similarity]
crates/api_common/src/websocket/send.rs [moved from crates/websocket/src/send.rs with 98% similarity]
crates/api_common/src/websocket/structs.rs [moved from crates/api_common/src/websocket.rs with 100% similarity]
crates/api_crud/Cargo.toml
crates/api_crud/src/comment/create.rs
crates/api_crud/src/comment/delete.rs
crates/api_crud/src/comment/list.rs
crates/api_crud/src/comment/read.rs
crates/api_crud/src/comment/remove.rs
crates/api_crud/src/comment/update.rs
crates/api_crud/src/community/create.rs
crates/api_crud/src/community/delete.rs
crates/api_crud/src/community/list.rs
crates/api_crud/src/community/read.rs
crates/api_crud/src/community/remove.rs
crates/api_crud/src/community/update.rs
crates/api_crud/src/lib.rs
crates/api_crud/src/post/create.rs
crates/api_crud/src/post/delete.rs
crates/api_crud/src/post/list.rs
crates/api_crud/src/post/read.rs
crates/api_crud/src/post/remove.rs
crates/api_crud/src/post/update.rs
crates/api_crud/src/private_message/create.rs
crates/api_crud/src/private_message/delete.rs
crates/api_crud/src/private_message/read.rs
crates/api_crud/src/private_message/update.rs
crates/api_crud/src/site/create.rs
crates/api_crud/src/site/read.rs
crates/api_crud/src/site/update.rs
crates/api_crud/src/user/create.rs
crates/api_crud/src/user/delete.rs
crates/api_crud/src/user/read.rs
crates/apub/Cargo.toml
crates/apub/src/activities/block/block_user.rs
crates/apub/src/activities/block/mod.rs
crates/apub/src/activities/block/undo_block_user.rs
crates/apub/src/activities/community/add_mod.rs
crates/apub/src/activities/community/announce.rs
crates/apub/src/activities/community/mod.rs
crates/apub/src/activities/community/remove_mod.rs
crates/apub/src/activities/community/report.rs
crates/apub/src/activities/community/update.rs
crates/apub/src/activities/create_or_update/comment.rs
crates/apub/src/activities/create_or_update/mod.rs
crates/apub/src/activities/create_or_update/post.rs
crates/apub/src/activities/create_or_update/private_message.rs
crates/apub/src/activities/deletion/delete.rs
crates/apub/src/activities/deletion/delete_user.rs
crates/apub/src/activities/deletion/mod.rs
crates/apub/src/activities/deletion/undo_delete.rs
crates/apub/src/activities/following/accept.rs
crates/apub/src/activities/following/follow.rs
crates/apub/src/activities/following/undo_follow.rs
crates/apub/src/activities/mod.rs
crates/apub/src/activities/voting/mod.rs
crates/apub/src/activities/voting/undo_vote.rs
crates/apub/src/activities/voting/vote.rs
crates/apub/src/activity_lists.rs
crates/apub/src/collections/mod.rs
crates/apub/src/fetcher/deletable_apub_object.rs
crates/apub/src/fetcher/mod.rs
crates/apub/src/fetcher/post_or_comment.rs
crates/apub/src/fetcher/search.rs
crates/apub/src/fetcher/user_or_community.rs
crates/apub/src/fetcher/webfinger.rs
crates/apub/src/http/comment.rs
crates/apub/src/http/community.rs
crates/apub/src/http/mod.rs
crates/apub/src/http/person.rs
crates/apub/src/http/post.rs
crates/apub/src/http/site.rs
crates/apub/src/lib.rs
crates/apub/src/mentions.rs
crates/apub/src/objects/comment.rs
crates/apub/src/objects/community.rs
crates/apub/src/objects/instance.rs
crates/apub/src/objects/mod.rs
crates/apub/src/objects/person.rs
crates/apub/src/objects/post.rs
crates/apub/src/objects/private_message.rs
crates/apub/src/protocol/activities/block/block_user.rs
crates/apub/src/protocol/activities/block/undo_block_user.rs
crates/apub/src/protocol/activities/community/add_mod.rs
crates/apub/src/protocol/activities/community/remove_mod.rs
crates/apub/src/protocol/activities/community/report.rs
crates/apub/src/protocol/activities/community/update.rs
crates/apub/src/protocol/activities/create_or_update/note.rs
crates/apub/src/protocol/activities/create_or_update/page.rs
crates/apub/src/protocol/activities/deletion/delete.rs
crates/apub/src/protocol/activities/deletion/undo_delete.rs
crates/apub/src/protocol/activities/voting/undo_vote.rs
crates/apub/src/protocol/activities/voting/vote.rs
crates/apub/src/protocol/collections/group_followers.rs
crates/apub/src/protocol/mod.rs
crates/apub/src/protocol/objects/group.rs
crates/apub/src/protocol/objects/note.rs
crates/apub/src/protocol/objects/page.rs
crates/routes/Cargo.toml
crates/routes/src/feeds.rs
crates/routes/src/images.rs
crates/routes/src/nodeinfo.rs
crates/routes/src/webfinger.rs
crates/websocket/Cargo.toml [deleted file]
src/api_routes.rs
src/main.rs

index c083fba9d5bfefcfda08f2d78ee02adb2b934398..954754929159e1148205b91a54cbb3ef1121fd97 100644 (file)
@@ -2050,7 +2050,6 @@ dependencies = [
  "lemmy_db_views_actor",
  "lemmy_db_views_moderator",
  "lemmy_utils",
- "lemmy_websocket",
  "serde",
  "serde_json",
  "serial_test",
@@ -2063,8 +2062,12 @@ dependencies = [
 name = "lemmy_api_common"
 version = "0.16.5"
 dependencies = [
+ "actix",
  "actix-rt",
  "actix-web",
+ "actix-web-actors",
+ "anyhow",
+ "background-jobs",
  "chrono",
  "diesel",
  "encoding",
@@ -2073,13 +2076,20 @@ dependencies = [
  "lemmy_db_views_actor",
  "lemmy_db_views_moderator",
  "lemmy_utils",
+ "opentelemetry 0.17.0",
  "percent-encoding",
+ "rand 0.8.5",
  "regex",
  "reqwest",
  "reqwest-middleware",
  "rosetta-i18n",
  "serde",
+ "serde_json",
+ "strum",
+ "strum_macros",
+ "tokio",
  "tracing",
+ "tracing-opentelemetry 0.17.4",
  "url",
  "webpage",
 ]
@@ -2098,7 +2108,6 @@ dependencies = [
  "lemmy_db_views",
  "lemmy_db_views_actor",
  "lemmy_utils",
- "lemmy_websocket",
  "serde",
  "serde_json",
  "tracing",
@@ -2131,7 +2140,6 @@ dependencies = [
  "lemmy_db_views",
  "lemmy_db_views_actor",
  "lemmy_utils",
- "lemmy_websocket",
  "once_cell",
  "reqwest",
  "reqwest-middleware",
@@ -2228,7 +2236,6 @@ dependencies = [
  "lemmy_db_views",
  "lemmy_db_views_actor",
  "lemmy_utils",
- "lemmy_websocket",
  "once_cell",
  "reqwest",
  "reqwest-middleware",
@@ -2260,7 +2267,6 @@ dependencies = [
  "lemmy_db_schema",
  "lemmy_routes",
  "lemmy_utils",
- "lemmy_websocket",
  "opentelemetry 0.17.0",
  "opentelemetry-otlp",
  "parking_lot",
@@ -2317,34 +2323,6 @@ dependencies = [
  "uuid",
 ]
 
-[[package]]
-name = "lemmy_websocket"
-version = "0.16.5"
-dependencies = [
- "actix",
- "actix-web",
- "actix-web-actors",
- "anyhow",
- "background-jobs",
- "chrono",
- "diesel",
- "lemmy_api_common",
- "lemmy_db_schema",
- "lemmy_db_views",
- "lemmy_db_views_actor",
- "lemmy_utils",
- "opentelemetry 0.17.0",
- "rand 0.8.5",
- "reqwest-middleware",
- "serde",
- "serde_json",
- "strum",
- "strum_macros",
- "tokio",
- "tracing",
- "tracing-opentelemetry 0.17.4",
-]
-
 [[package]]
 name = "lettre"
 version = "0.10.1"
index 67e85b27b36e068e6aa8c6dded291b8ba5e190e7..16ca864f41e97af2ff0e31215f7a336b027bc187 100644 (file)
@@ -45,7 +45,6 @@ members = [
     "crates/db_views",
     "crates/db_views_actor",
     "crates/db_views_actor",
-    "crates/websocket",
     "crates/routes"
 ]
 
@@ -56,7 +55,6 @@ lemmy_apub = { version = "=0.16.5", path = "./crates/apub" }
 lemmy_utils = { version = "=0.16.5", path = "./crates/utils" }
 lemmy_db_schema = { version = "=0.16.5", path = "./crates/db_schema" }
 lemmy_api_common = { version = "=0.16.5", path = "./crates/api_common" }
-lemmy_websocket = { version = "=0.16.5", path = "./crates/websocket" }
 lemmy_routes = { version = "=0.16.5", path = "./crates/routes" }
 lemmy_db_views = { version = "=0.16.5", path = "./crates/db_views" }
 lemmy_db_views_actor = { version = "=0.16.5", path = "./crates/db_views_actor" }
@@ -116,7 +114,6 @@ lemmy_apub = { workspace = true }
 lemmy_utils = { workspace = true }
 lemmy_db_schema = { workspace = true }
 lemmy_api_common = { workspace = true }
-lemmy_websocket = { workspace = true }
 lemmy_routes = { workspace = true }
 activitypub_federation = { workspace = true }
 diesel = { workspace = true }
index b707545b69e739fd0f58e138493bbe4642025a52..17c0127b4e83e659a236742b3bcc542d0b06c9d5 100644 (file)
@@ -21,7 +21,6 @@ lemmy_db_views = { workspace = true, features = ["full"] }
 lemmy_db_views_moderator = { workspace = true, features = ["full"] }
 lemmy_db_views_actor = { workspace = true, features = ["full"] }
 lemmy_api_common = { workspace = true, features = ["full"] }
-lemmy_websocket = { workspace = true }
 activitypub_federation = { workspace = true }
 diesel = { workspace = true }
 bcrypt = { workspace = true }
index 6ca87f3cf933c2d94215dc718536f943bd12d391..1ba6ec791704dfc2797057aff3b7df40822ef4f2 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   comment::{CommentResponse, CreateCommentLike},
   utils::{check_community_ban, check_downvotes_enabled, get_local_user_view_from_jwt},
+  websocket::{send::send_comment_ws_message, UserOperation},
+  LemmyContext,
 };
 use lemmy_apub::{
   fetcher::post_or_comment::PostOrComment,
@@ -22,7 +24,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::{CommentView, LocalUserView};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_comment_ws_message, LemmyContext, UserOperation};
 use std::convert::TryInto;
 
 #[async_trait::async_trait(?Send)]
index 647f0ed531e4c18bb87be9b0c4bf7c024f332ae2..cc6955de04c52480308a1c78b9c98be6ba5372dc 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   comment::{CommentResponse, SaveComment},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::comment::{CommentSaved, CommentSavedForm},
@@ -10,7 +11,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::CommentView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for SaveComment {
index 2533aba1c56a106aa08fffcb8afa46509164bbab..99c653e231bd949ce7db36d3dd334ca2fbe10757 100644 (file)
@@ -4,6 +4,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   comment::{CommentReportResponse, CreateCommentReport},
   utils::{check_community_ban, get_local_user_view_from_jwt},
+  websocket::{messages::SendModRoomMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_apub::protocol::activities::community::report::Report;
 use lemmy_db_schema::{
@@ -15,7 +17,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::{CommentReportView, CommentView};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::SendModRoomMessage, LemmyContext, UserOperation};
 
 /// Creates a comment report and notifies the moderators of the community
 #[async_trait::async_trait(?Send)]
index 4a9041e99d9e3ccc9d3462fcfe44d813c07e058d..b99716e88ac1cb2e95795ef8d02a8ab7cf7b8d72 100644 (file)
@@ -3,10 +3,10 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   comment::{ListCommentReports, ListCommentReportsResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_views::comment_report_view::CommentReportQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 /// Lists comment reports for a community if an id is supplied
 /// or returns all comment reports for communities a user moderates
index 8055e94843edaffb885a99ca551482acfe7ae6cf..16598ffa9724f8b7e479d0fc00f8fb55de96adff 100644 (file)
@@ -3,11 +3,12 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   comment::{CommentReportResponse, ResolveCommentReport},
   utils::{get_local_user_view_from_jwt, is_mod_or_admin},
+  websocket::{messages::SendModRoomMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_db_schema::{source::comment_report::CommentReport, traits::Reportable};
 use lemmy_db_views::structs::CommentReportView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::SendModRoomMessage, LemmyContext, UserOperation};
 
 /// Resolves or unresolves a comment report and notifies the moderators of the community
 #[async_trait::async_trait(?Send)]
index ff54edda7a10ebf3e507509e4a57b7f5282b43ed..d307a672d51410ce7a37a31907f833695c1af820 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{AddModToCommunity, AddModToCommunityResponse},
   utils::{get_local_user_view_from_jwt, is_mod_or_admin},
+  websocket::{messages::SendCommunityRoomMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_apub::{
   objects::{community::ApubCommunity, person::ApubPerson},
@@ -18,7 +20,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::CommunityModeratorView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::SendCommunityRoomMessage, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for AddModToCommunity {
index 7b0897ad8bc66e36cc00d754ffa44cf024610202..018ccd012e6bb22a2090348177338c7621cddc19 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{BanFromCommunity, BanFromCommunityResponse},
   utils::{get_local_user_view_from_jwt, is_mod_or_admin, remove_user_data_in_community},
+  websocket::{messages::SendCommunityRoomMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_apub::{
   activities::block::SiteOrCommunity,
@@ -25,7 +27,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::PersonViewSafe;
 use lemmy_utils::{error::LemmyError, utils::naive_from_unix, ConnectionId};
-use lemmy_websocket::{messages::SendCommunityRoomMessage, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for BanFromCommunity {
index 840d1766578c7db39f87f8bae78265243930a43b..6c6efc2131a5d67b91c150c9d641fc3f8ba67e0d 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{BlockCommunity, BlockCommunityResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_apub::protocol::activities::following::undo_follow::UndoFollow;
 use lemmy_db_schema::{
@@ -14,7 +15,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::CommunityView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for BlockCommunity {
index fbabebc2ca3468b4bc6efe8dcaf043954d32e6b9..51d5ad9b61ba7e91317c64c23f4e02bbb360c8b6 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{CommunityResponse, FollowCommunity},
   utils::{check_community_ban, check_community_deleted_or_removed, get_local_user_view_from_jwt},
+  LemmyContext,
 };
 use lemmy_apub::{
   objects::community::ApubCommunity,
@@ -17,7 +18,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::CommunityView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for FollowCommunity {
index 111a89d010da94591486c59e71e64a7248bd8bcc..54a08135af2069d243981a2a83f99dfcbe49ecab 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{CommunityResponse, HideCommunity},
   utils::{get_local_user_view_from_jwt, is_admin},
+  websocket::{send::send_community_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::protocol::activities::community::update::UpdateCommunity;
 use lemmy_db_schema::{
@@ -13,7 +15,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_community_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for HideCommunity {
index 5da0d8e3e0e5797a5073fdb221f5c4711a10cbe8..bb69de0928cab08bea53a6f764c00422f395b705 100644 (file)
@@ -4,6 +4,7 @@ use anyhow::Context;
 use lemmy_api_common::{
   community::{GetCommunityResponse, TransferCommunity},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -14,7 +15,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::{CommunityModeratorView, CommunityView, PersonViewSafe};
 use lemmy_utils::{error::LemmyError, location_info, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 // TODO: we dont do anything for federation here, it should be updated the next time the community
 //       gets fetched. i hope we can get rid of the community creator role soon.
index dbff533eabdd56051e7f237a6210e3b299302c31..0473f1e88fbf642f47e43c6eb8363138b4e1b515 100644 (file)
@@ -66,11 +66,15 @@ use lemmy_api_common::{
     Search,
   },
   utils::local_site_to_slur_regex,
-  websocket::{CommunityJoin, ModJoin, PostJoin, UserJoin},
+  websocket::{
+    serialize_websocket_message,
+    structs::{CommunityJoin, ModJoin, PostJoin, UserJoin},
+    UserOperation,
+  },
+  LemmyContext,
 };
 use lemmy_db_schema::source::local_site::LocalSite;
 use lemmy_utils::{error::LemmyError, utils::check_slurs, ConnectionId};
-use lemmy_websocket::{serialize_websocket_message, LemmyContext, UserOperation};
 use serde::Deserialize;
 
 mod comment;
index ceca80f90ee2def7520f40a5df29726e9f9388cc..8091f97e4be03039223ec185ca310c183ea25b08 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{AddAdmin, AddAdminResponse},
   utils::{get_local_user_view_from_jwt, is_admin},
+  websocket::{messages::SendAllMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -13,7 +15,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::PersonViewSafe;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::SendAllMessage, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for AddAdmin {
index 2482e408ed8740e720c8f4f3d3481d3ccee075ad..a848175e45e7c63cf48ef107a7f140a0f6d399aa 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{BanPerson, BanPersonResponse},
   utils::{get_local_user_view_from_jwt, is_admin, remove_user_data},
+  websocket::{messages::SendAllMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_apub::{
   activities::block::SiteOrCommunity,
@@ -18,7 +20,6 @@ use lemmy_db_schema::{
 use lemmy_db_views::structs::SiteView;
 use lemmy_db_views_actor::structs::PersonViewSafe;
 use lemmy_utils::{error::LemmyError, utils::naive_from_unix, ConnectionId};
-use lemmy_websocket::{messages::SendAllMessage, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for BanPerson {
index 44bd668f73cea1463b0b00d094bdcdb882717d4c..798d367748c869e2ab55bf479e1ef20819b99155 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{BlockPerson, BlockPersonResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::person_block::{PersonBlock, PersonBlockForm},
@@ -10,7 +11,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::PersonViewSafe;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for BlockPerson {
index 38fac32b53b5586a1ad0b42424af7dffa132757a..e4e9004ea0b618f58cb200cf6c30fe721f3d681c 100644 (file)
@@ -4,10 +4,10 @@ use bcrypt::verify;
 use lemmy_api_common::{
   person::{ChangePassword, LoginResponse},
   utils::{get_local_user_view_from_jwt, password_length_check},
+  LemmyContext,
 };
 use lemmy_db_schema::source::local_user::LocalUser;
 use lemmy_utils::{claims::Claims, error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for ChangePassword {
index 3ac48252edc095ef1d4ea41fb427b1b9bf47f024..f9556b533af4933141c7de05a2b881daf168b38f 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{LoginResponse, PasswordChangeAfterReset},
   utils::password_length_check,
+  LemmyContext,
 };
 use lemmy_db_schema::source::{
   local_user::LocalUser,
@@ -10,7 +11,6 @@ use lemmy_db_schema::source::{
 };
 use lemmy_db_views::structs::SiteView;
 use lemmy_utils::{claims::Claims, error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for PasswordChangeAfterReset {
index 3d1b88845429679b5d13fc3c99ad36ef3272a91e..5eacc4fd8ee63b145b70d85b54853c79a2d15b83 100644 (file)
@@ -2,10 +2,13 @@ use crate::{captcha_as_wav_base64, Perform};
 use actix_web::web::Data;
 use captcha::{gen, Difficulty};
 use chrono::Duration;
-use lemmy_api_common::person::{CaptchaResponse, GetCaptcha, GetCaptchaResponse};
+use lemmy_api_common::{
+  person::{CaptchaResponse, GetCaptcha, GetCaptchaResponse},
+  websocket::messages::CaptchaItem,
+  LemmyContext,
+};
 use lemmy_db_schema::{source::local_site::LocalSite, utils::naive_now};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::CaptchaItem, LemmyContext};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for GetCaptcha {
index 16df72ccc8308c22035f43f6c5d6ef2b1f928a93..31d4e3be6875f17f6a9168b169c278296537aecc 100644 (file)
@@ -3,10 +3,10 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{BannedPersonsResponse, GetBannedPersons},
   utils::{get_local_user_view_from_jwt, is_admin},
+  LemmyContext,
 };
 use lemmy_db_views_actor::structs::PersonViewSafe;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for GetBannedPersons {
index 6135438778916646cedd107501d270863183cadd..dac0d9bf5f2907f6951dc14df4698f4255f84305 100644 (file)
@@ -4,11 +4,11 @@ use bcrypt::verify;
 use lemmy_api_common::{
   person::{Login, LoginResponse},
   utils::{check_registration_application, check_user_valid},
+  LemmyContext,
 };
 use lemmy_db_schema::source::local_site::LocalSite;
 use lemmy_db_views::structs::LocalUserView;
 use lemmy_utils::{claims::Claims, error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for Login {
index d231f7184bfc5090b97be630f5a7e1aa95962186..5e3b63e7a9c4546eaf7ea917a0b03475f5c70633 100644 (file)
@@ -3,10 +3,10 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{GetPersonMentions, GetPersonMentionsResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_views_actor::person_mention_view::PersonMentionQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for GetPersonMentions {
index 102229985f00a2486fcbada947fee5110c787677..375864b5888db52f9e9dae1be0dfec0c1c8662f3 100644 (file)
@@ -3,10 +3,10 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{GetReplies, GetRepliesResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_views_actor::comment_reply_view::CommentReplyQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for GetReplies {
index 3b8ad0f4414ff681aea32c49c2bbd1fe9ff5e15a..9f8926dc39562729145770d87a77cd67ddf46e5a 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{GetRepliesResponse, MarkAllAsRead},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_schema::source::{
   comment_reply::CommentReply,
@@ -10,7 +11,6 @@ use lemmy_db_schema::source::{
   private_message::PrivateMessage,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for MarkAllAsRead {
index c42e294a8dd9e2c6b078c58d616d7697ecac9287..655f788465b58787a325ae12d915f27748addce4 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{MarkPersonMentionAsRead, PersonMentionResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::person_mention::{PersonMention, PersonMentionUpdateForm},
@@ -10,7 +11,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::PersonMentionView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for MarkPersonMentionAsRead {
index 2ec5fd806230e5e765be3d2de5c4c63602061076..fa3367e33262dd496e1725b83447ede52248167b 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{CommentReplyResponse, MarkCommentReplyAsRead},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::comment_reply::{CommentReply, CommentReplyUpdateForm},
@@ -10,7 +11,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::CommentReplyView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for MarkCommentReplyAsRead {
index 47d826fddb7d59c68ecaa4c9716ec3bd9e3ac2d4..442977a2c034537ff0320d0a7d0e7490b77266e4 100644 (file)
@@ -3,11 +3,11 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{GetUnreadCount, GetUnreadCountResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_views::structs::PrivateMessageView;
 use lemmy_db_views_actor::structs::{CommentReplyView, PersonMentionView};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for GetUnreadCount {
index 1372e4caa9fd29077122640f6dbae59b08674771..7dd63b7ad55f8555782ef91006469e983cc00bd4 100644 (file)
@@ -3,10 +3,10 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{GetReportCount, GetReportCountResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_views::structs::{CommentReportView, PostReportView, PrivateMessageReportView};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for GetReportCount {
index 078d55ec35dc638e8c1501064566387be56a16ff..8def6d3c67027fb7ce81005a48e494be30a5a9f0 100644 (file)
@@ -3,10 +3,10 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{PasswordReset, PasswordResetResponse},
   utils::send_password_reset_email,
+  LemmyContext,
 };
 use lemmy_db_views::structs::LocalUserView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for PasswordReset {
index 4aa3a7437d8b09444ef5b59e77876cfbaecd482d..807e8262d7261314adbc520cf3cee0d01b25b753 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{LoginResponse, SaveUserSettings},
   utils::{get_local_user_view_from_jwt, send_verification_email},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -20,7 +21,6 @@ use lemmy_utils::{
   utils::{is_valid_display_name, is_valid_matrix_id},
   ConnectionId,
 };
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for SaveUserSettings {
index 73db4bea5b60a19327ff964860b686de54ad7c8d..238692ff02b728669609f4472647dcefd3d72fc0 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{VerifyEmail, VerifyEmailResponse},
   utils::send_email_verification_success,
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -13,7 +14,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::LocalUserView;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for VerifyEmail {
index 54e2cfe7ca4d2301359ef66b985093c1aabbecf0..aae211a50ccb8e92225b221a58cd3f3465841771 100644 (file)
@@ -3,9 +3,9 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   post::{GetSiteMetadata, GetSiteMetadataResponse},
   request::fetch_site_metadata,
+  LemmyContext,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for GetSiteMetadata {
index ec2edc33eecc6f7530a03b65b3dc9d4c8f47aa08..d15e649b9be913e1b980557282580cf9d9a102cd 100644 (file)
@@ -9,6 +9,8 @@ use lemmy_api_common::{
     get_local_user_view_from_jwt,
     mark_post_as_read,
   },
+  websocket::{send::send_post_ws_message, UserOperation},
+  LemmyContext,
 };
 use lemmy_apub::{
   fetcher::post_or_comment::PostOrComment,
@@ -26,7 +28,6 @@ use lemmy_db_schema::{
   traits::{Crud, Likeable},
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_post_ws_message, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for CreatePostLike {
index ae726ee926968f0c59ee2dd8fad38918c6a7c72c..4348971fe4e4d0f654ea650f0d8dafade11d3568 100644 (file)
@@ -8,6 +8,8 @@ use lemmy_api_common::{
     get_local_user_view_from_jwt,
     is_mod_or_admin,
   },
+  websocket::{send::send_post_ws_message, UserOperation},
+  LemmyContext,
 };
 use lemmy_apub::{
   objects::post::ApubPost,
@@ -21,7 +23,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_post_ws_message, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for LockPost {
index 18f86521cd4a8ab9a5cf7d3ac8bae2d729e57bf9..228fdac0de7f04e038e0f09d1e222d327dcfb6d9 100644 (file)
@@ -3,10 +3,10 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   post::{MarkPostAsRead, PostResponse},
   utils::{get_local_user_view_from_jwt, mark_post_as_read, mark_post_as_unread},
+  LemmyContext,
 };
 use lemmy_db_views::structs::PostView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for MarkPostAsRead {
index 0a240f9eb78fcb09ebf3a011b2bd5f36c27afd29..9e8ca9ce1d4b867d70f14d0c68b816b391a70f3f 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   post::{PostResponse, SavePost},
   utils::{get_local_user_view_from_jwt, mark_post_as_read},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::post::{PostSaved, PostSavedForm},
@@ -10,7 +11,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::PostView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for SavePost {
index 384ba52d6605b71de04f158843e2d279c6097c62..ccba5f2c32d165d7ab098edee9f445dafa115b1d 100644 (file)
@@ -8,6 +8,8 @@ use lemmy_api_common::{
     get_local_user_view_from_jwt,
     is_mod_or_admin,
   },
+  websocket::{send::send_post_ws_message, UserOperation},
+  LemmyContext,
 };
 use lemmy_apub::{
   objects::post::ApubPost,
@@ -21,7 +23,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_post_ws_message, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for StickyPost {
index ca4113a3b5ea5ecdb94a3c8628170e1df13e5ef9..2fd2d08be4b57799367f2b7a0485896f093642b7 100644 (file)
@@ -4,6 +4,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   post::{CreatePostReport, PostReportResponse},
   utils::{check_community_ban, get_local_user_view_from_jwt},
+  websocket::{messages::SendModRoomMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_apub::protocol::activities::community::report::Report;
 use lemmy_db_schema::{
@@ -15,7 +17,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::{PostReportView, PostView};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::SendModRoomMessage, LemmyContext, UserOperation};
 
 /// Creates a post report and notifies the moderators of the community
 #[async_trait::async_trait(?Send)]
index 7a79f04b731f397a6f99e7c163a5a78601218f99..188a722ffe1c4331b8eafa02661441322e59300c 100644 (file)
@@ -3,10 +3,10 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   post::{ListPostReports, ListPostReportsResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_views::post_report_view::PostReportQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 /// Lists post reports for a community if an id is supplied
 /// or returns all post reports for communities a user moderates
index 687bdcce16008ae4440b606700248c00bf0ccfea..6c3d62f185a5ba328c59adf00aeb324cda6c6383 100644 (file)
@@ -3,11 +3,12 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   post::{PostReportResponse, ResolvePostReport},
   utils::{get_local_user_view_from_jwt, is_mod_or_admin},
+  websocket::{messages::SendModRoomMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_db_schema::{source::post_report::PostReport, traits::Reportable};
 use lemmy_db_views::structs::PostReportView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::SendModRoomMessage, LemmyContext, UserOperation};
 
 /// Resolves or unresolves a post report and notifies the moderators of the community
 #[async_trait::async_trait(?Send)]
index 0b7bb676a8837f3e7f00aedb8bcab3dccde9d242..ba0e70d59749dac71e366f34bfd43490965d746c 100644 (file)
@@ -3,13 +3,14 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   private_message::{MarkPrivateMessageAsRead, PrivateMessageResponse},
   utils::get_local_user_view_from_jwt,
+  websocket::{send::send_pm_ws_message, UserOperation},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::private_message::{PrivateMessage, PrivateMessageUpdateForm},
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_pm_ws_message, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for MarkPrivateMessageAsRead {
index 490fd55bf0571779bc5eb394a3c16a63132fdd7e..6b923c1024c1f919718837809b276a62d7796a93 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   private_message::{CreatePrivateMessageReport, PrivateMessageReportResponse},
   utils::get_local_user_view_from_jwt,
+  websocket::{messages::SendModRoomMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   newtypes::CommunityId,
@@ -15,7 +17,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::PrivateMessageReportView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::SendModRoomMessage, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for CreatePrivateMessageReport {
index 0279cb83b4dbfe63d8c1df850ccdf62bca566bb6..17fc438ff2ba30a48779060d6d67700fc6d62253 100644 (file)
@@ -3,10 +3,10 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   private_message::{ListPrivateMessageReports, ListPrivateMessageReportsResponse},
   utils::{get_local_user_view_from_jwt, is_admin},
+  LemmyContext,
 };
 use lemmy_db_views::private_message_report_view::PrivateMessageReportQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for ListPrivateMessageReports {
index a7af798ad179f35b30e095dabbba1a4765e08572..eeda4ed4246747fe4a2d97aa230b3451394bb960 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   private_message::{PrivateMessageReportResponse, ResolvePrivateMessageReport},
   utils::{get_local_user_view_from_jwt, is_admin},
+  websocket::{messages::SendModRoomMessage, UserOperation},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   newtypes::CommunityId,
@@ -11,7 +13,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::PrivateMessageReportView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::SendModRoomMessage, LemmyContext, UserOperation};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for ResolvePrivateMessageReport {
index 4a6687b3289d176d5ba8819ba4b636bd654c603c..4674f43bfaf0fd274ad3cf58a59af8170c02dfd8 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   site::{GetSiteResponse, LeaveAdmin},
   utils::{get_local_user_view_from_jwt, is_admin},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -17,7 +18,6 @@ use lemmy_db_schema::{
 use lemmy_db_views::structs::SiteView;
 use lemmy_db_views_actor::structs::PersonViewSafe;
 use lemmy_utils::{error::LemmyError, version, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for LeaveAdmin {
index f1ab9f45c408b16e13eb706d3239fb0f9721ef7c..85bfc40ce456713192784e408beb6070f17a036a 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   site::{GetModlog, GetModlogResponse},
   utils::{check_private_instance, get_local_user_view_from_jwt_opt, is_admin, is_mod_or_admin},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   newtypes::{CommunityId, PersonId},
@@ -28,7 +29,6 @@ use lemmy_db_views_moderator::structs::{
   ModlogListParams,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 use ModlogActionType::*;
 
 #[async_trait::async_trait(?Send)]
index d5a11216f4d6fd2e95e294e3b9734e69fb4acfd3..54f3c0edf9eba6c960a8d96c65dae41d0d0149b0 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   site::{PurgeComment, PurgeItemResponse},
   utils::{get_local_user_view_from_jwt, is_admin},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -12,7 +13,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for PurgeComment {
index 74373d81f8aabe2774374f79fb44455e6eabb063..c70c8c0a7e2cd3078af1b25e46471143fa54a033 100644 (file)
@@ -4,6 +4,7 @@ use lemmy_api_common::{
   request::purge_image_from_pictrs,
   site::{PurgeCommunity, PurgeItemResponse},
   utils::{get_local_user_view_from_jwt, is_admin, purge_image_posts_for_community},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -13,7 +14,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for PurgeCommunity {
index f5aad6e1d1ee1be1c6f52ebd51d12d7606f2b84c..8a5f6ac09885566870c42a574e35a8dc756fd1a3 100644 (file)
@@ -4,6 +4,7 @@ use lemmy_api_common::{
   request::purge_image_from_pictrs,
   site::{PurgeItemResponse, PurgePerson},
   utils::{get_local_user_view_from_jwt, is_admin, purge_image_posts_for_person},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -13,7 +14,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for PurgePerson {
index ee5adf723cebbd095ae061fb23430b0ae655c7c5..b3ec28eace886b9951831d4df3a867c456918ea1 100644 (file)
@@ -4,6 +4,7 @@ use lemmy_api_common::{
   request::purge_image_from_pictrs,
   site::{PurgeItemResponse, PurgePost},
   utils::{get_local_user_view_from_jwt, is_admin},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -13,7 +14,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for PurgePost {
index bb1252598dddf1b84c43b8a2d4b83f77d7f129ad..c5089b5d5228e0a3da2bc541b3abc7071037668d 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   site::{ApproveRegistrationApplication, RegistrationApplicationResponse},
   utils::{get_local_user_view_from_jwt, is_admin, send_application_approved_email},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -14,7 +15,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::{LocalUserView, RegistrationApplicationView};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for ApproveRegistrationApplication {
index 3d9ed326e635b09c5798b67dce5c96bdcdde8279..1ce709b35698b2846127d9d7cba2e659d3e44dac 100644 (file)
@@ -3,11 +3,11 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   site::{ListRegistrationApplications, ListRegistrationApplicationsResponse},
   utils::{get_local_user_view_from_jwt, is_admin},
+  LemmyContext,
 };
 use lemmy_db_schema::source::local_site::LocalSite;
 use lemmy_db_views::registration_application_view::RegistrationApplicationQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 /// Lists registration applications, filterable by undenied only.
 #[async_trait::async_trait(?Send)]
index 7fb8906aff1e786c990220a8f166532cbb18b09f..a22d14e956196cdd2fb75599abc701f6317665a0 100644 (file)
@@ -3,11 +3,11 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   site::{GetUnreadRegistrationApplicationCount, GetUnreadRegistrationApplicationCountResponse},
   utils::{get_local_user_view_from_jwt, is_admin},
+  LemmyContext,
 };
 use lemmy_db_schema::source::local_site::LocalSite;
 use lemmy_db_views::structs::RegistrationApplicationView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for GetUnreadRegistrationApplicationCount {
index 0e59c6835f9472ad81180b4a1da7fc5a2f1b9ab4..47aa248e737c3dade33c352e95d5eee82b7e9e26 100644 (file)
@@ -4,13 +4,13 @@ use diesel::NotFound;
 use lemmy_api_common::{
   site::{ResolveObject, ResolveObjectResponse},
   utils::{check_private_instance, get_local_user_view_from_jwt_opt},
+  LemmyContext,
 };
 use lemmy_apub::fetcher::search::{search_query_to_object_id, SearchableObjects};
 use lemmy_db_schema::{newtypes::PersonId, source::local_site::LocalSite, utils::DbPool};
 use lemmy_db_views::structs::{CommentView, PostView};
 use lemmy_db_views_actor::structs::{CommunityView, PersonViewSafe};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for ResolveObject {
index 5d813fcfdfa1621bdecd19677ededa7bcda72c87..1033f92e63eeec4ba32ab419c6f513ff062c6254 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   site::{Search, SearchResponse},
   utils::{check_private_instance, get_local_user_view_from_jwt_opt},
+  LemmyContext,
 };
 use lemmy_apub::{fetcher::resolve_actor_identifier, objects::community::ApubCommunity};
 use lemmy_db_schema::{
@@ -14,7 +15,6 @@ use lemmy_db_schema::{
 use lemmy_db_views::{comment_view::CommentQuery, post_view::PostQuery};
 use lemmy_db_views_actor::{community_view::CommunityQuery, person_view::PersonQuery};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl Perform for Search {
index 391b84e0d21f4eb7cbde5d765e7a6c23f7017cdb..0e0c015a1b78ce78c2664e4f50b55a64c88193b2 100644 (file)
@@ -3,21 +3,21 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   utils::get_local_user_view_from_jwt,
   websocket::{
-    CommunityJoin,
-    CommunityJoinResponse,
-    ModJoin,
-    ModJoinResponse,
-    PostJoin,
-    PostJoinResponse,
-    UserJoin,
-    UserJoinResponse,
+    messages::{JoinCommunityRoom, JoinModRoom, JoinPostRoom, JoinUserRoom},
+    structs::{
+      CommunityJoin,
+      CommunityJoinResponse,
+      ModJoin,
+      ModJoinResponse,
+      PostJoin,
+      PostJoinResponse,
+      UserJoin,
+      UserJoinResponse,
+    },
   },
-};
-use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{
-  messages::{JoinCommunityRoom, JoinModRoom, JoinPostRoom, JoinUserRoom},
   LemmyContext,
 };
+use lemmy_utils::{error::LemmyError, ConnectionId};
 
 #[async_trait::async_trait(?Send)]
 impl Perform for UserJoin {
index bfbaa8e2577987e5acf56952e2622365b2b1089b..a4c80da523bd2bf55f59965d27cb7054eb976ed3 100644 (file)
@@ -36,6 +36,17 @@ rosetta-i18n = { workspace = true, optional = true }
 percent-encoding = { workspace = true, optional = true }
 webpage = { version = "1.4.0", default-features = false, features = ["serde"], optional = true }
 encoding = { version = "0.2.33", optional = true }
+rand = { workspace = true }
+serde_json = { workspace = true }
+actix = { workspace = true }
+anyhow = { workspace = true }
+tokio = { workspace = true }
+strum = { workspace = true }
+strum_macros = { workspace = true }
+opentelemetry = { workspace = true }
+tracing-opentelemetry = { workspace = true }
+actix-web-actors = { version = "4.1.0", default-features = false }
+background-jobs = "0.13.0"
 
 [dev-dependencies]
 actix-rt = { workspace = true }
index ef907f88a1565f1900fd978eb51660dcf6923e9b..bcd603e5f150e3982d12ec18ef30b3cebd7b7dad 100644 (file)
@@ -11,7 +11,78 @@ pub mod site;
 pub mod utils;
 pub mod websocket;
 
+#[macro_use]
+extern crate strum_macros;
 pub extern crate lemmy_db_schema;
 pub extern crate lemmy_db_views;
 pub extern crate lemmy_db_views_actor;
 pub extern crate lemmy_db_views_moderator;
+
+use crate::websocket::chat_server::ChatServer;
+use actix::Addr;
+use lemmy_db_schema::{source::secret::Secret, utils::DbPool};
+use lemmy_utils::{
+  rate_limit::RateLimitCell,
+  settings::{structs::Settings, SETTINGS},
+};
+use reqwest_middleware::ClientWithMiddleware;
+
+pub struct LemmyContext {
+  pool: DbPool,
+  chat_server: Addr<ChatServer>,
+  client: ClientWithMiddleware,
+  settings: Settings,
+  secret: Secret,
+  rate_limit_cell: RateLimitCell,
+}
+
+impl LemmyContext {
+  pub fn create(
+    pool: DbPool,
+    chat_server: Addr<ChatServer>,
+    client: ClientWithMiddleware,
+    settings: Settings,
+    secret: Secret,
+    settings_updated_channel: RateLimitCell,
+  ) -> LemmyContext {
+    LemmyContext {
+      pool,
+      chat_server,
+      client,
+      settings,
+      secret,
+      rate_limit_cell: settings_updated_channel,
+    }
+  }
+  pub fn pool(&self) -> &DbPool {
+    &self.pool
+  }
+  pub fn chat_server(&self) -> &Addr<ChatServer> {
+    &self.chat_server
+  }
+  pub fn client(&self) -> &ClientWithMiddleware {
+    &self.client
+  }
+  pub fn settings(&self) -> &'static Settings {
+    &SETTINGS
+  }
+  pub fn secret(&self) -> &Secret {
+    &self.secret
+  }
+  pub fn settings_updated_channel(&self) -> &RateLimitCell {
+    &self.rate_limit_cell
+  }
+}
+
+impl Clone for LemmyContext {
+  fn clone(&self) -> Self {
+    LemmyContext {
+      pool: self.pool.clone(),
+      chat_server: self.chat_server.clone(),
+      client: self.client.clone(),
+      settings: self.settings.clone(),
+      secret: self.secret.clone(),
+      rate_limit_cell: self.rate_limit_cell.clone(),
+    }
+  }
+}
similarity index 98%
rename from crates/websocket/src/chat_server.rs
rename to crates/api_common/src/websocket/chat_server.rs
index 8577e04291770fe3a587b11d30a79f355f5a0752..c8f59e3d21bc317852d049d99dd56e9542258161 100644 (file)
@@ -1,14 +1,17 @@
 use crate::{
-  messages::{CaptchaItem, StandardMessage, WsMessage},
-  serialize_websocket_message,
+  comment::CommentResponse,
+  post::PostResponse,
+  websocket::{
+    messages::{CaptchaItem, StandardMessage, WsMessage},
+    serialize_websocket_message,
+    OperationType,
+    UserOperation,
+    UserOperationCrud,
+  },
   LemmyContext,
-  OperationType,
-  UserOperation,
-  UserOperationCrud,
 };
 use actix::prelude::*;
 use anyhow::Context as acontext;
-use lemmy_api_common::{comment::CommentResponse, post::PostResponse};
 use lemmy_db_schema::{
   newtypes::{CommunityId, LocalUserId, PostId},
   source::secret::Secret,
similarity index 99%
rename from crates/websocket/src/handlers.rs
rename to crates/api_common/src/websocket/handlers.rs
index 90ef01a4b91ae47f365a4d01dd5c801c45e32f59..6f3d164c920d80381ce6b1619c277ab287741279 100644 (file)
@@ -1,4 +1,4 @@
-use crate::{
+use crate::websocket::{
   chat_server::{ChatServer, SessionInfo},
   messages::{
     CaptchaItem,
similarity index 97%
rename from crates/websocket/src/messages.rs
rename to crates/api_common/src/websocket/messages.rs
index 21b6ac4b7e256494ca15b94b9762aedfc9fbad52..f81124161b2880736d69cb767df6021fa7f81d24 100644 (file)
@@ -1,6 +1,5 @@
-use crate::UserOperation;
+use crate::{comment::CommentResponse, post::PostResponse, websocket::UserOperation};
 use actix::{prelude::*, Recipient};
-use lemmy_api_common::{comment::CommentResponse, post::PostResponse};
 use lemmy_db_schema::newtypes::{CommunityId, LocalUserId, PostId};
 use lemmy_utils::{ConnectionId, IpAddr};
 use serde::{Deserialize, Serialize};
similarity index 58%
rename from crates/websocket/src/lib.rs
rename to crates/api_common/src/websocket/mod.rs
index e73e784e2b56cf13954f1bef7bee838fc01650de..d1e30f44814f91592adc554d3de154bcb892c5c2 100644 (file)
@@ -1,15 +1,4 @@
-#[macro_use]
-extern crate strum_macros;
-
-use crate::chat_server::ChatServer;
-use actix::Addr;
-use lemmy_db_schema::{source::secret::Secret, utils::DbPool};
-use lemmy_utils::{
-  error::LemmyError,
-  rate_limit::RateLimitCell,
-  settings::{structs::Settings, SETTINGS},
-};
-use reqwest_middleware::ClientWithMiddleware;
+use lemmy_utils::error::LemmyError;
 use serde::Serialize;
 
 pub mod chat_server;
@@ -17,66 +6,7 @@ pub mod handlers;
 pub mod messages;
 pub mod routes;
 pub mod send;
-
-pub struct LemmyContext {
-  pool: DbPool,
-  chat_server: Addr<ChatServer>,
-  client: ClientWithMiddleware,
-  settings: Settings,
-  secret: Secret,
-  rate_limit_cell: RateLimitCell,
-}
-
-impl LemmyContext {
-  pub fn create(
-    pool: DbPool,
-    chat_server: Addr<ChatServer>,
-    client: ClientWithMiddleware,
-    settings: Settings,
-    secret: Secret,
-    settings_updated_channel: RateLimitCell,
-  ) -> LemmyContext {
-    LemmyContext {
-      pool,
-      chat_server,
-      client,
-      settings,
-      secret,
-      rate_limit_cell: settings_updated_channel,
-    }
-  }
-  pub fn pool(&self) -> &DbPool {
-    &self.pool
-  }
-  pub fn chat_server(&self) -> &Addr<ChatServer> {
-    &self.chat_server
-  }
-  pub fn client(&self) -> &ClientWithMiddleware {
-    &self.client
-  }
-  pub fn settings(&self) -> &'static Settings {
-    &SETTINGS
-  }
-  pub fn secret(&self) -> &Secret {
-    &self.secret
-  }
-  pub fn settings_updated_channel(&self) -> &RateLimitCell {
-    &self.rate_limit_cell
-  }
-}
-
-impl Clone for LemmyContext {
-  fn clone(&self) -> Self {
-    LemmyContext {
-      pool: self.pool.clone(),
-      chat_server: self.chat_server.clone(),
-      client: self.client.clone(),
-      settings: self.settings.clone(),
-      secret: self.secret.clone(),
-      rate_limit_cell: self.rate_limit_cell.clone(),
-    }
-  }
-}
+pub mod structs;
 
 #[derive(Serialize)]
 struct WebsocketResponse<T> {
similarity index 97%
rename from crates/websocket/src/routes.rs
rename to crates/api_common/src/websocket/routes.rs
index a3b1b0460168a6cb1d118f505448616a1cd56816..7b500ce4c49a6c2e46ec5fbb2bf4e5d7e5520ac7 100644 (file)
@@ -1,6 +1,8 @@
 use crate::{
-  chat_server::ChatServer,
-  messages::{Connect, Disconnect, StandardMessage, WsMessage},
+  websocket::{
+    chat_server::ChatServer,
+    messages::{Connect, Disconnect, StandardMessage, WsMessage},
+  },
   LemmyContext,
 };
 use actix::prelude::*;
similarity index 98%
rename from crates/websocket/src/send.rs
rename to crates/api_common/src/websocket/send.rs
index 2793534f44e2654bafbfae933685be232f6174cc..6f3506aee6c927fb68afa43ed1cf41c9f450645f 100644 (file)
@@ -1,14 +1,14 @@
 use crate::{
-  messages::{SendComment, SendCommunityRoomMessage, SendPost, SendUserRoomMessage},
-  LemmyContext,
-  OperationType,
-};
-use lemmy_api_common::{
   comment::CommentResponse,
   community::CommunityResponse,
   post::PostResponse,
   private_message::PrivateMessageResponse,
   utils::{check_person_block, get_interface_language, send_email_to_user},
+  websocket::{
+    messages::{SendComment, SendCommunityRoomMessage, SendPost, SendUserRoomMessage},
+    OperationType,
+  },
+  LemmyContext,
 };
 use lemmy_db_schema::{
   newtypes::{CommentId, CommunityId, LocalUserId, PersonId, PostId, PrivateMessageId},
index b4f68a8df789c89f27975105506401a7cd1a4982..7a16aed5c6c0658aefb75ce8ec637ee1c7302267 100644 (file)
@@ -15,7 +15,6 @@ lemmy_db_schema = { workspace = true, features = ["full"] }
 lemmy_db_views = { workspace = true, features = ["full"] }
 lemmy_db_views_actor = { workspace = true, features = ["full"] }
 lemmy_api_common = { workspace = true, features = ["full"] }
-lemmy_websocket = { workspace = true }
 activitypub_federation = { workspace = true }
 bcrypt = { workspace = true }
 serde_json = { workspace = true }
index f027b0fe2b6c12317581b77e612d1f6049b9c066..a3be10a63c175e3bd60bdd6ed669b1c0dc2dc982 100644 (file)
@@ -10,6 +10,11 @@ use lemmy_api_common::{
     get_post,
     local_site_to_slur_regex,
   },
+  websocket::{
+    send::{send_comment_ws_message, send_local_notifs},
+    UserOperationCrud,
+  },
+  LemmyContext,
 };
 use lemmy_apub::{
   generate_local_apub_endpoint,
@@ -32,11 +37,6 @@ use lemmy_utils::{
   utils::{remove_slurs, scrape_text_for_mentions},
   ConnectionId,
 };
-use lemmy_websocket::{
-  send::{send_comment_ws_message, send_local_notifs},
-  LemmyContext,
-  UserOperationCrud,
-};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for CreateComment {
index 549d2f36697c7d134857bf93fe6e01e6465ebdef..f14d0d415902bc406d3f79e5a565eeb284ecc7c2 100644 (file)
@@ -3,6 +3,11 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   comment::{CommentResponse, DeleteComment},
   utils::{check_community_ban, get_local_user_view_from_jwt},
+  websocket::{
+    send::{send_comment_ws_message, send_local_notifs},
+    UserOperationCrud,
+  },
+  LemmyContext,
 };
 use lemmy_apub::activities::deletion::{send_apub_delete_in_community, DeletableObjects};
 use lemmy_db_schema::{
@@ -15,11 +20,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::CommentView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{
-  send::{send_comment_ws_message, send_local_notifs},
-  LemmyContext,
-  UserOperationCrud,
-};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for DeleteComment {
index afee451a3ea1b0948447d129d0be51331db17a2a..3e7444bf71b0b9fbad2e46bbdc6a03cc24940a38 100644 (file)
@@ -7,6 +7,7 @@ use lemmy_api_common::{
     get_local_user_view_from_jwt_opt,
     listing_type_with_site_default,
   },
+  LemmyContext,
 };
 use lemmy_apub::{fetcher::resolve_actor_identifier, objects::community::ApubCommunity};
 use lemmy_db_schema::{
@@ -15,7 +16,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::comment_view::CommentQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for GetComments {
index 7d5779ffef54ba098c7cff52a5ef87f292f95234..98b3431c29c143926738e67c9c8d542761518f2e 100644 (file)
@@ -3,11 +3,11 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   comment::{CommentResponse, GetComment},
   utils::{check_private_instance, get_local_user_view_from_jwt_opt},
+  LemmyContext,
 };
 use lemmy_db_schema::source::local_site::LocalSite;
 use lemmy_db_views::structs::CommentView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for GetComment {
index c1e581e0c39295559baa94a7182d9ac3c0f73e67..09e5fdfcaca55739c37a1c0b1b26bf498910269d 100644 (file)
@@ -3,6 +3,11 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   comment::{CommentResponse, RemoveComment},
   utils::{check_community_ban, get_local_user_view_from_jwt, is_mod_or_admin},
+  websocket::{
+    send::{send_comment_ws_message, send_local_notifs},
+    UserOperationCrud,
+  },
+  LemmyContext,
 };
 use lemmy_apub::activities::deletion::{send_apub_delete_in_community, DeletableObjects};
 use lemmy_db_schema::{
@@ -16,11 +21,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::CommentView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{
-  send::{send_comment_ws_message, send_local_notifs},
-  LemmyContext,
-  UserOperationCrud,
-};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for RemoveComment {
index 0d89acc2924c6657cf6b1fdb64ad5ab915e7d300..d1fcccd9c943d91a3fd6192206c408e97a8650fc 100644 (file)
@@ -10,6 +10,11 @@ use lemmy_api_common::{
     is_mod_or_admin,
     local_site_to_slur_regex,
   },
+  websocket::{
+    send::{send_comment_ws_message, send_local_notifs},
+    UserOperationCrud,
+  },
+  LemmyContext,
 };
 use lemmy_apub::protocol::activities::{
   create_or_update::note::CreateOrUpdateNote,
@@ -29,11 +34,6 @@ use lemmy_utils::{
   utils::{remove_slurs, scrape_text_for_mentions},
   ConnectionId,
 };
-use lemmy_websocket::{
-  send::{send_comment_ws_message, send_local_notifs},
-  LemmyContext,
-  UserOperationCrud,
-};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for EditComment {
index 437671eef4d0ad83bd594029a7a2ca9a1062e968..caa1a363d4625c6315ac95cd18af66b681a47f4c 100644 (file)
@@ -4,6 +4,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{CommunityResponse, CreateCommunity},
   utils::{get_local_user_view_from_jwt, is_admin, local_site_to_slur_regex},
+  LemmyContext,
 };
 use lemmy_apub::{
   generate_followers_url,
@@ -32,7 +33,6 @@ use lemmy_utils::{
   utils::{check_slurs, check_slurs_opt, is_valid_actor_name},
   ConnectionId,
 };
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for CreateCommunity {
index 41f14b527216499f8ee9a3d9f267f775e764aaac..7d3122ab4ed8b539942b70e98d16340e63f987bb 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{CommunityResponse, DeleteCommunity},
   utils::get_local_user_view_from_jwt,
+  websocket::{send::send_community_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::activities::deletion::{send_apub_delete_in_community, DeletableObjects};
 use lemmy_db_schema::{
@@ -11,7 +13,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::CommunityModeratorView;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_community_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for DeleteCommunity {
index 37a9d88a4cefbba6b19bde59a93ea943fd8178ef..f77ebce75537bb7da4b24fce3e72525d6940f309 100644 (file)
@@ -3,11 +3,11 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{ListCommunities, ListCommunitiesResponse},
   utils::{check_private_instance, get_local_user_view_from_jwt_opt},
+  LemmyContext,
 };
 use lemmy_db_schema::{source::local_site::LocalSite, traits::DeleteableOrRemoveable};
 use lemmy_db_views_actor::community_view::CommunityQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for ListCommunities {
index 1b3e5ff488f4ebcfbb2df59d3e00acc727363a8c..a008f78657b5be16ebcb52796a794fd606a9519f 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{GetCommunity, GetCommunityResponse},
   utils::{check_private_instance, get_local_user_view_from_jwt_opt},
+  websocket::messages::GetCommunityUsersOnline,
+  LemmyContext,
 };
 use lemmy_apub::{
   fetcher::resolve_actor_identifier,
@@ -20,7 +22,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::{CommunityModeratorView, CommunityView};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::GetCommunityUsersOnline, LemmyContext};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for GetCommunity {
index 1977f5cd1c087080900a8f9403496b978eac54d8..77c2bde30a8d37275bb713d08d778d50847958db 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{CommunityResponse, RemoveCommunity},
   utils::{get_local_user_view_from_jwt, is_admin},
+  websocket::{send::send_community_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::activities::deletion::{send_apub_delete_in_community, DeletableObjects};
 use lemmy_db_schema::{
@@ -13,7 +15,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, utils::naive_from_unix, ConnectionId};
-use lemmy_websocket::{send::send_community_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for RemoveCommunity {
index 8e60b3f8805623aee51d3a32cf11c24f621eee49..2bde94ea63018adcf2ba40c40045fadc6544f368 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   community::{CommunityResponse, EditCommunity},
   utils::{get_local_user_view_from_jwt, local_site_to_slur_regex},
+  websocket::{send::send_community_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::protocol::activities::community::update::UpdateCommunity;
 use lemmy_db_schema::{
@@ -17,7 +19,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views_actor::structs::CommunityModeratorView;
 use lemmy_utils::{error::LemmyError, utils::check_slurs_opt, ConnectionId};
-use lemmy_websocket::{send::send_community_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for EditCommunity {
index b50d3cd27ae28f1ee80575b2a4ba3e37e4f94a68..fde81eddbe01e8e25b024ebd8489e662316721dd 100644 (file)
@@ -18,9 +18,10 @@ use lemmy_api_common::{
     GetPrivateMessages,
   },
   site::{CreateSite, EditSite, GetSite},
+  websocket::{serialize_websocket_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{serialize_websocket_message, LemmyContext, UserOperationCrud};
 use serde::Deserialize;
 
 mod comment;
index cad8b28e227f7ad50bed13f2678c953f04e58c06..2353def6d266fec806495c26687dac824f7d6c82 100644 (file)
@@ -11,6 +11,8 @@ use lemmy_api_common::{
     local_site_to_slur_regex,
     mark_post_as_read,
   },
+  websocket::{send::send_post_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::{
   generate_local_apub_endpoint,
@@ -34,7 +36,6 @@ use lemmy_utils::{
   utils::{check_slurs, check_slurs_opt, clean_url_params, is_valid_post_title},
   ConnectionId,
 };
-use lemmy_websocket::{send::send_post_ws_message, LemmyContext, UserOperationCrud};
 use tracing::{warn, Instrument};
 use url::Url;
 use webmention::{Webmention, WebmentionError};
index a0b930084c26005cc6f37b05c29b3f802b1d332a..de1490b1c51acf07ebc0e4b1ca6c942d9a938c0e 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   post::{DeletePost, PostResponse},
   utils::{check_community_ban, check_community_deleted_or_removed, get_local_user_view_from_jwt},
+  websocket::{send::send_post_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::activities::deletion::{send_apub_delete_in_community, DeletableObjects};
 use lemmy_db_schema::{
@@ -13,7 +15,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_post_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for DeletePost {
index bf4086e47ab4d893af312862d1bb7bda94b4d03c..42944cada8854e5fc993f9398e0c62f6db43a071 100644 (file)
@@ -7,6 +7,7 @@ use lemmy_api_common::{
     get_local_user_view_from_jwt_opt,
     listing_type_with_site_default,
   },
+  LemmyContext,
 };
 use lemmy_apub::{fetcher::resolve_actor_identifier, objects::community::ApubCommunity};
 use lemmy_db_schema::{
@@ -15,7 +16,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::post_view::PostQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for GetPosts {
index 5e2582a07c360f25cb778f7aa9fecc7cdd3929bb..44d1be63a51a17f4212293b6138621c2905b5e72 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   post::{GetPost, GetPostResponse},
   utils::{check_private_instance, get_local_user_view_from_jwt_opt, mark_post_as_read},
+  websocket::messages::GetPostUsersOnline,
+  LemmyContext,
 };
 use lemmy_db_schema::{
   aggregates::structs::{PersonPostAggregates, PersonPostAggregatesForm},
@@ -12,7 +14,6 @@ use lemmy_db_schema::{
 use lemmy_db_views::structs::PostView;
 use lemmy_db_views_actor::structs::{CommunityModeratorView, CommunityView};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{messages::GetPostUsersOnline, LemmyContext};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for GetPost {
index b062bc6537d1b5a44da21312f81f6e6545aa04c0..525c08a68e5405a7c7e38143ce821a252cbdcff9 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   post::{PostResponse, RemovePost},
   utils::{check_community_ban, get_local_user_view_from_jwt, is_mod_or_admin},
+  websocket::{send::send_post_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::activities::deletion::{send_apub_delete_in_community, DeletableObjects};
 use lemmy_db_schema::{
@@ -14,7 +16,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_post_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for RemovePost {
index 11b566bc92bcb1e9a4206ce7a0aff279e38f6bd8..4c3038c87dd9f3e833720bee39cd9cbce3cb8a0c 100644 (file)
@@ -9,6 +9,8 @@ use lemmy_api_common::{
     get_local_user_view_from_jwt,
     local_site_to_slur_regex,
   },
+  websocket::{send::send_post_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::protocol::activities::{
   create_or_update::page::CreateOrUpdatePage,
@@ -28,7 +30,6 @@ use lemmy_utils::{
   utils::{check_slurs_opt, clean_url_params, is_valid_post_title},
   ConnectionId,
 };
-use lemmy_websocket::{send::send_post_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for EditPost {
index 35bc09e2291245f7b4c65ffd42f5f369c164edd6..6f099f79367e2aaa709e744e88239bffad6b849e 100644 (file)
@@ -9,6 +9,8 @@ use lemmy_api_common::{
     local_site_to_slur_regex,
     send_email_to_user,
   },
+  websocket::{send::send_pm_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::{
   generate_local_apub_endpoint,
@@ -27,7 +29,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::LocalUserView;
 use lemmy_utils::{error::LemmyError, utils::remove_slurs, ConnectionId};
-use lemmy_websocket::{send::send_pm_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for CreatePrivateMessage {
index 51cded6d1da105f48573e5df837041bbc80fe2d6..ad6b78d3e47301de2e0eda8aa0eaac2b29d55685 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   private_message::{DeletePrivateMessage, PrivateMessageResponse},
   utils::get_local_user_view_from_jwt,
+  websocket::{send::send_pm_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::activities::deletion::send_apub_delete_private_message;
 use lemmy_db_schema::{
@@ -10,7 +12,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::{send::send_pm_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for DeletePrivateMessage {
index f0741398e09cca34be5b828de47b37578deb11c3..88bb08300469f98c0b478a82be147ac798582f96 100644 (file)
@@ -3,11 +3,11 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   private_message::{GetPrivateMessages, PrivateMessagesResponse},
   utils::get_local_user_view_from_jwt,
+  LemmyContext,
 };
 use lemmy_db_schema::traits::DeleteableOrRemoveable;
 use lemmy_db_views::private_message_view::PrivateMessageQuery;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for GetPrivateMessages {
index 5f79735e99235d8a4652bde39c076bee83b3f3c1..b6e08c9c6bfaa1ebd69779fdd15928d5a8c57e71 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   private_message::{EditPrivateMessage, PrivateMessageResponse},
   utils::{get_local_user_view_from_jwt, local_site_to_slur_regex},
+  websocket::{send::send_pm_ws_message, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_apub::protocol::activities::{
   create_or_update::chat_message::CreateOrUpdateChatMessage,
@@ -17,7 +19,6 @@ use lemmy_db_schema::{
   utils::naive_now,
 };
 use lemmy_utils::{error::LemmyError, utils::remove_slurs, ConnectionId};
-use lemmy_websocket::{send::send_pm_ws_message, LemmyContext, UserOperationCrud};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for EditPrivateMessage {
index 8b2b9c18bf7a0d2024faff469d2a11a039470d2b..22631d5146e5de419797436cd2857f62503124e9 100644 (file)
@@ -10,6 +10,7 @@ use lemmy_api_common::{
     local_site_to_slur_regex,
     site_description_length_check,
   },
+  LemmyContext,
 };
 use lemmy_apub::generate_site_inbox_url;
 use lemmy_db_schema::{
@@ -28,7 +29,6 @@ use lemmy_utils::{
   utils::{check_application_question, check_slurs, check_slurs_opt},
   ConnectionId,
 };
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 #[async_trait::async_trait(?Send)]
index dbf64c6c3afbdffdffcf9c305b61d4d550d68e38..8f27bb2ee51ed35c07de301eeb9613d08a70065d 100644 (file)
@@ -3,6 +3,8 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   site::{GetSite, GetSiteResponse, MyUserInfo},
   utils::{build_federated_instances, get_local_user_settings_view_from_jwt_opt},
+  websocket::messages::GetUsersOnline,
+  LemmyContext,
 };
 use lemmy_db_schema::source::{actor_language::SiteLanguage, language::Language, tagline::Tagline};
 use lemmy_db_views::structs::{LocalUserDiscussionLanguageView, SiteView};
@@ -14,7 +16,6 @@ use lemmy_db_views_actor::structs::{
   PersonViewSafe,
 };
 use lemmy_utils::{error::LemmyError, version, ConnectionId};
-use lemmy_websocket::{messages::GetUsersOnline, LemmyContext};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for GetSite {
index 07e96582352085b16a2b534c301c829d86533b01..e738a2513616e337a77db9022375d5589a3177f8 100644 (file)
@@ -9,6 +9,8 @@ use lemmy_api_common::{
     local_site_to_slur_regex,
     site_description_length_check,
   },
+  websocket::{messages::SendAllMessage, UserOperationCrud},
+  LemmyContext,
 };
 use lemmy_db_schema::{
   source::{
@@ -31,7 +33,6 @@ use lemmy_utils::{
   utils::{check_application_question, check_slurs_opt},
   ConnectionId,
 };
-use lemmy_websocket::{messages::SendAllMessage, LemmyContext, UserOperationCrud};
 use std::str::FromStr;
 
 #[async_trait::async_trait(?Send)]
index d1b5fbc3ee46b23fc9d6fc24e5a3778725afc2c5..5686348f7710697a716f2acd23a5369b5fb31d40 100644 (file)
@@ -10,6 +10,8 @@ use lemmy_api_common::{
     send_new_applicant_email_to_admins,
     send_verification_email,
   },
+  websocket::messages::CheckCaptcha,
+  LemmyContext,
 };
 use lemmy_apub::{
   generate_inbox_url,
@@ -33,7 +35,6 @@ use lemmy_utils::{
   utils::{check_slurs, check_slurs_opt, is_valid_actor_name},
   ConnectionId,
 };
-use lemmy_websocket::{messages::CheckCaptcha, LemmyContext};
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for Register {
index 5947476737f23739f0da9728c9c003c23433ba26..87ad78e44323234ed75c77f9d5ddd4bb0d22e88e 100644 (file)
@@ -4,10 +4,10 @@ use bcrypt::verify;
 use lemmy_api_common::{
   person::{DeleteAccount, DeleteAccountResponse},
   utils::{delete_user_account, get_local_user_view_from_jwt},
+  LemmyContext,
 };
 use lemmy_apub::protocol::activities::deletion::delete_user::DeleteUser;
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for DeleteAccount {
index ccf5189cddf2b6516e61b52d4994b53f4c38d607..b7b155a746697d6b25a34a743a040e03c75e35fb 100644 (file)
@@ -3,6 +3,7 @@ use actix_web::web::Data;
 use lemmy_api_common::{
   person::{GetPersonDetails, GetPersonDetailsResponse},
   utils::{check_private_instance, get_local_user_view_from_jwt_opt},
+  LemmyContext,
 };
 use lemmy_apub::{fetcher::resolve_actor_identifier, objects::person::ApubPerson};
 use lemmy_db_schema::{
@@ -12,7 +13,6 @@ use lemmy_db_schema::{
 use lemmy_db_views::{comment_view::CommentQuery, post_view::PostQuery};
 use lemmy_db_views_actor::structs::{CommunityModeratorView, PersonViewSafe};
 use lemmy_utils::{error::LemmyError, ConnectionId};
-use lemmy_websocket::LemmyContext;
 
 #[async_trait::async_trait(?Send)]
 impl PerformCrud for GetPersonDetails {
index c2a8827eb09f97d0ce13f45aa67c77819f572909..720fa5937ab9cbd4c753a82df17f52affb178d97 100644 (file)
@@ -19,7 +19,6 @@ lemmy_db_schema = { workspace = true, features = ["full"] }
 lemmy_db_views = { workspace = true, features = ["full"] }
 lemmy_db_views_actor = { workspace = true, features = ["full"] }
 lemmy_api_common = { workspace = true, features = ["full"] }
-lemmy_websocket = { workspace = true }
 activitypub_federation = { workspace = true }
 diesel = { workspace = true }
 chrono = { workspace = true }
index 1d726e7ce1e8feabf59684283a8acdb265f27c6d..c77bfde35c2221daa779df0289c3c6757e25d9e1 100644 (file)
@@ -23,7 +23,10 @@ use activitypub_federation::{
 use activitystreams_kinds::{activity::BlockType, public};
 use anyhow::anyhow;
 use chrono::NaiveDateTime;
-use lemmy_api_common::utils::{remove_user_data, remove_user_data_in_community};
+use lemmy_api_common::{
+  utils::{remove_user_data, remove_user_data_in_community},
+  LemmyContext,
+};
 use lemmy_db_schema::{
   source::{
     community::{
@@ -38,7 +41,6 @@ use lemmy_db_schema::{
   traits::{Bannable, Crud, Followable},
 };
 use lemmy_utils::{error::LemmyError, utils::convert_datetime};
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 impl BlockUser {
index bc2ea77f0977f58d7e44bc137a60f5a8569e715d..5a8c48f13678b369f8c8ca4738c89f0894064f5d 100644 (file)
@@ -5,9 +5,9 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, traits::ApubObject};
 use chrono::NaiveDateTime;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{source::site::Site, utils::DbPool};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::Deserialize;
 use url::Url;
 
index eb54f5e48b445c9169d07294adb8936f7870bd8d..56f794dc18e5e97741efaa3da3c8b0b98ff8cb46 100644 (file)
@@ -19,6 +19,7 @@ use activitypub_federation::{
   utils::verify_domains_match,
 };
 use activitystreams_kinds::{activity::UndoType, public};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{
     community::{CommunityPersonBan, CommunityPersonBanForm},
@@ -28,7 +29,6 @@ use lemmy_db_schema::{
   traits::{Bannable, Crud},
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 impl UndoBlockUser {
index c212cfe148add1d4f7593f7dfa4d8b1f48a6f207..2bdf2be5e6276ea086b1945b2188a3ab1812ddd6 100644 (file)
@@ -20,6 +20,7 @@ use activitypub_federation::{
   traits::{ActivityHandler, Actor},
 };
 use activitystreams_kinds::{activity::AddType, public};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{
     community::{CommunityModerator, CommunityModeratorForm},
@@ -28,7 +29,6 @@ use lemmy_db_schema::{
   traits::{Crud, Joinable},
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 impl AddMod {
index b6c31af5d590467989845b6f436da5b7ab0853bf..1ca1aa848888d67fcfcdbf1c7a27fb2f8200909a 100644 (file)
@@ -18,8 +18,8 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, data::Data, traits::ActivityHandler};
 use activitystreams_kinds::{activity::AnnounceType, public};
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde_json::Value;
 use tracing::debug;
 use url::Url;
index a7b35595e035d629182d212eff609ec259817d5a..3d0bb4c3dd51abfd6a46d4e2a0f55c93bf54e9e1 100644 (file)
@@ -6,9 +6,9 @@ use crate::{
   protocol::activities::community::announce::AnnounceActivity,
 };
 use activitypub_federation::{core::object_id::ObjectId, traits::Actor};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::source::person::PersonFollower;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 pub mod add_mod;
index 3934df3b1c4b20b8fe39220508cacfddfd36303d..ca8d5b042810cee770cf33624d03d24de80ab430 100644 (file)
@@ -20,6 +20,7 @@ use activitypub_federation::{
   traits::{ActivityHandler, Actor},
 };
 use activitystreams_kinds::{activity::RemoveType, public};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{
     community::{CommunityModerator, CommunityModeratorForm},
@@ -28,7 +29,6 @@ use lemmy_db_schema::{
   traits::{Crud, Joinable},
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 impl RemoveMod {
index 440a8ebbba9f3e60dc004a91c342b419c07c5895..2741af7e8290acd96208d71355b5cb1486c9450d 100644 (file)
@@ -12,7 +12,12 @@ use activitypub_federation::{
   traits::{ActivityHandler, Actor},
 };
 use activitystreams_kinds::activity::FlagType;
-use lemmy_api_common::{comment::CommentReportResponse, post::PostReportResponse};
+use lemmy_api_common::{
+  comment::CommentReportResponse,
+  post::PostReportResponse,
+  websocket::{messages::SendModRoomMessage, UserOperation},
+  LemmyContext,
+};
 use lemmy_db_schema::{
   source::{
     comment_report::{CommentReport, CommentReportForm},
@@ -22,7 +27,6 @@ use lemmy_db_schema::{
 };
 use lemmy_db_views::structs::{CommentReportView, PostReportView};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{messages::SendModRoomMessage, LemmyContext, UserOperation};
 use url::Url;
 
 impl Report {
index f41f2d47c2bdc6d04ff6fb22d4e993c82ab27e6c..c0d1a2799432fd6529ac012b4e4b3808bd85a6f5 100644 (file)
@@ -17,9 +17,12 @@ use activitypub_federation::{
   traits::{ActivityHandler, ApubObject},
 };
 use activitystreams_kinds::{activity::UpdateType, public};
+use lemmy_api_common::{
+  websocket::{send::send_community_ws_message, UserOperationCrud},
+  LemmyContext,
+};
 use lemmy_db_schema::{source::community::Community, traits::Crud};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{send::send_community_ws_message, LemmyContext, UserOperationCrud};
 use url::Url;
 
 impl UpdateCommunity {
index a4b60ad4d052a8b3163c8aa623826c6728906221..5def04604bfd9f23def0f2c0afc1fe86cf36887e 100644 (file)
@@ -24,7 +24,11 @@ use activitypub_federation::{
   utils::verify_domains_match,
 };
 use activitystreams_kinds::public;
-use lemmy_api_common::utils::check_post_deleted_or_removed;
+use lemmy_api_common::{
+  utils::check_post_deleted_or_removed,
+  websocket::{send::send_comment_ws_message, UserOperationCrud},
+  LemmyContext,
+};
 use lemmy_db_schema::{
   source::{
     comment::{CommentLike, CommentLikeForm},
@@ -34,7 +38,6 @@ use lemmy_db_schema::{
   traits::{Crud, Likeable},
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{send::send_comment_ws_message, LemmyContext, UserOperationCrud};
 use url::Url;
 
 impl CreateOrUpdateNote {
index 2c68ad80f25274b2f7b2eed5e9a3fc07cec0f29c..b53dd2eb847b51ac8c2fb46adcd511e5f849c33d 100644 (file)
@@ -1,12 +1,12 @@
 use crate::{local_instance, objects::person::ApubPerson};
 use activitypub_federation::core::object_id::ObjectId;
+use lemmy_api_common::{websocket::send::send_local_notifs, LemmyContext};
 use lemmy_db_schema::{
   newtypes::LocalUserId,
   source::{comment::Comment, post::Post},
   traits::Crud,
 };
 use lemmy_utils::{error::LemmyError, utils::scrape_text_for_mentions};
-use lemmy_websocket::{send::send_local_notifs, LemmyContext};
 
 pub mod comment;
 pub mod post;
index abe9be1a66a22593d3ee84827e8613034752a4a6..161b26b9dadc08aef16554ebbbfb11c3926016cd 100644 (file)
@@ -22,6 +22,10 @@ use activitypub_federation::{
   utils::{verify_domains_match, verify_urls_match},
 };
 use activitystreams_kinds::public;
+use lemmy_api_common::{
+  websocket::{send::send_post_ws_message, UserOperationCrud},
+  LemmyContext,
+};
 use lemmy_db_schema::{
   source::{
     community::Community,
@@ -30,7 +34,6 @@ use lemmy_db_schema::{
   traits::{Crud, Likeable},
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{send::send_post_ws_message, LemmyContext, UserOperationCrud};
 use url::Url;
 
 impl CreateOrUpdatePage {
index eb310ce9cf26feda214ff9a6bf466a39b7868a89..431e699cecd402fb7d2ddb3cb086f3bfa2508972 100644 (file)
@@ -13,9 +13,12 @@ use activitypub_federation::{
   traits::{ActivityHandler, Actor, ApubObject},
   utils::verify_domains_match,
 };
+use lemmy_api_common::{
+  websocket::{send::send_pm_ws_message, UserOperationCrud},
+  LemmyContext,
+};
 use lemmy_db_schema::{source::person::Person, traits::Crud};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{send::send_pm_ws_message, LemmyContext, UserOperationCrud};
 use url::Url;
 
 impl CreateOrUpdateChatMessage {
index 8298a6fe04fcf2ebf9dde6d27aafb1f4bc3512fc..ae93d6e09604228091d9594658d0d2f8786498bb 100644 (file)
@@ -9,6 +9,13 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, data::Data, traits::ActivityHandler};
 use activitystreams_kinds::activity::DeleteType;
+use lemmy_api_common::{
+  websocket::{
+    send::{send_comment_ws_message_simple, send_community_ws_message, send_post_ws_message},
+    UserOperationCrud,
+  },
+  LemmyContext,
+};
 use lemmy_db_schema::{
   source::{
     comment::{Comment, CommentUpdateForm},
@@ -26,11 +33,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{
-  send::{send_comment_ws_message_simple, send_community_ws_message, send_post_ws_message},
-  LemmyContext,
-  UserOperationCrud,
-};
 use url::Url;
 
 #[async_trait::async_trait(?Send)]
index 08d9d3959942c503cb233ffab63f49a8574ce94f..ffe664d59985ed642a82e33f78ee9040ef074d85 100644 (file)
@@ -11,9 +11,8 @@ use activitypub_federation::{
   utils::verify_urls_match,
 };
 use activitystreams_kinds::{activity::DeleteType, public};
-use lemmy_api_common::utils::delete_user_account;
+use lemmy_api_common::{utils::delete_user_account, LemmyContext};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 /// This can be separate from Delete activity because it doesn't need to be handled in shared inbox
index bf4b920a81c07b813baca532f734eb5335dcb304..d05e450219ae277f4b3db20de6d14171f03675e7 100644 (file)
@@ -28,6 +28,18 @@ use activitypub_federation::{
   utils::verify_domains_match,
 };
 use activitystreams_kinds::public;
+use lemmy_api_common::{
+  websocket::{
+    send::{
+      send_comment_ws_message_simple,
+      send_community_ws_message,
+      send_pm_ws_message,
+      send_post_ws_message,
+    },
+    UserOperationCrud,
+  },
+  LemmyContext,
+};
 use lemmy_db_schema::{
   source::{
     comment::{Comment, CommentUpdateForm},
@@ -39,16 +51,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{
-  send::{
-    send_comment_ws_message_simple,
-    send_community_ws_message,
-    send_pm_ws_message,
-    send_post_ws_message,
-  },
-  LemmyContext,
-  UserOperationCrud,
-};
 use std::ops::Deref;
 use url::Url;
 
index 8b845400e52a62f16c217075de6b46e13323d19b..bc6f9fd14c22ae2e0f0e9a2eeaabd5ac07029e5c 100644 (file)
@@ -9,6 +9,13 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, data::Data, traits::ActivityHandler};
 use activitystreams_kinds::activity::UndoType;
+use lemmy_api_common::{
+  websocket::{
+    send::{send_comment_ws_message_simple, send_community_ws_message, send_post_ws_message},
+    UserOperationCrud,
+  },
+  LemmyContext,
+};
 use lemmy_db_schema::{
   source::{
     comment::{Comment, CommentUpdateForm},
@@ -26,11 +33,6 @@ use lemmy_db_schema::{
   traits::Crud,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{
-  send::{send_comment_ws_message_simple, send_community_ws_message, send_post_ws_message},
-  LemmyContext,
-  UserOperationCrud,
-};
 use url::Url;
 
 #[async_trait::async_trait(?Send)]
index 5a8baa4c7b5525a0b7d83d1390cee4a3e7c9eff5..880db0d99144c9e61c09ea46fe39f2f8d9ca0fbd 100644 (file)
@@ -11,12 +11,15 @@ use activitypub_federation::{
   utils::verify_urls_match,
 };
 use activitystreams_kinds::activity::AcceptType;
-use lemmy_api_common::community::CommunityResponse;
+use lemmy_api_common::{
+  community::CommunityResponse,
+  websocket::{messages::SendUserRoomMessage, UserOperation},
+  LemmyContext,
+};
 use lemmy_db_schema::{source::community::CommunityFollower, traits::Followable};
 use lemmy_db_views::structs::LocalUserView;
 use lemmy_db_views_actor::structs::CommunityView;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{messages::SendUserRoomMessage, LemmyContext, UserOperation};
 use url::Url;
 
 impl AcceptFollow {
index 867eb2913d3b4c3242549e19e87e279755af0db2..82c0c37a5942b1a244f7153720b11a47b9cf84fb 100644 (file)
@@ -17,6 +17,7 @@ use activitypub_federation::{
   traits::{ActivityHandler, Actor},
 };
 use activitystreams_kinds::activity::FollowType;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{
     community::{CommunityFollower, CommunityFollowerForm},
@@ -25,7 +26,6 @@ use lemmy_db_schema::{
   traits::Followable,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 impl Follow {
index 012ebfb90f143943c184a93b63150c39f79053f1..7d48f9f3ce6612265ddd420d3f533c5b82b4814a 100644 (file)
@@ -13,6 +13,7 @@ use activitypub_federation::{
   utils::verify_urls_match,
 };
 use activitystreams_kinds::activity::UndoType;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{
     community::{CommunityFollower, CommunityFollowerForm},
@@ -21,7 +22,6 @@ use lemmy_db_schema::{
   traits::Followable,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 impl UndoFollow {
index c38eadcda2a000ae8c74af1b70015fe80f27460f..1528a273c5ebaff28a13100bb23633b3c7f28593 100644 (file)
@@ -13,13 +13,13 @@ use activitypub_federation::{
 };
 use activitystreams_kinds::public;
 use anyhow::anyhow;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   newtypes::CommunityId,
   source::{community::Community, local_site::LocalSite},
 };
 use lemmy_db_views_actor::structs::{CommunityPersonBanView, CommunityView};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::Serialize;
 use std::ops::Deref;
 use tracing::info;
index bff67efeef641c2e70e5c9922009a8e2c67fa2c5..a01dcb2ea3588e62d786ccbdb2f5f8e01d864e88 100644 (file)
@@ -2,6 +2,13 @@ use crate::{
   objects::{comment::ApubComment, person::ApubPerson, post::ApubPost},
   protocol::activities::voting::vote::VoteType,
 };
+use lemmy_api_common::{
+  websocket::{
+    send::{send_comment_ws_message_simple, send_post_ws_message},
+    UserOperation,
+  },
+  LemmyContext,
+};
 use lemmy_db_schema::{
   source::{
     comment::{CommentLike, CommentLikeForm},
@@ -10,11 +17,6 @@ use lemmy_db_schema::{
   traits::Likeable,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::{
-  send::{send_comment_ws_message_simple, send_post_ws_message},
-  LemmyContext,
-  UserOperation,
-};
 
 pub mod undo_vote;
 pub mod vote;
index 20c9432cde52957362b31fa5b1785607ada51717..dca106ded9380117e76e3de939210e1a8d3b8cb1 100644 (file)
@@ -25,9 +25,9 @@ use activitypub_federation::{
   utils::verify_urls_match,
 };
 use activitystreams_kinds::activity::UndoType;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{newtypes::CommunityId, source::community::Community, traits::Crud};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 impl UndoVote {
index f8d44ed9878444b48f0dae5c166a58ed2ec13602..bc702fd865e998418e9f5dcb62c3d1a0cd734c0e 100644 (file)
@@ -17,13 +17,13 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, data::Data, traits::ActivityHandler};
 use anyhow::anyhow;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   newtypes::CommunityId,
   source::{community::Community, local_site::LocalSite},
   traits::Crud,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 /// Vote has as:Public value in cc field, unlike other activities. This indicates to other software
index fa8eece38921fbd29bd22c7a354c0b0fb9c07e9d..fa343d8ae746528d599c662b49112959290b48b7 100644 (file)
@@ -24,8 +24,8 @@ use crate::{
   },
 };
 use activitypub_federation::{data::Data, deser::context::WithContext, traits::ActivityHandler};
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index e2a274a01ee24328d69adf14b6231b54ac09e6a0..4c27beb415c734c1be615110ce4049bebaaff902 100644 (file)
@@ -1,5 +1,5 @@
 use crate::objects::community::ApubCommunity;
-use lemmy_websocket::LemmyContext;
+use lemmy_api_common::LemmyContext;
 
 pub(crate) mod community_moderators;
 pub(crate) mod community_outbox;
index c84ebabbcbf574bd93a603f12f72328d7f06bccd..0eae410c6481f0156d4ac143786d90785ff1668c 100644 (file)
@@ -13,7 +13,7 @@ use lemmy_db_schema::source::{
   site::Site,
 };
 use lemmy_utils::LemmyError;
-use lemmy_websocket::LemmyContext;
+use lemmy_api_common::LemmyContext;
 
 // TODO: merge this trait with ApubObject (means that db_schema needs to depend on apub_lib)
 #[async_trait::async_trait(?Send)]
index d98bb8e4d42e7c3950dd66beb5cc79aa9e254961..563989241f248ea54bc49f290b7993cf0069b472 100644 (file)
@@ -1,9 +1,9 @@
 use crate::{fetcher::webfinger::webfinger_resolve_actor, ActorType};
 use activitypub_federation::traits::ApubObject;
 use itertools::Itertools;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::traits::ApubActor;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 
 pub mod post_or_comment;
 pub mod search;
index d2d0b91f64e6fae2c0e58ab08619dfe1ac8033ea..b44d9f16f9d9ea9c9631772fa3d74d9882402871 100644 (file)
@@ -7,12 +7,12 @@ use crate::{
 };
 use activitypub_federation::traits::ApubObject;
 use chrono::NaiveDateTime;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{community::Community, post::Post},
   traits::Crud,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::Deserialize;
 use url::Url;
 
index 1daccd3a4f830ba061a8222ae82a98e7a24fd919..95b47f5e499e0dd5946e6674075bec20606584f6 100644 (file)
@@ -6,8 +6,8 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, traits::ApubObject};
 use chrono::NaiveDateTime;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::Deserialize;
 use url::Url;
 
index 156f5e83a6eb6f4969a69ef1576c8340d64e24cc..14fc5c34464ed74b59aa9a6889312dabc014d174 100644 (file)
@@ -5,8 +5,8 @@ use crate::{
 };
 use activitypub_federation::traits::{Actor, ApubObject};
 use chrono::NaiveDateTime;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index 8e97d7d07f9d595d0ac9ee74eb694599657abef4..4a0ff4fd84bd245db4d12cbfda456cc679cf97a8 100644 (file)
@@ -2,9 +2,9 @@ use crate::{local_instance, ActorType, FEDERATION_HTTP_FETCH_LIMIT};
 use activitypub_federation::{core::object_id::ObjectId, traits::ApubObject};
 use anyhow::anyhow;
 use itertools::Itertools;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::newtypes::DbUrl;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use tracing::debug;
 use url::Url;
index 498a23c8ab82ce47b189cdf6896bd862ee32b3a0..fbadd42bad3acd647d83eb688439af4225ff331f 100644 (file)
@@ -5,9 +5,9 @@ use crate::{
 use activitypub_federation::traits::ApubObject;
 use actix_web::{web, web::Path, HttpResponse};
 use diesel::result::Error::NotFound;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{newtypes::CommentId, source::comment::Comment, traits::Crud};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::Deserialize;
 
 #[derive(Deserialize)]
index 8b860f5738f21d66b39f2b20f80eca2acc5c00c9..5b1a5b92647f85038ece56448538edbfc43cb8e5 100644 (file)
@@ -17,9 +17,9 @@ use activitypub_federation::{
   traits::ApubObject,
 };
 use actix_web::{web, HttpRequest, HttpResponse};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{source::community::Community, traits::ApubActor};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::Deserialize;
 
 #[derive(Deserialize)]
index f351ea4f047d82a7b1892c376f2894e3d264a85e..c4602c3374feb127e88eb9d2a1f4f4fbfafebbac 100644 (file)
@@ -15,9 +15,9 @@ use activitypub_federation::{
 };
 use actix_web::{web, HttpRequest, HttpResponse};
 use http::StatusCode;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::source::activity::Activity;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use once_cell::sync::OnceCell;
 use serde::{de::DeserializeOwned, Deserialize, Serialize};
 use serde_json::Value;
index 0ca31bd5cca1b5016b8e7eaee135dd041632b2f8..19c57b20c4e345d21e4c7574bc5650b3b4f18b9b 100644 (file)
@@ -8,9 +8,9 @@ use crate::{
 };
 use activitypub_federation::{deser::context::WithContext, traits::ApubObject};
 use actix_web::{web, HttpRequest, HttpResponse};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{source::person::Person, traits::ApubActor};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::Deserialize;
 
 #[derive(Deserialize)]
index 5da69fb4589da57e5ddfce08de3ed4ffd4e30fc3..85a4406f59e49079b69bdf3a83576b2c5dad0ee8 100644 (file)
@@ -5,9 +5,9 @@ use crate::{
 use activitypub_federation::traits::ApubObject;
 use actix_web::{web, HttpResponse};
 use diesel::result::Error::NotFound;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{newtypes::PostId, source::post::Post, traits::Crud};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::Deserialize;
 
 #[derive(Deserialize)]
index 201fc5b3a597e22b5c14df85dd9a57ba0b97ffed..7a945ac72277a7ca7a6ad257ee8fc33c3a530016 100644 (file)
@@ -6,9 +6,9 @@ use crate::{
 };
 use activitypub_federation::{deser::context::WithContext, traits::ApubObject};
 use actix_web::{web, HttpRequest, HttpResponse};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_views::structs::SiteView;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use url::Url;
 
 pub(crate) async fn get_apub_site_http(
index f5d8d3565d84d74a8d1bd2dc005bebbb130467d7..48fd58f1d35c31ea04a457e94803ab5536b11910 100644 (file)
@@ -8,13 +8,13 @@ use activitypub_federation::{
 };
 use anyhow::Context;
 use async_trait::async_trait;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   newtypes::DbUrl,
   source::{activity::Activity, instance::Instance, local_site::LocalSite},
   utils::DbPool,
 };
 use lemmy_utils::{error::LemmyError, location_info, settings::structs::Settings};
-use lemmy_websocket::LemmyContext;
 use once_cell::sync::Lazy;
 use tokio::sync::OnceCell;
 use url::{ParseError, Url};
index 8e24270d0e329d5382d8426f7fb6fb9cd14b63e2..ae7d9b6c17bac5faee12b88419228049613ed555 100644 (file)
@@ -5,6 +5,7 @@ use crate::{
 };
 use activitypub_federation::core::object_id::ObjectId;
 use activitystreams_kinds::link::MentionType;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{comment::Comment, person::Person, post::Post},
   traits::Crud,
@@ -14,7 +15,6 @@ use lemmy_utils::{
   error::LemmyError,
   utils::{scrape_text_for_mentions, MentionData},
 };
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use serde_json::Value;
 use url::Url;
index df20700fbd5b6bdca4c77b42dd5e077cd5a5404e..a4c6ef737f018bf3828e35bc8a394b504101b7b2 100644 (file)
@@ -20,7 +20,7 @@ use activitypub_federation::{
 };
 use activitystreams_kinds::{object::NoteType, public};
 use chrono::NaiveDateTime;
-use lemmy_api_common::utils::local_site_opt_to_slur_regex;
+use lemmy_api_common::{utils::local_site_opt_to_slur_regex, LemmyContext};
 use lemmy_db_schema::{
   source::{
     comment::{Comment, CommentInsertForm, CommentUpdateForm},
@@ -35,7 +35,6 @@ use lemmy_utils::{
   error::LemmyError,
   utils::{convert_datetime, markdown_to_html, remove_slurs},
 };
-use lemmy_websocket::LemmyContext;
 use std::ops::Deref;
 use url::Url;
 
index aefc7edb233cd707c7c0d0e9a1d6e7b53f6b4987..a454813bb0c93f38aeae18e8c7649686f02fed5b 100644 (file)
@@ -20,6 +20,7 @@ use activitypub_federation::{
 use activitystreams_kinds::actor::GroupType;
 use chrono::NaiveDateTime;
 use itertools::Itertools;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{
     actor_language::CommunityLanguage,
@@ -33,7 +34,6 @@ use lemmy_utils::{
   error::LemmyError,
   utils::{convert_datetime, markdown_to_html},
 };
-use lemmy_websocket::LemmyContext;
 use std::ops::Deref;
 use tracing::debug;
 use url::Url;
index 9f33ee518d8da5d4fd6744301d938b9a66c25c2a..18e9d9f2576aeebdb5d5dcb7775c58c50adb04ee 100644 (file)
@@ -20,7 +20,7 @@ use activitypub_federation::{
   utils::verify_domains_match,
 };
 use chrono::NaiveDateTime;
-use lemmy_api_common::utils::local_site_opt_to_slur_regex;
+use lemmy_api_common::{utils::local_site_opt_to_slur_regex, LemmyContext};
 use lemmy_db_schema::{
   source::{
     actor_language::SiteLanguage,
@@ -34,7 +34,6 @@ use lemmy_utils::{
   error::LemmyError,
   utils::{check_slurs, check_slurs_opt, convert_datetime, markdown_to_html},
 };
-use lemmy_websocket::LemmyContext;
 use std::ops::Deref;
 use tracing::debug;
 use url::Url;
index 5098d0b2b11507a339f805ad69350a5ae096593b..1bf621fca39ac000ccc5cff6bed2ca07222d7c7c 100644 (file)
@@ -56,14 +56,17 @@ pub(crate) fn verify_is_remote_object(id: &Url, settings: &Settings) -> Result<(
 pub(crate) mod tests {
   use actix::Actor;
   use anyhow::anyhow;
-  use lemmy_api_common::request::build_user_agent;
+  use lemmy_api_common::{
+    request::build_user_agent,
+    websocket::chat_server::ChatServer,
+    LemmyContext,
+  };
   use lemmy_db_schema::{source::secret::Secret, utils::build_db_pool_for_tests};
   use lemmy_utils::{
     error::LemmyError,
     rate_limit::{RateLimitCell, RateLimitConfig},
     settings::SETTINGS,
   };
-  use lemmy_websocket::{chat_server::ChatServer, LemmyContext};
   use reqwest::{Client, Request, Response};
   use reqwest_middleware::{ClientBuilder, Middleware, Next};
   use task_local_extensions::Extensions;
index fb450557d4e5769388a3b161a207d3bb13df696a..ad7fc1c9cc4d801674e9b3658c7fc550e2a846a1 100644 (file)
@@ -19,7 +19,7 @@ use activitypub_federation::{
   utils::verify_domains_match,
 };
 use chrono::NaiveDateTime;
-use lemmy_api_common::utils::local_site_opt_to_slur_regex;
+use lemmy_api_common::{utils::local_site_opt_to_slur_regex, LemmyContext};
 use lemmy_db_schema::{
   source::{
     instance::Instance,
@@ -32,7 +32,6 @@ use lemmy_utils::{
   error::LemmyError,
   utils::{check_slurs, check_slurs_opt, convert_datetime, markdown_to_html},
 };
-use lemmy_websocket::LemmyContext;
 use std::ops::Deref;
 use url::Url;
 
index b7d38e347fed06f87fae2b3a2c2d2173ac4a5371..f79e3055ae117c69a1a4d7e82942c08a4498e4d1 100644 (file)
@@ -22,7 +22,11 @@ use activitypub_federation::{
 };
 use activitystreams_kinds::public;
 use chrono::NaiveDateTime;
-use lemmy_api_common::{request::fetch_site_data, utils::local_site_opt_to_slur_regex};
+use lemmy_api_common::{
+  request::fetch_site_data,
+  utils::local_site_opt_to_slur_regex,
+  LemmyContext,
+};
 use lemmy_db_schema::{
   self,
   source::{
@@ -38,7 +42,6 @@ use lemmy_utils::{
   error::LemmyError,
   utils::{check_slurs, convert_datetime, markdown_to_html, remove_slurs},
 };
-use lemmy_websocket::LemmyContext;
 use std::ops::Deref;
 use url::Url;
 
index 47a9c5d13bee564caa4aa5b96b214cee5cc07b77..f4807076bab797ba2d4550a7d4cc55c7e5417e9f 100644 (file)
@@ -15,7 +15,7 @@ use activitypub_federation::{
   utils::verify_domains_match,
 };
 use chrono::NaiveDateTime;
-use lemmy_api_common::utils::check_person_block;
+use lemmy_api_common::{utils::check_person_block, LemmyContext};
 use lemmy_db_schema::{
   source::{
     person::Person,
@@ -27,7 +27,6 @@ use lemmy_utils::{
   error::LemmyError,
   utils::{convert_datetime, markdown_to_html},
 };
-use lemmy_websocket::LemmyContext;
 use std::ops::Deref;
 use url::Url;
 
index 91467a96ca2060412d44332027c1d2ad3d4adc29..364fe9b9f055bb8409a868edfb5cc6f7f4f94108 100644 (file)
@@ -8,8 +8,8 @@ use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserial
 use activitystreams_kinds::activity::BlockType;
 use anyhow::anyhow;
 use chrono::{DateTime, FixedOffset};
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use serde_with::skip_serializing_none;
 use url::Url;
index ade126eec684ea7cdb9ae9b7f65b88f7e8ea2e92..9646315ff9895df6ed55b9b1a681630ef25b91a3 100644 (file)
@@ -6,8 +6,8 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one_or_many};
 use activitystreams_kinds::activity::UndoType;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use serde_with::skip_serializing_none;
 use url::Url;
index f23fcbae01b0f93832b152d63788fb213d059875..c8ea5daa9f801529c5c0f4969f69f0ea5c256984 100644 (file)
@@ -6,8 +6,8 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one_or_many};
 use activitystreams_kinds::activity::AddType;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index 2ee744b7fbed62aed2d9db0b3b520065889c49e3..57d9c1bcab54129dc193e7a5c74485f5c6fb5714 100644 (file)
@@ -6,8 +6,8 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one_or_many};
 use activitystreams_kinds::activity::RemoveType;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index 34738c56a49bfee338255c02dbf93566f5aa9c33..a66e08b0500a05abe2cc6b3858f7c146c0ea815c 100644 (file)
@@ -7,8 +7,8 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one};
 use activitystreams_kinds::activity::FlagType;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index f534f236945f0747e504d72cf86319a3eeaca8af..8bf39a8269fd530bfa89420822599c58d055f51b 100644 (file)
@@ -6,8 +6,8 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one_or_many};
 use activitystreams_kinds::activity::UpdateType;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index 0de7161f4de639e1be3cec8239e21f839f035d8d..a952811bea7ad67a966fa9225c4c3a37f6643d76 100644 (file)
@@ -6,9 +6,9 @@ use crate::{
   protocol::{activities::CreateOrUpdateType, objects::note::Note, InCommunity},
 };
 use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one_or_many};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{source::community::Community, traits::Crud};
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index b0311b5ff99e80f14bac42d45f34f0657d18a6ce..9d45ae0bf1da060839d01d5391fd52aef17efc6e 100644 (file)
@@ -5,8 +5,8 @@ use crate::{
   protocol::{activities::CreateOrUpdateType, objects::page::Page, InCommunity},
 };
 use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one_or_many};
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index f5ae40d8a9b82708490ef8b60edf6d5ed14c319a..8a0c1b0bd858f59db4b5092fec9d5622b81b9ba0 100644 (file)
@@ -7,12 +7,12 @@ use crate::{
 use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one_or_many};
 use activitystreams_kinds::activity::DeleteType;
 use anyhow::anyhow;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{community::Community, post::Post},
   traits::Crud,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use serde_with::skip_serializing_none;
 use url::Url;
index c4946850a1896e55ce848466de407ced7886e42a..0e2c0f9821f9ea2367063e083cf16acaba1d32d1 100644 (file)
@@ -6,8 +6,8 @@ use crate::{
 };
 use activitypub_federation::{core::object_id::ObjectId, deser::helpers::deserialize_one_or_many};
 use activitystreams_kinds::activity::UndoType;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use serde_with::skip_serializing_none;
 use url::Url;
index 1d17cf158963e1a3f01047ec476db06ca42fcb43..7c23036c619244c20bf8e479c15c76d91d9ec29c 100644 (file)
@@ -6,8 +6,8 @@ use crate::{
 };
 use activitypub_federation::core::object_id::ObjectId;
 use activitystreams_kinds::activity::UndoType;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index 5da9b791c8d7770daa63fcfb9d4d8968752eacda..a88aa3da9c783aaecd15c9a5f5e4a021f224f443 100644 (file)
@@ -6,8 +6,8 @@ use crate::{
   protocol::InCommunity,
 };
 use activitypub_federation::core::object_id::ObjectId;
+use lemmy_api_common::LemmyContext;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use std::convert::TryFrom;
 use strum_macros::Display;
index ac1ef228504a26a68e25d3306c0779b59c8c74da..0a095bb708de56d5e16428e48dac0c6d9730d5a4 100644 (file)
@@ -1,9 +1,9 @@
 use crate::generate_followers_url;
 use activitystreams_kinds::collection::CollectionType;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::source::community::Community;
 use lemmy_db_views_actor::structs::CommunityFollowerView;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index a65e74da225a1d77b6b63956fc321bcf0f65839f..16bdb1b2995ea149721afeb5363442a1e213c660 100644 (file)
@@ -1,9 +1,9 @@
 use crate::{local_instance, objects::community::ApubCommunity};
 use activitypub_federation::{deser::values::MediaTypeMarkdown, utils::fetch_object_http};
 use activitystreams_kinds::object::ImageType;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::newtypes::DbUrl;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{de::DeserializeOwned, Deserialize, Serialize};
 use std::collections::HashMap;
 use url::Url;
index 564aed16956e7e5ee05d106d405bd91588c5599d..316af1a8dc7d4834c5a34d08fd7ae01d546e920c 100644 (file)
@@ -19,7 +19,7 @@ use activitypub_federation::{
 };
 use activitystreams_kinds::actor::GroupType;
 use chrono::{DateTime, FixedOffset};
-use lemmy_api_common::utils::local_site_opt_to_slur_regex;
+use lemmy_api_common::{utils::local_site_opt_to_slur_regex, LemmyContext};
 use lemmy_db_schema::{
   newtypes::InstanceId,
   source::community::{CommunityInsertForm, CommunityUpdateForm},
@@ -29,7 +29,6 @@ use lemmy_utils::{
   error::LemmyError,
   utils::{check_slurs, check_slurs_opt},
 };
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use serde_with::skip_serializing_none;
 use url::Url;
index 21f7bcf38b67ffc30c12d7c7001afe3cc1d5f82a..f8263d874a3bb959eea54adf6dbea0f68cfd4ce6 100644 (file)
@@ -15,12 +15,12 @@ use activitypub_federation::{
 };
 use activitystreams_kinds::object::NoteType;
 use chrono::{DateTime, FixedOffset};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   source::{community::Community, post::Post},
   traits::Crud,
 };
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use serde_with::skip_serializing_none;
 use std::ops::Deref;
index b25e1d97c742161596659a7eee9396ebcf0eba2e..1ff12bc293df6bf1a6cd32de542624a1511cad30 100644 (file)
@@ -20,9 +20,9 @@ use activitystreams_kinds::{
 };
 use chrono::{DateTime, FixedOffset};
 use itertools::Itertools;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::newtypes::DbUrl;
 use lemmy_utils::error::LemmyError;
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use serde_with::skip_serializing_none;
 use url::Url;
index cbcd259c0b7647d11e51312af1eeb91bb04049ae..a277834948466946cd7909076f065ce50e568994 100644 (file)
@@ -13,7 +13,6 @@ doctest = false
 
 [dependencies]
 lemmy_utils = { workspace = true }
-lemmy_websocket = { workspace = true }
 lemmy_db_views = { workspace = true }
 lemmy_db_views_actor = { workspace = true }
 lemmy_db_schema = { workspace = true }
index 436148b964664a27efe0e31860df4bc440212ca7..72181bf6ac95d2ebc35cb6ecf2fa66977511f574 100644 (file)
@@ -1,6 +1,7 @@
 use actix_web::{error::ErrorBadRequest, web, Error, HttpRequest, HttpResponse, Result};
 use anyhow::anyhow;
 use chrono::{DateTime, NaiveDateTime, Utc};
+use lemmy_api_common::LemmyContext;
 use lemmy_db_schema::{
   newtypes::LocalUserId,
   source::{community::Community, local_user::LocalUser, person::Person},
@@ -20,7 +21,6 @@ use lemmy_db_views_actor::{
   structs::{CommentReplyView, PersonMentionView},
 };
 use lemmy_utils::{claims::Claims, error::LemmyError, utils::markdown_to_html};
-use lemmy_websocket::LemmyContext;
 use once_cell::sync::Lazy;
 use rss::{
   extension::dublincore::DublinCoreExtensionBuilder,
index 716b18be81426ab58f2837aa8db92b2fc68c3c43..6e839e214792401554d7246e8894d0c053d265c3 100644 (file)
@@ -11,10 +11,9 @@ use actix_web::{
   HttpResponse,
 };
 use futures::stream::{Stream, StreamExt};
-use lemmy_api_common::utils::get_local_user_view_from_jwt;
+use lemmy_api_common::{utils::get_local_user_view_from_jwt, LemmyContext};
 use lemmy_db_schema::source::local_site::LocalSite;
 use lemmy_utils::{claims::Claims, rate_limit::RateLimitCell, REQWEST_TIMEOUT};
-use lemmy_websocket::LemmyContext;
 use reqwest::Body;
 use reqwest_middleware::{ClientWithMiddleware, RequestBuilder};
 use serde::{Deserialize, Serialize};
index 9c3a324029c9403adcba1940d51e489769ed318d..3a8b418594b509e4c416b7e3fea2c522b57b4b1b 100644 (file)
@@ -1,8 +1,8 @@
 use actix_web::{error::ErrorBadRequest, web, Error, HttpResponse, Result};
 use anyhow::anyhow;
+use lemmy_api_common::LemmyContext;
 use lemmy_db_views::structs::SiteView;
 use lemmy_utils::{error::LemmyError, version};
-use lemmy_websocket::LemmyContext;
 use serde::{Deserialize, Serialize};
 use url::Url;
 
index 113959769fd273910fb1df673ad0aa61653972d5..7d9ff2bfe531ed927a8032a7fc9144b32f7f9b83 100644 (file)
@@ -1,12 +1,12 @@
 use actix_web::{web, web::Query, HttpResponse};
 use anyhow::Context;
+use lemmy_api_common::LemmyContext;
 use lemmy_apub::fetcher::webfinger::{WebfingerLink, WebfingerResponse};
 use lemmy_db_schema::{
   source::{community::Community, person::Person},
   traits::ApubActor,
 };
 use lemmy_utils::{error::LemmyError, location_info};
-use lemmy_websocket::LemmyContext;
 use serde::Deserialize;
 use url::Url;
 
diff --git a/crates/websocket/Cargo.toml b/crates/websocket/Cargo.toml
deleted file mode 100644 (file)
index 829b759..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-[package]
-name = "lemmy_websocket"
-version.workspace = true
-edition.workspace = true
-description.workspace = true
-license.workspace = true
-homepage.workspace = true
-documentation.workspace = true
-repository.workspace = true
-
-[lib]
-name = "lemmy_websocket"
-path = "src/lib.rs"
-doctest = false
-
-[dependencies]
-lemmy_utils = { workspace = true }
-lemmy_api_common = { workspace = true, features = ["full"] }
-lemmy_db_schema = { workspace = true, features = ["full"] }
-lemmy_db_views = { workspace = true, features = ["full"] }
-lemmy_db_views_actor = { workspace = true, features = ["full"] }
-reqwest-middleware = { workspace = true }
-tracing = { workspace = true }
-rand = { workspace = true }
-serde = { workspace = true }
-serde_json = { workspace = true }
-actix = { workspace = true }
-anyhow = { workspace = true }
-diesel = { workspace = true }
-tokio = { workspace = true }
-strum = { workspace = true }
-strum_macros = { workspace = true }
-chrono = { workspace = true }
-actix-web = { workspace = true }
-opentelemetry = { workspace = true }
-tracing-opentelemetry = { workspace = true }
-actix-web-actors = { version = "4.1.0", default-features = false }
-background-jobs = "0.13.0"
index 82a73f884d0aa092622358699c3f382b4740a571..626857c691e28f80107183e7d31d6b57c434fe72 100644 (file)
@@ -94,11 +94,14 @@ use lemmy_api_common::{
     ResolveObject,
     Search,
   },
-  websocket::{CommunityJoin, ModJoin, PostJoin, UserJoin},
+  websocket::{
+    routes::chat_route,
+    structs::{CommunityJoin, ModJoin, PostJoin, UserJoin},
+  },
+  LemmyContext,
 };
 use lemmy_api_crud::PerformCrud;
 use lemmy_utils::rate_limit::RateLimitCell;
-use lemmy_websocket::{routes::chat_route, LemmyContext};
 use serde::Deserialize;
 
 pub fn config(cfg: &mut web::ServiceConfig, rate_limit: &RateLimitCell) {
index 728b3d3707571a5a721576bc3662dfe85036c454..e4b8e8e3293e9f86d4bcc589a66d6201b568ee4d 100644 (file)
@@ -13,6 +13,8 @@ use lemmy_api_common::{
     check_private_instance_and_federation_enabled,
     local_site_rate_limit_to_rate_limit_config,
   },
+  websocket::chat_server::ChatServer,
+  LemmyContext,
 };
 use lemmy_api_crud::match_websocket_operation_crud;
 use lemmy_db_schema::{
@@ -32,7 +34,6 @@ use lemmy_utils::{
   rate_limit::RateLimitCell,
   settings::{structs::Settings, SETTINGS},
 };
-use lemmy_websocket::{chat_server::ChatServer, LemmyContext};
 use reqwest::Client;
 use reqwest_middleware::ClientBuilder;
 use reqwest_retry::{policies::ExponentialBackoff, RetryTransientMiddleware};