From c590fa7b17ccf493c6c6df33cacc83b0cbd4a41f Mon Sep 17 00:00:00 2001 From: sugyan Date: Tue, 21 May 2024 11:15:48 +0900 Subject: [PATCH 1/6] Update XrpcClient, and update AtpAgent for atproto headers --- atrium-api/src/agent.rs | 16 ++++++- atrium-api/src/agent/inner.rs | 85 ++++++++++++++++++++++++++++++----- atrium-xrpc/src/lib.rs | 2 +- atrium-xrpc/src/traits.rs | 38 +++++++++++----- atrium-xrpc/src/types.rs | 48 ++++++++++++++------ 5 files changed, 150 insertions(+), 39 deletions(-) diff --git a/atrium-api/src/agent.rs b/atrium-api/src/agent.rs index 99e403f..2d30c00 100644 --- a/atrium-api/src/agent.rs +++ b/atrium-api/src/agent.rs @@ -19,6 +19,7 @@ where T: XrpcClient + Send + Sync, { store: Arc>, + inner: Arc>, pub api: Service>, } @@ -30,8 +31,9 @@ where /// Create a new agent. pub fn new(xrpc: T, store: S) -> Self { let store = Arc::new(inner::Store::new(store, xrpc.base_uri())); - let api = Service::new(Arc::new(inner::Client::new(Arc::clone(&store), xrpc))); - Self { store, api } + let inner = Arc::new(inner::Client::new(Arc::clone(&store), xrpc)); + let api = Service::new(Arc::clone(&inner)); + Self { store, inner, api } } /// Start a new session with this agent. pub async fn login( @@ -84,6 +86,16 @@ where } } } + /// Configures the moderation services to be applied on requests. + pub fn configure_labelers_header(&self, labeler_dids: Option>) { + self.inner.configure_labelers_header(labeler_dids); + } + /// Configures the atproto-proxy header to be applied on requests. + /// + /// Returns a new client service with the proxy header configured. + pub fn api_with_proxy(&self, proxy: impl AsRef) -> Service> { + Service::new(Arc::new(self.inner.clone_with_proxy(proxy))) + } } #[cfg(test)] diff --git a/atrium-api/src/agent/inner.rs b/atrium-api/src/agent/inner.rs index 37938ab..8ffc1fd 100644 --- a/atrium-api/src/agent/inner.rs +++ b/atrium-api/src/agent/inner.rs @@ -10,14 +10,41 @@ use tokio::sync::{Mutex, Notify}; const REFRESH_SESSION: &str = "com.atproto.server.refreshSession"; -struct SessionStoreClient { +struct WrapperClient { store: Arc>, - inner: T, + labelers_header: Arc>>>, + proxy_header: Option, + inner: Arc, +} + +impl WrapperClient { + fn configure_labelers_header(&self, labelers_dids: Option>) { + *self + .labelers_header + .write() + .expect("failed to write labelers header") = labelers_dids + } + fn configure_proxy_header(&mut self, did: impl AsRef) { + if did.as_ref().starts_with("did:") { + self.proxy_header = Some(did.as_ref().to_string()); + } + } +} + +impl Clone for WrapperClient { + fn clone(&self) -> Self { + Self { + store: self.store.clone(), + labelers_header: self.labelers_header.clone(), + proxy_header: self.proxy_header.clone(), + inner: self.inner.clone(), + } + } } #[cfg_attr(target_arch = "wasm32", async_trait(?Send))] #[cfg_attr(not(target_arch = "wasm32"), async_trait)] -impl HttpClient for SessionStoreClient +impl HttpClient for WrapperClient where S: Send + Sync, T: HttpClient + Send + Sync, @@ -33,7 +60,7 @@ where #[cfg_attr(target_arch = "wasm32", async_trait(?Send))] #[cfg_attr(not(target_arch = "wasm32"), async_trait)] -impl XrpcClient for SessionStoreClient +impl XrpcClient for WrapperClient where S: SessionStore + Send + Sync, T: XrpcClient + Send + Sync, @@ -41,7 +68,7 @@ where fn base_uri(&self) -> String { self.store.get_endpoint() } - async fn auth(&self, is_refresh: bool) -> Option { + async fn authentication_token(&self, is_refresh: bool) -> Option { self.store.get_session().await.map(|session| { if is_refresh { session.refresh_jwt @@ -50,13 +77,22 @@ where } }) } + async fn atproto_proxy_header(&self) -> Option { + self.proxy_header.clone() + } + async fn atproto_accept_labelers_header(&self) -> Option> { + self.labelers_header + .read() + .expect("failed to read labelers header") + .clone() + } } pub struct Client { store: Arc>, - inner: SessionStoreClient, - is_refreshing: Mutex, - notify: Notify, + inner: WrapperClient, + is_refreshing: Arc>, + notify: Arc, } impl Client @@ -65,17 +101,27 @@ where T: XrpcClient + Send + Sync, { pub(crate) fn new(store: Arc>, xrpc: T) -> Self { - let inner = SessionStoreClient { + let inner = WrapperClient { store: Arc::clone(&store), - inner: xrpc, + labelers_header: Arc::new(RwLock::new(None)), + proxy_header: None, + inner: Arc::new(xrpc), }; Self { store, inner, - is_refreshing: Mutex::new(false), - notify: Notify::new(), + is_refreshing: Arc::new(Mutex::new(false)), + notify: Arc::new(Notify::new()), } } + pub(crate) fn configure_labelers_header(&self, labeler_dids: Option>) { + self.inner.configure_labelers_header(labeler_dids); + } + pub(crate) fn clone_with_proxy(&self, did: impl AsRef) -> Self { + let mut new = self.clone(); + new.inner.configure_proxy_header(did); + new + } // Internal helper to refresh sessions // - Wraps the actual implementation to ensure only one refresh is attempted at a time. async fn refresh_session(&self) { @@ -147,6 +193,21 @@ where } } +impl Clone for Client +where + S: SessionStore + Send + Sync, + T: XrpcClient + Send + Sync, +{ + fn clone(&self) -> Self { + Self { + store: self.store.clone(), + inner: self.inner.clone(), + is_refreshing: self.is_refreshing.clone(), + notify: self.notify.clone(), + } + } +} + #[cfg_attr(target_arch = "wasm32", async_trait(?Send))] #[cfg_attr(not(target_arch = "wasm32"), async_trait)] impl HttpClient for Client diff --git a/atrium-xrpc/src/lib.rs b/atrium-xrpc/src/lib.rs index 654dbc9..10f1b97 100644 --- a/atrium-xrpc/src/lib.rs +++ b/atrium-xrpc/src/lib.rs @@ -1,7 +1,7 @@ #![doc = include_str!("../README.md")] pub mod error; mod traits; -mod types; +pub mod types; pub use crate::error::{Error, Result}; pub use crate::traits::{HttpClient, XrpcClient}; diff --git a/atrium-xrpc/src/traits.rs b/atrium-xrpc/src/traits.rs index d8e1958..2f7fa8e 100644 --- a/atrium-xrpc/src/traits.rs +++ b/atrium-xrpc/src/traits.rs @@ -1,6 +1,7 @@ use crate::error::Error; use crate::error::{XrpcError, XrpcErrorKind}; -use crate::types::{InputDataOrBytes, OutputDataOrBytes, XrpcRequest}; +use crate::types::{Header, NSID_REFRESH_SESSION}; +use crate::{InputDataOrBytes, OutputDataOrBytes, XrpcRequest}; use async_trait::async_trait; use http::{Method, Request, Response}; use serde::{de::DeserializeOwned, Serialize}; @@ -9,6 +10,7 @@ use serde::{de::DeserializeOwned, Serialize}; #[cfg_attr(target_arch = "wasm32", async_trait(?Send))] #[cfg_attr(not(target_arch = "wasm32"), async_trait)] pub trait HttpClient { + /// Send an HTTP request and return the response. async fn send_http( &self, request: Request>, @@ -24,14 +26,22 @@ type XrpcResult = core::result::Result, self::Error String; + /// Get the authentication token to use `Authorization` header. #[allow(unused_variables)] - async fn auth(&self, is_refresh: bool) -> Option { + async fn authentication_token(&self, is_refresh: bool) -> Option { None } - async fn headers(&self) -> Vec<(String, String)> { - Vec::new() + /// Get the `atproto-proxy` header. + async fn atproto_proxy_header(&self) -> Option { + None + } + /// Get the `atproto-accept-labelers` header. + async fn atproto_accept_labelers_header(&self) -> Option> { + None } + /// Send an XRPC request and return the response. async fn send_xrpc(&self, request: &XrpcRequest) -> XrpcResult where P: Serialize + Send + Sync, @@ -40,6 +50,7 @@ pub trait XrpcClient: HttpClient { E: DeserializeOwned + Send + Sync, { let mut uri = format!("{}/xrpc/{}", self.base_uri(), request.path); + // Query parameters if let Some(p) = &request.parameters { serde_html_form::to_string(p).map(|qs| { uri += "?"; @@ -47,21 +58,25 @@ pub trait XrpcClient: HttpClient { })?; }; let mut builder = Request::builder().method(&request.method).uri(&uri); + // Headers if let Some(encoding) = &request.encoding { - builder = builder.header(http::header::CONTENT_TYPE, encoding); + builder = builder.header(Header::ContentType, encoding); } if let Some(token) = self - .auth( - request.method == Method::POST - && request.path == "com.atproto.server.refreshSession", + .authentication_token( + request.method == Method::POST && request.path == NSID_REFRESH_SESSION, ) .await { - builder = builder.header(http::header::AUTHORIZATION, format!("Bearer {}", token)); + builder = builder.header(Header::Authorization, format!("Bearer {}", token)); + } + if let Some(proxy) = self.atproto_proxy_header().await { + builder = builder.header(Header::AtprotoProxy, proxy); } - for (key, value) in self.headers().await { - builder = builder.header(key, value); + if let Some(accept_labelers) = self.atproto_accept_labelers_header().await { + builder = builder.header(Header::AtprotoAcceptLabelers, accept_labelers.join(", ")); } + // Body let body = if let Some(input) = &request.input { match input { InputDataOrBytes::Data(data) => serde_json::to_vec(&data)?, @@ -70,6 +85,7 @@ pub trait XrpcClient: HttpClient { } else { Vec::new() }; + // Send let (parts, body) = self .send_http(builder.body(body)?) .await diff --git a/atrium-xrpc/src/types.rs b/atrium-xrpc/src/types.rs index f9a9594..211463b 100644 --- a/atrium-xrpc/src/types.rs +++ b/atrium-xrpc/src/types.rs @@ -1,6 +1,40 @@ -use http::Method; +use http::header::{AUTHORIZATION, CONTENT_TYPE}; +use http::{HeaderName, Method}; use serde::{de::DeserializeOwned, Serialize}; +pub(crate) const NSID_REFRESH_SESSION: &str = "com.atproto.server.refreshSession"; + +/// HTTP headers which can be used in XPRC requests. +pub enum Header { + ContentType, + Authorization, + AtprotoProxy, + AtprotoAcceptLabelers, +} + +impl From
for HeaderName { + fn from(value: Header) -> Self { + match value { + Header::ContentType => CONTENT_TYPE, + Header::Authorization => AUTHORIZATION, + Header::AtprotoProxy => HeaderName::from_static("atproto-proxy"), + Header::AtprotoAcceptLabelers => HeaderName::from_static("atproto-accept-labelers"), + } + } +} + +/// A request which can be executed with [`XrpcClient::send_xrpc()`](crate::XrpcClient::send_xrpc). +pub struct XrpcRequest +where + I: Serialize, +{ + pub method: Method, + pub path: String, + pub parameters: Option

, + pub input: Option>, + pub encoding: Option, +} + /// A type which can be used as a parameter of [`XrpcRequest`]. /// /// JSON serializable data or raw bytes. @@ -22,15 +56,3 @@ where Data(T), Bytes(Vec), } - -/// A request which can be executed with [`XrpcClient::send_xrpc()`](crate::XrpcClient::send_xrpc). -pub struct XrpcRequest -where - I: Serialize, -{ - pub method: Method, - pub path: String, - pub parameters: Option

, - pub input: Option>, - pub encoding: Option, -} From 5eac8e30d8d1907aebd97ee737bbcd1279d86f89 Mon Sep 17 00:00:00 2001 From: sugyan Date: Tue, 21 May 2024 11:50:32 +0900 Subject: [PATCH 2/6] Add Clone to xrpc clients --- atrium-xrpc-client/src/isahc.rs | 1 + atrium-xrpc-client/src/reqwest.rs | 1 + 2 files changed, 2 insertions(+) diff --git a/atrium-xrpc-client/src/isahc.rs b/atrium-xrpc-client/src/isahc.rs index d29dfce..0f6492b 100644 --- a/atrium-xrpc-client/src/isahc.rs +++ b/atrium-xrpc-client/src/isahc.rs @@ -14,6 +14,7 @@ use std::sync::Arc; /// because it already uses an [`Arc`] internally. /// /// [`Rc`]: std::rc::Rc +#[derive(Clone)] pub struct IsahcClient { base_uri: String, client: Arc, diff --git a/atrium-xrpc-client/src/reqwest.rs b/atrium-xrpc-client/src/reqwest.rs index f251d42..9419567 100644 --- a/atrium-xrpc-client/src/reqwest.rs +++ b/atrium-xrpc-client/src/reqwest.rs @@ -14,6 +14,7 @@ use std::sync::Arc; /// because it already uses an [`Arc`] internally. /// /// [`Rc`]: std::rc::Rc +#[derive(Clone)] pub struct ReqwestClient { base_uri: String, client: Arc, From 388d01defaa6355625e634f3e167a26a144abf36 Mon Sep 17 00:00:00 2001 From: sugyan Date: Tue, 21 May 2024 14:58:58 +0900 Subject: [PATCH 3/6] Rename path to nsid and use const values --- atrium-api/src/agent/inner.rs | 4 +- .../src/app/bsky/actor/get_preferences.rs | 1 + atrium-api/src/app/bsky/actor/get_profile.rs | 1 + atrium-api/src/app/bsky/actor/get_profiles.rs | 1 + .../src/app/bsky/actor/get_suggestions.rs | 1 + .../src/app/bsky/actor/put_preferences.rs | 1 + .../src/app/bsky/actor/search_actors.rs | 1 + .../app/bsky/actor/search_actors_typeahead.rs | 1 + .../app/bsky/feed/describe_feed_generator.rs | 1 + .../src/app/bsky/feed/get_actor_feeds.rs | 1 + .../src/app/bsky/feed/get_actor_likes.rs | 1 + .../src/app/bsky/feed/get_author_feed.rs | 1 + atrium-api/src/app/bsky/feed/get_feed.rs | 1 + .../src/app/bsky/feed/get_feed_generator.rs | 1 + .../src/app/bsky/feed/get_feed_generators.rs | 1 + .../src/app/bsky/feed/get_feed_skeleton.rs | 1 + atrium-api/src/app/bsky/feed/get_likes.rs | 1 + atrium-api/src/app/bsky/feed/get_list_feed.rs | 1 + .../src/app/bsky/feed/get_post_thread.rs | 1 + atrium-api/src/app/bsky/feed/get_posts.rs | 1 + .../src/app/bsky/feed/get_reposted_by.rs | 1 + .../src/app/bsky/feed/get_suggested_feeds.rs | 1 + atrium-api/src/app/bsky/feed/get_timeline.rs | 1 + atrium-api/src/app/bsky/feed/search_posts.rs | 1 + .../src/app/bsky/feed/send_interactions.rs | 1 + atrium-api/src/app/bsky/graph/get_blocks.rs | 1 + .../src/app/bsky/graph/get_followers.rs | 1 + atrium-api/src/app/bsky/graph/get_follows.rs | 1 + atrium-api/src/app/bsky/graph/get_list.rs | 1 + .../src/app/bsky/graph/get_list_blocks.rs | 1 + .../src/app/bsky/graph/get_list_mutes.rs | 1 + atrium-api/src/app/bsky/graph/get_lists.rs | 1 + atrium-api/src/app/bsky/graph/get_mutes.rs | 1 + .../src/app/bsky/graph/get_relationships.rs | 1 + .../graph/get_suggested_follows_by_actor.rs | 1 + atrium-api/src/app/bsky/graph/mute_actor.rs | 1 + .../src/app/bsky/graph/mute_actor_list.rs | 1 + atrium-api/src/app/bsky/graph/unmute_actor.rs | 1 + .../src/app/bsky/graph/unmute_actor_list.rs | 1 + .../src/app/bsky/labeler/get_services.rs | 1 + .../app/bsky/notification/get_unread_count.rs | 1 + .../bsky/notification/list_notifications.rs | 1 + .../app/bsky/notification/register_push.rs | 1 + .../src/app/bsky/notification/update_seen.rs | 1 + .../unspecced/get_popular_feed_generators.rs | 1 + .../unspecced/get_suggestions_skeleton.rs | 1 + .../bsky/unspecced/get_tagged_suggestions.rs | 1 + .../bsky/unspecced/search_actors_skeleton.rs | 1 + .../bsky/unspecced/search_posts_skeleton.rs | 1 + .../src/chat/bsky/actor/delete_account.rs | 1 + .../chat/bsky/actor/export_account_data.rs | 1 + .../bsky/convo/delete_message_for_self.rs | 1 + atrium-api/src/chat/bsky/convo/get_convo.rs | 1 + .../chat/bsky/convo/get_convo_for_members.rs | 1 + atrium-api/src/chat/bsky/convo/get_log.rs | 1 + .../src/chat/bsky/convo/get_messages.rs | 1 + atrium-api/src/chat/bsky/convo/leave_convo.rs | 1 + atrium-api/src/chat/bsky/convo/list_convos.rs | 1 + atrium-api/src/chat/bsky/convo/mute_convo.rs | 1 + .../src/chat/bsky/convo/send_message.rs | 1 + .../src/chat/bsky/convo/send_message_batch.rs | 1 + .../src/chat/bsky/convo/unmute_convo.rs | 1 + atrium-api/src/chat/bsky/convo/update_read.rs | 1 + .../bsky/moderation/get_actor_metadata.rs | 1 + .../bsky/moderation/get_message_context.rs | 1 + .../bsky/moderation/update_actor_access.rs | 1 + atrium-api/src/client.rs | 316 ++++++++++-------- .../src/com/atproto/admin/delete_account.rs | 1 + .../atproto/admin/disable_account_invites.rs | 1 + .../com/atproto/admin/disable_invite_codes.rs | 1 + .../atproto/admin/enable_account_invites.rs | 1 + .../src/com/atproto/admin/get_account_info.rs | 1 + .../com/atproto/admin/get_account_infos.rs | 1 + .../src/com/atproto/admin/get_invite_codes.rs | 1 + .../com/atproto/admin/get_subject_status.rs | 1 + .../src/com/atproto/admin/send_email.rs | 1 + .../com/atproto/admin/update_account_email.rs | 1 + .../atproto/admin/update_account_handle.rs | 1 + .../atproto/admin/update_account_password.rs | 1 + .../atproto/admin/update_subject_status.rs | 1 + .../get_recommended_did_credentials.rs | 1 + .../request_plc_operation_signature.rs | 1 + .../com/atproto/identity/resolve_handle.rs | 1 + .../atproto/identity/sign_plc_operation.rs | 1 + .../atproto/identity/submit_plc_operation.rs | 1 + .../src/com/atproto/identity/update_handle.rs | 1 + .../src/com/atproto/label/query_labels.rs | 1 + .../com/atproto/moderation/create_report.rs | 1 + .../src/com/atproto/repo/apply_writes.rs | 1 + .../src/com/atproto/repo/create_record.rs | 1 + .../src/com/atproto/repo/delete_record.rs | 1 + .../src/com/atproto/repo/describe_repo.rs | 1 + atrium-api/src/com/atproto/repo/get_record.rs | 1 + .../src/com/atproto/repo/import_repo.rs | 1 + .../com/atproto/repo/list_missing_blobs.rs | 1 + .../src/com/atproto/repo/list_records.rs | 1 + atrium-api/src/com/atproto/repo/put_record.rs | 1 + .../src/com/atproto/repo/upload_blob.rs | 1 + .../com/atproto/server/activate_account.rs | 1 + .../atproto/server/check_account_status.rs | 1 + .../src/com/atproto/server/confirm_email.rs | 1 + .../src/com/atproto/server/create_account.rs | 1 + .../com/atproto/server/create_app_password.rs | 1 + .../com/atproto/server/create_invite_code.rs | 1 + .../com/atproto/server/create_invite_codes.rs | 1 + .../src/com/atproto/server/create_session.rs | 1 + .../com/atproto/server/deactivate_account.rs | 1 + .../src/com/atproto/server/delete_account.rs | 1 + .../src/com/atproto/server/delete_session.rs | 1 + .../src/com/atproto/server/describe_server.rs | 1 + .../server/get_account_invite_codes.rs | 1 + .../com/atproto/server/get_service_auth.rs | 1 + .../src/com/atproto/server/get_session.rs | 1 + .../com/atproto/server/list_app_passwords.rs | 1 + .../src/com/atproto/server/refresh_session.rs | 1 + .../atproto/server/request_account_delete.rs | 1 + .../server/request_email_confirmation.rs | 1 + .../atproto/server/request_email_update.rs | 1 + .../atproto/server/request_password_reset.rs | 1 + .../com/atproto/server/reserve_signing_key.rs | 1 + .../src/com/atproto/server/reset_password.rs | 1 + .../com/atproto/server/revoke_app_password.rs | 1 + .../src/com/atproto/server/update_email.rs | 1 + atrium-api/src/com/atproto/sync/get_blob.rs | 1 + atrium-api/src/com/atproto/sync/get_blocks.rs | 1 + .../src/com/atproto/sync/get_checkout.rs | 1 + atrium-api/src/com/atproto/sync/get_head.rs | 1 + .../src/com/atproto/sync/get_latest_commit.rs | 1 + atrium-api/src/com/atproto/sync/get_record.rs | 1 + atrium-api/src/com/atproto/sync/get_repo.rs | 1 + atrium-api/src/com/atproto/sync/list_blobs.rs | 1 + atrium-api/src/com/atproto/sync/list_repos.rs | 1 + .../src/com/atproto/sync/notify_of_update.rs | 1 + .../src/com/atproto/sync/request_crawl.rs | 1 + .../com/atproto/temp/check_signup_queue.rs | 1 + .../src/com/atproto/temp/fetch_labels.rs | 1 + .../temp/request_phone_verification.rs | 1 + .../ozone/communication/create_template.rs | 1 + .../ozone/communication/delete_template.rs | 1 + .../ozone/communication/list_templates.rs | 1 + .../ozone/communication/update_template.rs | 1 + .../src/tools/ozone/moderation/emit_event.rs | 1 + .../src/tools/ozone/moderation/get_event.rs | 1 + .../src/tools/ozone/moderation/get_record.rs | 1 + .../src/tools/ozone/moderation/get_repo.rs | 1 + .../tools/ozone/moderation/query_events.rs | 1 + .../tools/ozone/moderation/query_statuses.rs | 1 + .../tools/ozone/moderation/search_repos.rs | 1 + atrium-xrpc-client/src/tests.rs | 4 +- atrium-xrpc/src/lib.rs | 8 +- atrium-xrpc/src/traits.rs | 4 +- atrium-xrpc/src/types.rs | 2 +- lexicon/atrium-codegen/src/generator.rs | 9 +- lexicon/atrium-codegen/src/token_stream.rs | 15 +- 154 files changed, 343 insertions(+), 165 deletions(-) diff --git a/atrium-api/src/agent/inner.rs b/atrium-api/src/agent/inner.rs index 8ffc1fd..b7810d4 100644 --- a/atrium-api/src/agent/inner.rs +++ b/atrium-api/src/agent/inner.rs @@ -8,8 +8,6 @@ use serde::{de::DeserializeOwned, Serialize}; use std::sync::{Arc, RwLock}; use tokio::sync::{Mutex, Notify}; -const REFRESH_SESSION: &str = "com.atproto.server.refreshSession"; - struct WrapperClient { store: Arc>, labelers_header: Arc>>>, @@ -166,7 +164,7 @@ where .inner .send_xrpc::<(), (), _, _>(&XrpcRequest { method: Method::POST, - path: REFRESH_SESSION.into(), + nsid: crate::com::atproto::server::refresh_session::NSID.into(), parameters: None, input: None, encoding: None, diff --git a/atrium-api/src/app/bsky/actor/get_preferences.rs b/atrium-api/src/app/bsky/actor/get_preferences.rs index 72aa486..6d00f5f 100644 --- a/atrium-api/src/app/bsky/actor/get_preferences.rs +++ b/atrium-api/src/app/bsky/actor/get_preferences.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.actor.getPreferences` namespace. +pub const NSID: &str = "app.bsky.actor.getPreferences"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters {} diff --git a/atrium-api/src/app/bsky/actor/get_profile.rs b/atrium-api/src/app/bsky/actor/get_profile.rs index 41f2dc8..7f6bb80 100644 --- a/atrium-api/src/app/bsky/actor/get_profile.rs +++ b/atrium-api/src/app/bsky/actor/get_profile.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.actor.getProfile` namespace. +pub const NSID: &str = "app.bsky.actor.getProfile"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/actor/get_profiles.rs b/atrium-api/src/app/bsky/actor/get_profiles.rs index 53ce634..01db5a1 100644 --- a/atrium-api/src/app/bsky/actor/get_profiles.rs +++ b/atrium-api/src/app/bsky/actor/get_profiles.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.actor.getProfiles` namespace. +pub const NSID: &str = "app.bsky.actor.getProfiles"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/actor/get_suggestions.rs b/atrium-api/src/app/bsky/actor/get_suggestions.rs index fd18049..ce6c999 100644 --- a/atrium-api/src/app/bsky/actor/get_suggestions.rs +++ b/atrium-api/src/app/bsky/actor/get_suggestions.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.actor.getSuggestions` namespace. +pub const NSID: &str = "app.bsky.actor.getSuggestions"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/actor/put_preferences.rs b/atrium-api/src/app/bsky/actor/put_preferences.rs index e784f57..69ca817 100644 --- a/atrium-api/src/app/bsky/actor/put_preferences.rs +++ b/atrium-api/src/app/bsky/actor/put_preferences.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.actor.putPreferences` namespace. +pub const NSID: &str = "app.bsky.actor.putPreferences"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/app/bsky/actor/search_actors.rs b/atrium-api/src/app/bsky/actor/search_actors.rs index 4cc9d3a..eae2643 100644 --- a/atrium-api/src/app/bsky/actor/search_actors.rs +++ b/atrium-api/src/app/bsky/actor/search_actors.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.actor.searchActors` namespace. +pub const NSID: &str = "app.bsky.actor.searchActors"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/actor/search_actors_typeahead.rs b/atrium-api/src/app/bsky/actor/search_actors_typeahead.rs index f6c19f3..78ada61 100644 --- a/atrium-api/src/app/bsky/actor/search_actors_typeahead.rs +++ b/atrium-api/src/app/bsky/actor/search_actors_typeahead.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.actor.searchActorsTypeahead` namespace. +pub const NSID: &str = "app.bsky.actor.searchActorsTypeahead"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/describe_feed_generator.rs b/atrium-api/src/app/bsky/feed/describe_feed_generator.rs index 05d8f9f..541f273 100644 --- a/atrium-api/src/app/bsky/feed/describe_feed_generator.rs +++ b/atrium-api/src/app/bsky/feed/describe_feed_generator.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.describeFeedGenerator` namespace. +pub const NSID: &str = "app.bsky.feed.describeFeedGenerator"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/app/bsky/feed/get_actor_feeds.rs b/atrium-api/src/app/bsky/feed/get_actor_feeds.rs index 8a5a0b2..5a76d48 100644 --- a/atrium-api/src/app/bsky/feed/get_actor_feeds.rs +++ b/atrium-api/src/app/bsky/feed/get_actor_feeds.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getActorFeeds` namespace. +pub const NSID: &str = "app.bsky.feed.getActorFeeds"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_actor_likes.rs b/atrium-api/src/app/bsky/feed/get_actor_likes.rs index 9fca6f0..2d8762f 100644 --- a/atrium-api/src/app/bsky/feed/get_actor_likes.rs +++ b/atrium-api/src/app/bsky/feed/get_actor_likes.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getActorLikes` namespace. +pub const NSID: &str = "app.bsky.feed.getActorLikes"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_author_feed.rs b/atrium-api/src/app/bsky/feed/get_author_feed.rs index bf80150..2c47885 100644 --- a/atrium-api/src/app/bsky/feed/get_author_feed.rs +++ b/atrium-api/src/app/bsky/feed/get_author_feed.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getAuthorFeed` namespace. +pub const NSID: &str = "app.bsky.feed.getAuthorFeed"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_feed.rs b/atrium-api/src/app/bsky/feed/get_feed.rs index f8ec3ba..54629da 100644 --- a/atrium-api/src/app/bsky/feed/get_feed.rs +++ b/atrium-api/src/app/bsky/feed/get_feed.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getFeed` namespace. +pub const NSID: &str = "app.bsky.feed.getFeed"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_feed_generator.rs b/atrium-api/src/app/bsky/feed/get_feed_generator.rs index 78b43b4..5e261e4 100644 --- a/atrium-api/src/app/bsky/feed/get_feed_generator.rs +++ b/atrium-api/src/app/bsky/feed/get_feed_generator.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getFeedGenerator` namespace. +pub const NSID: &str = "app.bsky.feed.getFeedGenerator"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_feed_generators.rs b/atrium-api/src/app/bsky/feed/get_feed_generators.rs index 7cc68f0..da491b8 100644 --- a/atrium-api/src/app/bsky/feed/get_feed_generators.rs +++ b/atrium-api/src/app/bsky/feed/get_feed_generators.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getFeedGenerators` namespace. +pub const NSID: &str = "app.bsky.feed.getFeedGenerators"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_feed_skeleton.rs b/atrium-api/src/app/bsky/feed/get_feed_skeleton.rs index 9585898..825c909 100644 --- a/atrium-api/src/app/bsky/feed/get_feed_skeleton.rs +++ b/atrium-api/src/app/bsky/feed/get_feed_skeleton.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getFeedSkeleton` namespace. +pub const NSID: &str = "app.bsky.feed.getFeedSkeleton"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_likes.rs b/atrium-api/src/app/bsky/feed/get_likes.rs index dfad507..9056977 100644 --- a/atrium-api/src/app/bsky/feed/get_likes.rs +++ b/atrium-api/src/app/bsky/feed/get_likes.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getLikes` namespace. +pub const NSID: &str = "app.bsky.feed.getLikes"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_list_feed.rs b/atrium-api/src/app/bsky/feed/get_list_feed.rs index 10517f2..5be2770 100644 --- a/atrium-api/src/app/bsky/feed/get_list_feed.rs +++ b/atrium-api/src/app/bsky/feed/get_list_feed.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getListFeed` namespace. +pub const NSID: &str = "app.bsky.feed.getListFeed"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_post_thread.rs b/atrium-api/src/app/bsky/feed/get_post_thread.rs index 6912f56..03259c5 100644 --- a/atrium-api/src/app/bsky/feed/get_post_thread.rs +++ b/atrium-api/src/app/bsky/feed/get_post_thread.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getPostThread` namespace. +pub const NSID: &str = "app.bsky.feed.getPostThread"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_posts.rs b/atrium-api/src/app/bsky/feed/get_posts.rs index f7614db..d0d6820 100644 --- a/atrium-api/src/app/bsky/feed/get_posts.rs +++ b/atrium-api/src/app/bsky/feed/get_posts.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getPosts` namespace. +pub const NSID: &str = "app.bsky.feed.getPosts"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_reposted_by.rs b/atrium-api/src/app/bsky/feed/get_reposted_by.rs index cfd97ee..f61a90d 100644 --- a/atrium-api/src/app/bsky/feed/get_reposted_by.rs +++ b/atrium-api/src/app/bsky/feed/get_reposted_by.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getRepostedBy` namespace. +pub const NSID: &str = "app.bsky.feed.getRepostedBy"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_suggested_feeds.rs b/atrium-api/src/app/bsky/feed/get_suggested_feeds.rs index dbd459d..a31b166 100644 --- a/atrium-api/src/app/bsky/feed/get_suggested_feeds.rs +++ b/atrium-api/src/app/bsky/feed/get_suggested_feeds.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getSuggestedFeeds` namespace. +pub const NSID: &str = "app.bsky.feed.getSuggestedFeeds"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/get_timeline.rs b/atrium-api/src/app/bsky/feed/get_timeline.rs index 516f014..44c812e 100644 --- a/atrium-api/src/app/bsky/feed/get_timeline.rs +++ b/atrium-api/src/app/bsky/feed/get_timeline.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.getTimeline` namespace. +pub const NSID: &str = "app.bsky.feed.getTimeline"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/search_posts.rs b/atrium-api/src/app/bsky/feed/search_posts.rs index 035db0d..5aa0801 100644 --- a/atrium-api/src/app/bsky/feed/search_posts.rs +++ b/atrium-api/src/app/bsky/feed/search_posts.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.searchPosts` namespace. +pub const NSID: &str = "app.bsky.feed.searchPosts"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/feed/send_interactions.rs b/atrium-api/src/app/bsky/feed/send_interactions.rs index 79d575d..14f4b98 100644 --- a/atrium-api/src/app/bsky/feed/send_interactions.rs +++ b/atrium-api/src/app/bsky/feed/send_interactions.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.feed.sendInteractions` namespace. +pub const NSID: &str = "app.bsky.feed.sendInteractions"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/app/bsky/graph/get_blocks.rs b/atrium-api/src/app/bsky/graph/get_blocks.rs index 0a2c52e..66c5992 100644 --- a/atrium-api/src/app/bsky/graph/get_blocks.rs +++ b/atrium-api/src/app/bsky/graph/get_blocks.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getBlocks` namespace. +pub const NSID: &str = "app.bsky.graph.getBlocks"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/get_followers.rs b/atrium-api/src/app/bsky/graph/get_followers.rs index 5ad1173..e78189e 100644 --- a/atrium-api/src/app/bsky/graph/get_followers.rs +++ b/atrium-api/src/app/bsky/graph/get_followers.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getFollowers` namespace. +pub const NSID: &str = "app.bsky.graph.getFollowers"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/get_follows.rs b/atrium-api/src/app/bsky/graph/get_follows.rs index 95b6313..02752bc 100644 --- a/atrium-api/src/app/bsky/graph/get_follows.rs +++ b/atrium-api/src/app/bsky/graph/get_follows.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getFollows` namespace. +pub const NSID: &str = "app.bsky.graph.getFollows"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/get_list.rs b/atrium-api/src/app/bsky/graph/get_list.rs index 195796e..deb87e6 100644 --- a/atrium-api/src/app/bsky/graph/get_list.rs +++ b/atrium-api/src/app/bsky/graph/get_list.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getList` namespace. +pub const NSID: &str = "app.bsky.graph.getList"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/get_list_blocks.rs b/atrium-api/src/app/bsky/graph/get_list_blocks.rs index 06e6854..2d343db 100644 --- a/atrium-api/src/app/bsky/graph/get_list_blocks.rs +++ b/atrium-api/src/app/bsky/graph/get_list_blocks.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getListBlocks` namespace. +pub const NSID: &str = "app.bsky.graph.getListBlocks"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/get_list_mutes.rs b/atrium-api/src/app/bsky/graph/get_list_mutes.rs index 8871ffb..1aed6c3 100644 --- a/atrium-api/src/app/bsky/graph/get_list_mutes.rs +++ b/atrium-api/src/app/bsky/graph/get_list_mutes.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getListMutes` namespace. +pub const NSID: &str = "app.bsky.graph.getListMutes"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/get_lists.rs b/atrium-api/src/app/bsky/graph/get_lists.rs index 093ac48..6a47cfe 100644 --- a/atrium-api/src/app/bsky/graph/get_lists.rs +++ b/atrium-api/src/app/bsky/graph/get_lists.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getLists` namespace. +pub const NSID: &str = "app.bsky.graph.getLists"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/get_mutes.rs b/atrium-api/src/app/bsky/graph/get_mutes.rs index c7fad11..e4aa7a4 100644 --- a/atrium-api/src/app/bsky/graph/get_mutes.rs +++ b/atrium-api/src/app/bsky/graph/get_mutes.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getMutes` namespace. +pub const NSID: &str = "app.bsky.graph.getMutes"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/get_relationships.rs b/atrium-api/src/app/bsky/graph/get_relationships.rs index a92265a..607f04d 100644 --- a/atrium-api/src/app/bsky/graph/get_relationships.rs +++ b/atrium-api/src/app/bsky/graph/get_relationships.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getRelationships` namespace. +pub const NSID: &str = "app.bsky.graph.getRelationships"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/get_suggested_follows_by_actor.rs b/atrium-api/src/app/bsky/graph/get_suggested_follows_by_actor.rs index 1a0aec9..60a5071 100644 --- a/atrium-api/src/app/bsky/graph/get_suggested_follows_by_actor.rs +++ b/atrium-api/src/app/bsky/graph/get_suggested_follows_by_actor.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.getSuggestedFollowsByActor` namespace. +pub const NSID: &str = "app.bsky.graph.getSuggestedFollowsByActor"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/graph/mute_actor.rs b/atrium-api/src/app/bsky/graph/mute_actor.rs index e136134..60c9a42 100644 --- a/atrium-api/src/app/bsky/graph/mute_actor.rs +++ b/atrium-api/src/app/bsky/graph/mute_actor.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.muteActor` namespace. +pub const NSID: &str = "app.bsky.graph.muteActor"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/app/bsky/graph/mute_actor_list.rs b/atrium-api/src/app/bsky/graph/mute_actor_list.rs index 527c583..4b55ebf 100644 --- a/atrium-api/src/app/bsky/graph/mute_actor_list.rs +++ b/atrium-api/src/app/bsky/graph/mute_actor_list.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.muteActorList` namespace. +pub const NSID: &str = "app.bsky.graph.muteActorList"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/app/bsky/graph/unmute_actor.rs b/atrium-api/src/app/bsky/graph/unmute_actor.rs index a377fe4..f60b183 100644 --- a/atrium-api/src/app/bsky/graph/unmute_actor.rs +++ b/atrium-api/src/app/bsky/graph/unmute_actor.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.unmuteActor` namespace. +pub const NSID: &str = "app.bsky.graph.unmuteActor"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/app/bsky/graph/unmute_actor_list.rs b/atrium-api/src/app/bsky/graph/unmute_actor_list.rs index 3f0665d..d2b1bd9 100644 --- a/atrium-api/src/app/bsky/graph/unmute_actor_list.rs +++ b/atrium-api/src/app/bsky/graph/unmute_actor_list.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.graph.unmuteActorList` namespace. +pub const NSID: &str = "app.bsky.graph.unmuteActorList"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/app/bsky/labeler/get_services.rs b/atrium-api/src/app/bsky/labeler/get_services.rs index 6a66f96..a701965 100644 --- a/atrium-api/src/app/bsky/labeler/get_services.rs +++ b/atrium-api/src/app/bsky/labeler/get_services.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.labeler.getServices` namespace. +pub const NSID: &str = "app.bsky.labeler.getServices"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/notification/get_unread_count.rs b/atrium-api/src/app/bsky/notification/get_unread_count.rs index 677d6cb..edde602 100644 --- a/atrium-api/src/app/bsky/notification/get_unread_count.rs +++ b/atrium-api/src/app/bsky/notification/get_unread_count.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.notification.getUnreadCount` namespace. +pub const NSID: &str = "app.bsky.notification.getUnreadCount"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/notification/list_notifications.rs b/atrium-api/src/app/bsky/notification/list_notifications.rs index 4273c94..eba978f 100644 --- a/atrium-api/src/app/bsky/notification/list_notifications.rs +++ b/atrium-api/src/app/bsky/notification/list_notifications.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.notification.listNotifications` namespace. +pub const NSID: &str = "app.bsky.notification.listNotifications"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/notification/register_push.rs b/atrium-api/src/app/bsky/notification/register_push.rs index bf2d03d..37dc2b1 100644 --- a/atrium-api/src/app/bsky/notification/register_push.rs +++ b/atrium-api/src/app/bsky/notification/register_push.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.notification.registerPush` namespace. +pub const NSID: &str = "app.bsky.notification.registerPush"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/app/bsky/notification/update_seen.rs b/atrium-api/src/app/bsky/notification/update_seen.rs index ecf250f..1da03d7 100644 --- a/atrium-api/src/app/bsky/notification/update_seen.rs +++ b/atrium-api/src/app/bsky/notification/update_seen.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.notification.updateSeen` namespace. +pub const NSID: &str = "app.bsky.notification.updateSeen"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/app/bsky/unspecced/get_popular_feed_generators.rs b/atrium-api/src/app/bsky/unspecced/get_popular_feed_generators.rs index 645dfe0..95553d7 100644 --- a/atrium-api/src/app/bsky/unspecced/get_popular_feed_generators.rs +++ b/atrium-api/src/app/bsky/unspecced/get_popular_feed_generators.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.unspecced.getPopularFeedGenerators` namespace. +pub const NSID: &str = "app.bsky.unspecced.getPopularFeedGenerators"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/unspecced/get_suggestions_skeleton.rs b/atrium-api/src/app/bsky/unspecced/get_suggestions_skeleton.rs index 0cc0af0..1fb10f9 100644 --- a/atrium-api/src/app/bsky/unspecced/get_suggestions_skeleton.rs +++ b/atrium-api/src/app/bsky/unspecced/get_suggestions_skeleton.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.unspecced.getSuggestionsSkeleton` namespace. +pub const NSID: &str = "app.bsky.unspecced.getSuggestionsSkeleton"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/unspecced/get_tagged_suggestions.rs b/atrium-api/src/app/bsky/unspecced/get_tagged_suggestions.rs index 86a0836..61957a7 100644 --- a/atrium-api/src/app/bsky/unspecced/get_tagged_suggestions.rs +++ b/atrium-api/src/app/bsky/unspecced/get_tagged_suggestions.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.unspecced.getTaggedSuggestions` namespace. +pub const NSID: &str = "app.bsky.unspecced.getTaggedSuggestions"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters {} diff --git a/atrium-api/src/app/bsky/unspecced/search_actors_skeleton.rs b/atrium-api/src/app/bsky/unspecced/search_actors_skeleton.rs index 7b8d2ff..63e73d6 100644 --- a/atrium-api/src/app/bsky/unspecced/search_actors_skeleton.rs +++ b/atrium-api/src/app/bsky/unspecced/search_actors_skeleton.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.unspecced.searchActorsSkeleton` namespace. +pub const NSID: &str = "app.bsky.unspecced.searchActorsSkeleton"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/app/bsky/unspecced/search_posts_skeleton.rs b/atrium-api/src/app/bsky/unspecced/search_posts_skeleton.rs index ae96e9d..06be04f 100644 --- a/atrium-api/src/app/bsky/unspecced/search_posts_skeleton.rs +++ b/atrium-api/src/app/bsky/unspecced/search_posts_skeleton.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `app.bsky.unspecced.searchPostsSkeleton` namespace. +pub const NSID: &str = "app.bsky.unspecced.searchPostsSkeleton"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/chat/bsky/actor/delete_account.rs b/atrium-api/src/chat/bsky/actor/delete_account.rs index 6920170..5bd1b38 100644 --- a/atrium-api/src/chat/bsky/actor/delete_account.rs +++ b/atrium-api/src/chat/bsky/actor/delete_account.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.actor.deleteAccount` namespace. +pub const NSID: &str = "chat.bsky.actor.deleteAccount"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output {} diff --git a/atrium-api/src/chat/bsky/actor/export_account_data.rs b/atrium-api/src/chat/bsky/actor/export_account_data.rs index e386d01..fc68a32 100644 --- a/atrium-api/src/chat/bsky/actor/export_account_data.rs +++ b/atrium-api/src/chat/bsky/actor/export_account_data.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.actor.exportAccountData` namespace. +pub const NSID: &str = "chat.bsky.actor.exportAccountData"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(tag = "error", content = "message")] pub enum Error {} diff --git a/atrium-api/src/chat/bsky/convo/delete_message_for_self.rs b/atrium-api/src/chat/bsky/convo/delete_message_for_self.rs index fcd9551..4b90480 100644 --- a/atrium-api/src/chat/bsky/convo/delete_message_for_self.rs +++ b/atrium-api/src/chat/bsky/convo/delete_message_for_self.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.deleteMessageForSelf` namespace. +pub const NSID: &str = "chat.bsky.convo.deleteMessageForSelf"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/chat/bsky/convo/get_convo.rs b/atrium-api/src/chat/bsky/convo/get_convo.rs index 6f8e5f6..b70654d 100644 --- a/atrium-api/src/chat/bsky/convo/get_convo.rs +++ b/atrium-api/src/chat/bsky/convo/get_convo.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.getConvo` namespace. +pub const NSID: &str = "chat.bsky.convo.getConvo"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/chat/bsky/convo/get_convo_for_members.rs b/atrium-api/src/chat/bsky/convo/get_convo_for_members.rs index 614aa48..a0e8457 100644 --- a/atrium-api/src/chat/bsky/convo/get_convo_for_members.rs +++ b/atrium-api/src/chat/bsky/convo/get_convo_for_members.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.getConvoForMembers` namespace. +pub const NSID: &str = "chat.bsky.convo.getConvoForMembers"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/chat/bsky/convo/get_log.rs b/atrium-api/src/chat/bsky/convo/get_log.rs index d76823d..cc007f2 100644 --- a/atrium-api/src/chat/bsky/convo/get_log.rs +++ b/atrium-api/src/chat/bsky/convo/get_log.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.getLog` namespace. +pub const NSID: &str = "chat.bsky.convo.getLog"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/chat/bsky/convo/get_messages.rs b/atrium-api/src/chat/bsky/convo/get_messages.rs index a408b52..e1003a6 100644 --- a/atrium-api/src/chat/bsky/convo/get_messages.rs +++ b/atrium-api/src/chat/bsky/convo/get_messages.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.getMessages` namespace. +pub const NSID: &str = "chat.bsky.convo.getMessages"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/chat/bsky/convo/leave_convo.rs b/atrium-api/src/chat/bsky/convo/leave_convo.rs index 229762a..a7f073d 100644 --- a/atrium-api/src/chat/bsky/convo/leave_convo.rs +++ b/atrium-api/src/chat/bsky/convo/leave_convo.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.leaveConvo` namespace. +pub const NSID: &str = "chat.bsky.convo.leaveConvo"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/chat/bsky/convo/list_convos.rs b/atrium-api/src/chat/bsky/convo/list_convos.rs index a19d6c4..0aea8d2 100644 --- a/atrium-api/src/chat/bsky/convo/list_convos.rs +++ b/atrium-api/src/chat/bsky/convo/list_convos.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.listConvos` namespace. +pub const NSID: &str = "chat.bsky.convo.listConvos"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/chat/bsky/convo/mute_convo.rs b/atrium-api/src/chat/bsky/convo/mute_convo.rs index 814b7a3..842d03e 100644 --- a/atrium-api/src/chat/bsky/convo/mute_convo.rs +++ b/atrium-api/src/chat/bsky/convo/mute_convo.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.muteConvo` namespace. +pub const NSID: &str = "chat.bsky.convo.muteConvo"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/chat/bsky/convo/send_message.rs b/atrium-api/src/chat/bsky/convo/send_message.rs index ae17a16..bf7e273 100644 --- a/atrium-api/src/chat/bsky/convo/send_message.rs +++ b/atrium-api/src/chat/bsky/convo/send_message.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.sendMessage` namespace. +pub const NSID: &str = "chat.bsky.convo.sendMessage"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/chat/bsky/convo/send_message_batch.rs b/atrium-api/src/chat/bsky/convo/send_message_batch.rs index 1b039bf..c37d1e7 100644 --- a/atrium-api/src/chat/bsky/convo/send_message_batch.rs +++ b/atrium-api/src/chat/bsky/convo/send_message_batch.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.sendMessageBatch` namespace. +pub const NSID: &str = "chat.bsky.convo.sendMessageBatch"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/chat/bsky/convo/unmute_convo.rs b/atrium-api/src/chat/bsky/convo/unmute_convo.rs index a3d7049..6fa19ea 100644 --- a/atrium-api/src/chat/bsky/convo/unmute_convo.rs +++ b/atrium-api/src/chat/bsky/convo/unmute_convo.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.unmuteConvo` namespace. +pub const NSID: &str = "chat.bsky.convo.unmuteConvo"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/chat/bsky/convo/update_read.rs b/atrium-api/src/chat/bsky/convo/update_read.rs index 93f3415..e69ee90 100644 --- a/atrium-api/src/chat/bsky/convo/update_read.rs +++ b/atrium-api/src/chat/bsky/convo/update_read.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.convo.updateRead` namespace. +pub const NSID: &str = "chat.bsky.convo.updateRead"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/chat/bsky/moderation/get_actor_metadata.rs b/atrium-api/src/chat/bsky/moderation/get_actor_metadata.rs index c6f69f8..537fc06 100644 --- a/atrium-api/src/chat/bsky/moderation/get_actor_metadata.rs +++ b/atrium-api/src/chat/bsky/moderation/get_actor_metadata.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.moderation.getActorMetadata` namespace. +pub const NSID: &str = "chat.bsky.moderation.getActorMetadata"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/chat/bsky/moderation/get_message_context.rs b/atrium-api/src/chat/bsky/moderation/get_message_context.rs index 555470c..e8b09ca 100644 --- a/atrium-api/src/chat/bsky/moderation/get_message_context.rs +++ b/atrium-api/src/chat/bsky/moderation/get_message_context.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.moderation.getMessageContext` namespace. +pub const NSID: &str = "chat.bsky.moderation.getMessageContext"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/chat/bsky/moderation/update_actor_access.rs b/atrium-api/src/chat/bsky/moderation/update_actor_access.rs index b1b5004..be373a7 100644 --- a/atrium-api/src/chat/bsky/moderation/update_actor_access.rs +++ b/atrium-api/src/chat/bsky/moderation/update_actor_access.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `chat.bsky.moderation.updateActorAccess` namespace. +pub const NSID: &str = "chat.bsky.moderation.updateActorAccess"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/client.rs b/atrium-api/src/client.rs index 8b8bc69..5bbda15 100644 --- a/atrium-api/src/client.rs +++ b/atrium-api/src/client.rs @@ -375,7 +375,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.actor.getPreferences".into(), + nsid: crate::app::bsky::actor::get_preferences::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -405,7 +405,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.actor.getProfile".into(), + nsid: crate::app::bsky::actor::get_profile::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -435,7 +435,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.actor.getProfiles".into(), + nsid: crate::app::bsky::actor::get_profiles::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -465,7 +465,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.actor.getSuggestions".into(), + nsid: crate::app::bsky::actor::get_suggestions::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -492,7 +492,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "app.bsky.actor.putPreferences".into(), + nsid: crate::app::bsky::actor::put_preferences::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -522,7 +522,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.actor.searchActors".into(), + nsid: crate::app::bsky::actor::search_actors::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -552,7 +552,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.actor.searchActorsTypeahead".into(), + nsid: crate::app::bsky::actor::search_actors_typeahead::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -594,7 +594,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.describeFeedGenerator".into(), + nsid: crate::app::bsky::feed::describe_feed_generator::NSID.into(), parameters: None, input: None, encoding: None, @@ -624,7 +624,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getActorFeeds".into(), + nsid: crate::app::bsky::feed::get_actor_feeds::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -654,7 +654,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getActorLikes".into(), + nsid: crate::app::bsky::feed::get_actor_likes::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -684,7 +684,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getAuthorFeed".into(), + nsid: crate::app::bsky::feed::get_author_feed::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -714,7 +714,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getFeed".into(), + nsid: crate::app::bsky::feed::get_feed::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -744,7 +744,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getFeedGenerator".into(), + nsid: crate::app::bsky::feed::get_feed_generator::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -774,7 +774,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getFeedGenerators".into(), + nsid: crate::app::bsky::feed::get_feed_generators::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -804,7 +804,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getFeedSkeleton".into(), + nsid: crate::app::bsky::feed::get_feed_skeleton::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -834,7 +834,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getLikes".into(), + nsid: crate::app::bsky::feed::get_likes::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -864,7 +864,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getListFeed".into(), + nsid: crate::app::bsky::feed::get_list_feed::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -894,7 +894,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getPostThread".into(), + nsid: crate::app::bsky::feed::get_post_thread::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -924,7 +924,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getPosts".into(), + nsid: crate::app::bsky::feed::get_posts::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -954,7 +954,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getRepostedBy".into(), + nsid: crate::app::bsky::feed::get_reposted_by::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -984,7 +984,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getSuggestedFeeds".into(), + nsid: crate::app::bsky::feed::get_suggested_feeds::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1014,7 +1014,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.getTimeline".into(), + nsid: crate::app::bsky::feed::get_timeline::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1044,7 +1044,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.feed.searchPosts".into(), + nsid: crate::app::bsky::feed::search_posts::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1074,7 +1074,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "app.bsky.feed.sendInteractions".into(), + nsid: crate::app::bsky::feed::send_interactions::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -1117,7 +1117,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getBlocks".into(), + nsid: crate::app::bsky::graph::get_blocks::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1147,7 +1147,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getFollowers".into(), + nsid: crate::app::bsky::graph::get_followers::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1177,7 +1177,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getFollows".into(), + nsid: crate::app::bsky::graph::get_follows::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1207,7 +1207,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getList".into(), + nsid: crate::app::bsky::graph::get_list::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1237,7 +1237,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getListBlocks".into(), + nsid: crate::app::bsky::graph::get_list_blocks::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1267,7 +1267,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getListMutes".into(), + nsid: crate::app::bsky::graph::get_list_mutes::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1297,7 +1297,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getLists".into(), + nsid: crate::app::bsky::graph::get_lists::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1327,7 +1327,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getMutes".into(), + nsid: crate::app::bsky::graph::get_mutes::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1357,7 +1357,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getRelationships".into(), + nsid: crate::app::bsky::graph::get_relationships::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1387,7 +1387,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.graph.getSuggestedFollowsByActor".into(), + nsid: crate::app::bsky::graph::get_suggested_follows_by_actor::NSID + .into(), parameters: Some(params), input: None, encoding: None, @@ -1414,7 +1415,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "app.bsky.graph.muteActor".into(), + nsid: crate::app::bsky::graph::mute_actor::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -1441,7 +1442,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "app.bsky.graph.muteActorList".into(), + nsid: crate::app::bsky::graph::mute_actor_list::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -1468,7 +1469,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "app.bsky.graph.unmuteActor".into(), + nsid: crate::app::bsky::graph::unmute_actor::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -1495,7 +1496,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "app.bsky.graph.unmuteActorList".into(), + nsid: crate::app::bsky::graph::unmute_actor_list::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -1538,7 +1539,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.labeler.getServices".into(), + nsid: crate::app::bsky::labeler::get_services::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1581,7 +1582,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.notification.getUnreadCount".into(), + nsid: crate::app::bsky::notification::get_unread_count::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -1611,7 +1612,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.notification.listNotifications".into(), + nsid: crate::app::bsky::notification::list_notifications::NSID + .into(), parameters: Some(params), input: None, encoding: None, @@ -1638,7 +1640,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "app.bsky.notification.registerPush".into(), + nsid: crate::app::bsky::notification::register_push::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -1665,7 +1667,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "app.bsky.notification.updateSeen".into(), + nsid: crate::app::bsky::notification::update_seen::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -1708,7 +1710,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.unspecced.getPopularFeedGenerators".into(), + nsid: crate::app::bsky::unspecced::get_popular_feed_generators::NSID + .into(), parameters: Some(params), input: None, encoding: None, @@ -1738,7 +1741,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.unspecced.getSuggestionsSkeleton".into(), + nsid: crate::app::bsky::unspecced::get_suggestions_skeleton::NSID + .into(), parameters: Some(params), input: None, encoding: None, @@ -1768,7 +1772,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.unspecced.getTaggedSuggestions".into(), + nsid: crate::app::bsky::unspecced::get_tagged_suggestions::NSID + .into(), parameters: Some(params), input: None, encoding: None, @@ -1798,7 +1803,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.unspecced.searchActorsSkeleton".into(), + nsid: crate::app::bsky::unspecced::search_actors_skeleton::NSID + .into(), parameters: Some(params), input: None, encoding: None, @@ -1828,7 +1834,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "app.bsky.unspecced.searchPostsSkeleton".into(), + nsid: crate::app::bsky::unspecced::search_posts_skeleton::NSID + .into(), parameters: Some(params), input: None, encoding: None, @@ -1899,7 +1906,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "chat.bsky.actor.deleteAccount".into(), + nsid: crate::chat::bsky::actor::delete_account::NSID.into(), parameters: None, input: None, encoding: None, @@ -1927,7 +1934,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "chat.bsky.actor.exportAccountData".into(), + nsid: crate::chat::bsky::actor::export_account_data::NSID.into(), parameters: None, input: None, encoding: None, @@ -1969,7 +1976,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "chat.bsky.convo.deleteMessageForSelf".into(), + nsid: crate::chat::bsky::convo::delete_message_for_self::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -1998,7 +2005,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "chat.bsky.convo.getConvo".into(), + nsid: crate::chat::bsky::convo::get_convo::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2027,7 +2034,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "chat.bsky.convo.getConvoForMembers".into(), + nsid: crate::chat::bsky::convo::get_convo_for_members::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2056,7 +2063,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "chat.bsky.convo.getLog".into(), + nsid: crate::chat::bsky::convo::get_log::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2085,7 +2092,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "chat.bsky.convo.getMessages".into(), + nsid: crate::chat::bsky::convo::get_messages::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2114,7 +2121,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "chat.bsky.convo.leaveConvo".into(), + nsid: crate::chat::bsky::convo::leave_convo::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2143,7 +2150,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "chat.bsky.convo.listConvos".into(), + nsid: crate::chat::bsky::convo::list_convos::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2172,7 +2179,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "chat.bsky.convo.muteConvo".into(), + nsid: crate::chat::bsky::convo::mute_convo::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2201,7 +2208,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "chat.bsky.convo.sendMessage".into(), + nsid: crate::chat::bsky::convo::send_message::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2230,7 +2237,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "chat.bsky.convo.sendMessageBatch".into(), + nsid: crate::chat::bsky::convo::send_message_batch::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2259,7 +2266,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "chat.bsky.convo.unmuteConvo".into(), + nsid: crate::chat::bsky::convo::unmute_convo::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2288,7 +2295,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "chat.bsky.convo.updateRead".into(), + nsid: crate::chat::bsky::convo::update_read::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2330,7 +2337,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "chat.bsky.moderation.getActorMetadata".into(), + nsid: crate::chat::bsky::moderation::get_actor_metadata::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2359,7 +2366,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "chat.bsky.moderation.getMessageContext".into(), + nsid: crate::chat::bsky::moderation::get_message_context::NSID + .into(), parameters: Some(params), input: None, encoding: None, @@ -2388,7 +2396,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "chat.bsky.moderation.updateActorAccess".into(), + nsid: crate::chat::bsky::moderation::update_actor_access::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2460,7 +2469,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.admin.deleteAccount".into(), + nsid: crate::com::atproto::admin::delete_account::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2490,7 +2499,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.admin.disableAccountInvites".into(), + nsid: crate::com::atproto::admin::disable_account_invites::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2520,7 +2530,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.admin.disableInviteCodes".into(), + nsid: crate::com::atproto::admin::disable_invite_codes::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2550,7 +2560,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.admin.enableAccountInvites".into(), + nsid: crate::com::atproto::admin::enable_account_invites::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2580,7 +2591,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.admin.getAccountInfo".into(), + nsid: crate::com::atproto::admin::get_account_info::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2610,7 +2621,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.admin.getAccountInfos".into(), + nsid: crate::com::atproto::admin::get_account_infos::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2640,7 +2651,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.admin.getInviteCodes".into(), + nsid: crate::com::atproto::admin::get_invite_codes::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2670,7 +2681,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.admin.getSubjectStatus".into(), + nsid: crate::com::atproto::admin::get_subject_status::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2700,7 +2711,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.admin.sendEmail".into(), + nsid: crate::com::atproto::admin::send_email::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2730,7 +2741,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.admin.updateAccountEmail".into(), + nsid: crate::com::atproto::admin::update_account_email::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2760,7 +2771,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.admin.updateAccountHandle".into(), + nsid: crate::com::atproto::admin::update_account_handle::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2790,7 +2801,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.admin.updateAccountPassword".into(), + nsid: crate::com::atproto::admin::update_account_password::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2820,7 +2832,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.admin.updateSubjectStatus".into(), + nsid: crate::com::atproto::admin::update_subject_status::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2861,7 +2873,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.identity.getRecommendedDidCredentials".into(), + nsid: crate::com::atproto::identity::get_recommended_did_credentials::NSID + .into(), parameters: None, input: None, encoding: None, @@ -2890,7 +2903,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.identity.requestPlcOperationSignature".into(), + nsid: crate::com::atproto::identity::request_plc_operation_signature::NSID + .into(), parameters: None, input: None, encoding: None, @@ -2920,7 +2934,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.identity.resolveHandle".into(), + nsid: crate::com::atproto::identity::resolve_handle::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -2950,7 +2964,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.identity.signPlcOperation".into(), + nsid: crate::com::atproto::identity::sign_plc_operation::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -2980,7 +2994,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.identity.submitPlcOperation".into(), + nsid: crate::com::atproto::identity::submit_plc_operation::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3007,7 +3022,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.identity.updateHandle".into(), + nsid: crate::com::atproto::identity::update_handle::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3049,7 +3064,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.label.queryLabels".into(), + nsid: crate::com::atproto::label::query_labels::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -3091,7 +3106,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.moderation.createReport".into(), + nsid: crate::com::atproto::moderation::create_report::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3130,7 +3145,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.repo.applyWrites".into(), + nsid: crate::com::atproto::repo::apply_writes::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3160,7 +3175,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.repo.createRecord".into(), + nsid: crate::com::atproto::repo::create_record::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3187,7 +3202,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.repo.deleteRecord".into(), + nsid: crate::com::atproto::repo::delete_record::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3217,7 +3232,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.repo.describeRepo".into(), + nsid: crate::com::atproto::repo::describe_repo::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -3247,7 +3262,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.repo.getRecord".into(), + nsid: crate::com::atproto::repo::get_record::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -3274,7 +3289,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.repo.importRepo".into(), + nsid: crate::com::atproto::repo::import_repo::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Bytes(input)), encoding: Some(String::from("application/vnd.ipld.car")), @@ -3304,7 +3319,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.repo.listMissingBlobs".into(), + nsid: crate::com::atproto::repo::list_missing_blobs::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -3334,7 +3349,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.repo.listRecords".into(), + nsid: crate::com::atproto::repo::list_records::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -3364,7 +3379,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.repo.putRecord".into(), + nsid: crate::com::atproto::repo::put_record::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3394,7 +3409,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.repo.uploadBlob".into(), + nsid: crate::com::atproto::repo::upload_blob::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Bytes(input)), encoding: Some(String::from("*/*")), @@ -3432,7 +3447,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.activateAccount".into(), + nsid: crate::com::atproto::server::activate_account::NSID.into(), parameters: None, input: None, encoding: None, @@ -3461,7 +3476,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.server.checkAccountStatus".into(), + nsid: crate::com::atproto::server::check_account_status::NSID.into(), parameters: None, input: None, encoding: None, @@ -3488,7 +3503,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.confirmEmail".into(), + nsid: crate::com::atproto::server::confirm_email::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3518,7 +3533,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.createAccount".into(), + nsid: crate::com::atproto::server::create_account::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3548,7 +3563,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.createAppPassword".into(), + nsid: crate::com::atproto::server::create_app_password::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3578,7 +3593,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.createInviteCode".into(), + nsid: crate::com::atproto::server::create_invite_code::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3608,7 +3623,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.createInviteCodes".into(), + nsid: crate::com::atproto::server::create_invite_codes::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3638,7 +3653,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.createSession".into(), + nsid: crate::com::atproto::server::create_session::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3668,7 +3683,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.deactivateAccount".into(), + nsid: crate::com::atproto::server::deactivate_account::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3695,7 +3710,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.deleteAccount".into(), + nsid: crate::com::atproto::server::delete_account::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -3721,7 +3736,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.deleteSession".into(), + nsid: crate::com::atproto::server::delete_session::NSID.into(), parameters: None, input: None, encoding: None, @@ -3750,7 +3765,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.server.describeServer".into(), + nsid: crate::com::atproto::server::describe_server::NSID.into(), parameters: None, input: None, encoding: None, @@ -3780,7 +3795,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.server.getAccountInviteCodes".into(), + nsid: crate::com::atproto::server::get_account_invite_codes::NSID + .into(), parameters: Some(params), input: None, encoding: None, @@ -3810,7 +3826,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.server.getServiceAuth".into(), + nsid: crate::com::atproto::server::get_service_auth::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -3839,7 +3855,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.server.getSession".into(), + nsid: crate::com::atproto::server::get_session::NSID.into(), parameters: None, input: None, encoding: None, @@ -3868,7 +3884,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.server.listAppPasswords".into(), + nsid: crate::com::atproto::server::list_app_passwords::NSID.into(), parameters: None, input: None, encoding: None, @@ -3897,7 +3913,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.refreshSession".into(), + nsid: crate::com::atproto::server::refresh_session::NSID.into(), parameters: None, input: None, encoding: None, @@ -3926,7 +3942,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.requestAccountDelete".into(), + nsid: crate::com::atproto::server::request_account_delete::NSID + .into(), parameters: None, input: None, encoding: None, @@ -3955,7 +3972,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.requestEmailConfirmation".into(), + nsid: crate::com::atproto::server::request_email_confirmation::NSID + .into(), parameters: None, input: None, encoding: None, @@ -3984,7 +4002,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.requestEmailUpdate".into(), + nsid: crate::com::atproto::server::request_email_update::NSID.into(), parameters: None, input: None, encoding: None, @@ -4014,7 +4032,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.requestPasswordReset".into(), + nsid: crate::com::atproto::server::request_password_reset::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4044,7 +4063,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.reserveSigningKey".into(), + nsid: crate::com::atproto::server::reserve_signing_key::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4071,7 +4090,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.resetPassword".into(), + nsid: crate::com::atproto::server::reset_password::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4101,7 +4120,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.revokeAppPassword".into(), + nsid: crate::com::atproto::server::revoke_app_password::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4128,7 +4147,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.server.updateEmail".into(), + nsid: crate::com::atproto::server::update_email::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4167,7 +4186,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.sync.getBlob".into(), + nsid: crate::com::atproto::sync::get_blob::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4194,7 +4213,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.sync.getBlocks".into(), + nsid: crate::com::atproto::sync::get_blocks::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4221,7 +4240,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.sync.getCheckout".into(), + nsid: crate::com::atproto::sync::get_checkout::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4251,7 +4270,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.sync.getHead".into(), + nsid: crate::com::atproto::sync::get_head::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4281,7 +4300,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.sync.getLatestCommit".into(), + nsid: crate::com::atproto::sync::get_latest_commit::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4308,7 +4327,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.sync.getRecord".into(), + nsid: crate::com::atproto::sync::get_record::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4335,7 +4354,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.sync.getRepo".into(), + nsid: crate::com::atproto::sync::get_repo::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4365,7 +4384,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.sync.listBlobs".into(), + nsid: crate::com::atproto::sync::list_blobs::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4395,7 +4414,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.sync.listRepos".into(), + nsid: crate::com::atproto::sync::list_repos::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4422,7 +4441,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.sync.notifyOfUpdate".into(), + nsid: crate::com::atproto::sync::notify_of_update::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4449,7 +4468,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.sync.requestCrawl".into(), + nsid: crate::com::atproto::sync::request_crawl::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4490,7 +4509,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.temp.checkSignupQueue".into(), + nsid: crate::com::atproto::temp::check_signup_queue::NSID.into(), parameters: None, input: None, encoding: None, @@ -4520,7 +4539,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "com.atproto.temp.fetchLabels".into(), + nsid: crate::com::atproto::temp::fetch_labels::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4550,7 +4569,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "com.atproto.temp.requestPhoneVerification".into(), + nsid: crate::com::atproto::temp::request_phone_verification::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4624,7 +4644,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "tools.ozone.communication.createTemplate".into(), + nsid: crate::tools::ozone::communication::create_template::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4654,7 +4675,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "tools.ozone.communication.deleteTemplate".into(), + nsid: crate::tools::ozone::communication::delete_template::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4683,7 +4705,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "tools.ozone.communication.listTemplates".into(), + nsid: crate::tools::ozone::communication::list_templates::NSID + .into(), parameters: None, input: None, encoding: None, @@ -4713,7 +4736,8 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "tools.ozone.communication.updateTemplate".into(), + nsid: crate::tools::ozone::communication::update_template::NSID + .into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4756,7 +4780,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: "tools.ozone.moderation.emitEvent".into(), + nsid: crate::tools::ozone::moderation::emit_event::NSID.into(), parameters: None, input: Some(atrium_xrpc::InputDataOrBytes::Data(input)), encoding: Some(String::from("application/json")), @@ -4786,7 +4810,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "tools.ozone.moderation.getEvent".into(), + nsid: crate::tools::ozone::moderation::get_event::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4816,7 +4840,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "tools.ozone.moderation.getRecord".into(), + nsid: crate::tools::ozone::moderation::get_record::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4846,7 +4870,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "tools.ozone.moderation.getRepo".into(), + nsid: crate::tools::ozone::moderation::get_repo::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4876,7 +4900,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "tools.ozone.moderation.queryEvents".into(), + nsid: crate::tools::ozone::moderation::query_events::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4906,7 +4930,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "tools.ozone.moderation.queryStatuses".into(), + nsid: crate::tools::ozone::moderation::query_statuses::NSID.into(), parameters: Some(params), input: None, encoding: None, @@ -4936,7 +4960,7 @@ where >( &atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: "tools.ozone.moderation.searchRepos".into(), + nsid: crate::tools::ozone::moderation::search_repos::NSID.into(), parameters: Some(params), input: None, encoding: None, diff --git a/atrium-api/src/com/atproto/admin/delete_account.rs b/atrium-api/src/com/atproto/admin/delete_account.rs index 6d0c40f..673e06f 100644 --- a/atrium-api/src/com/atproto/admin/delete_account.rs +++ b/atrium-api/src/com/atproto/admin/delete_account.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.deleteAccount` namespace. +pub const NSID: &str = "com.atproto.admin.deleteAccount"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/admin/disable_account_invites.rs b/atrium-api/src/com/atproto/admin/disable_account_invites.rs index e03a181..a37e3e1 100644 --- a/atrium-api/src/com/atproto/admin/disable_account_invites.rs +++ b/atrium-api/src/com/atproto/admin/disable_account_invites.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.disableAccountInvites` namespace. +pub const NSID: &str = "com.atproto.admin.disableAccountInvites"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/admin/disable_invite_codes.rs b/atrium-api/src/com/atproto/admin/disable_invite_codes.rs index 4e1bdb9..58f7bd7 100644 --- a/atrium-api/src/com/atproto/admin/disable_invite_codes.rs +++ b/atrium-api/src/com/atproto/admin/disable_invite_codes.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.disableInviteCodes` namespace. +pub const NSID: &str = "com.atproto.admin.disableInviteCodes"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/admin/enable_account_invites.rs b/atrium-api/src/com/atproto/admin/enable_account_invites.rs index 0475255..526b452 100644 --- a/atrium-api/src/com/atproto/admin/enable_account_invites.rs +++ b/atrium-api/src/com/atproto/admin/enable_account_invites.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.enableAccountInvites` namespace. +pub const NSID: &str = "com.atproto.admin.enableAccountInvites"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/admin/get_account_info.rs b/atrium-api/src/com/atproto/admin/get_account_info.rs index b69aa06..ec16f2e 100644 --- a/atrium-api/src/com/atproto/admin/get_account_info.rs +++ b/atrium-api/src/com/atproto/admin/get_account_info.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.getAccountInfo` namespace. +pub const NSID: &str = "com.atproto.admin.getAccountInfo"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/admin/get_account_infos.rs b/atrium-api/src/com/atproto/admin/get_account_infos.rs index 465380f..b611608 100644 --- a/atrium-api/src/com/atproto/admin/get_account_infos.rs +++ b/atrium-api/src/com/atproto/admin/get_account_infos.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.getAccountInfos` namespace. +pub const NSID: &str = "com.atproto.admin.getAccountInfos"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/admin/get_invite_codes.rs b/atrium-api/src/com/atproto/admin/get_invite_codes.rs index 933a028..08f744e 100644 --- a/atrium-api/src/com/atproto/admin/get_invite_codes.rs +++ b/atrium-api/src/com/atproto/admin/get_invite_codes.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.getInviteCodes` namespace. +pub const NSID: &str = "com.atproto.admin.getInviteCodes"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/admin/get_subject_status.rs b/atrium-api/src/com/atproto/admin/get_subject_status.rs index 68a1126..feb9d31 100644 --- a/atrium-api/src/com/atproto/admin/get_subject_status.rs +++ b/atrium-api/src/com/atproto/admin/get_subject_status.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.getSubjectStatus` namespace. +pub const NSID: &str = "com.atproto.admin.getSubjectStatus"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/admin/send_email.rs b/atrium-api/src/com/atproto/admin/send_email.rs index 879256c..253412d 100644 --- a/atrium-api/src/com/atproto/admin/send_email.rs +++ b/atrium-api/src/com/atproto/admin/send_email.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.sendEmail` namespace. +pub const NSID: &str = "com.atproto.admin.sendEmail"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/admin/update_account_email.rs b/atrium-api/src/com/atproto/admin/update_account_email.rs index d3eee07..a70d1c8 100644 --- a/atrium-api/src/com/atproto/admin/update_account_email.rs +++ b/atrium-api/src/com/atproto/admin/update_account_email.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.updateAccountEmail` namespace. +pub const NSID: &str = "com.atproto.admin.updateAccountEmail"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/admin/update_account_handle.rs b/atrium-api/src/com/atproto/admin/update_account_handle.rs index 69aa3fb..8e20e39 100644 --- a/atrium-api/src/com/atproto/admin/update_account_handle.rs +++ b/atrium-api/src/com/atproto/admin/update_account_handle.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.updateAccountHandle` namespace. +pub const NSID: &str = "com.atproto.admin.updateAccountHandle"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/admin/update_account_password.rs b/atrium-api/src/com/atproto/admin/update_account_password.rs index 3280ad4..8185970 100644 --- a/atrium-api/src/com/atproto/admin/update_account_password.rs +++ b/atrium-api/src/com/atproto/admin/update_account_password.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.updateAccountPassword` namespace. +pub const NSID: &str = "com.atproto.admin.updateAccountPassword"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/admin/update_subject_status.rs b/atrium-api/src/com/atproto/admin/update_subject_status.rs index 9dd19bc..3a3184d 100644 --- a/atrium-api/src/com/atproto/admin/update_subject_status.rs +++ b/atrium-api/src/com/atproto/admin/update_subject_status.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.admin.updateSubjectStatus` namespace. +pub const NSID: &str = "com.atproto.admin.updateSubjectStatus"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/identity/get_recommended_did_credentials.rs b/atrium-api/src/com/atproto/identity/get_recommended_did_credentials.rs index 5099a97..8cd9cb5 100644 --- a/atrium-api/src/com/atproto/identity/get_recommended_did_credentials.rs +++ b/atrium-api/src/com/atproto/identity/get_recommended_did_credentials.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.identity.getRecommendedDidCredentials` namespace. +pub const NSID: &str = "com.atproto.identity.getRecommendedDidCredentials"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/com/atproto/identity/request_plc_operation_signature.rs b/atrium-api/src/com/atproto/identity/request_plc_operation_signature.rs index 3436cc8..5d10c1a 100644 --- a/atrium-api/src/com/atproto/identity/request_plc_operation_signature.rs +++ b/atrium-api/src/com/atproto/identity/request_plc_operation_signature.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.identity.requestPlcOperationSignature` namespace. +pub const NSID: &str = "com.atproto.identity.requestPlcOperationSignature"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(tag = "error", content = "message")] pub enum Error {} diff --git a/atrium-api/src/com/atproto/identity/resolve_handle.rs b/atrium-api/src/com/atproto/identity/resolve_handle.rs index 7202c1b..6aa6785 100644 --- a/atrium-api/src/com/atproto/identity/resolve_handle.rs +++ b/atrium-api/src/com/atproto/identity/resolve_handle.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.identity.resolveHandle` namespace. +pub const NSID: &str = "com.atproto.identity.resolveHandle"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/identity/sign_plc_operation.rs b/atrium-api/src/com/atproto/identity/sign_plc_operation.rs index 4eb0a69..d789e76 100644 --- a/atrium-api/src/com/atproto/identity/sign_plc_operation.rs +++ b/atrium-api/src/com/atproto/identity/sign_plc_operation.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.identity.signPlcOperation` namespace. +pub const NSID: &str = "com.atproto.identity.signPlcOperation"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/identity/submit_plc_operation.rs b/atrium-api/src/com/atproto/identity/submit_plc_operation.rs index 1246cd8..5d57b31 100644 --- a/atrium-api/src/com/atproto/identity/submit_plc_operation.rs +++ b/atrium-api/src/com/atproto/identity/submit_plc_operation.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.identity.submitPlcOperation` namespace. +pub const NSID: &str = "com.atproto.identity.submitPlcOperation"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/identity/update_handle.rs b/atrium-api/src/com/atproto/identity/update_handle.rs index 6ea24a8..6d35159 100644 --- a/atrium-api/src/com/atproto/identity/update_handle.rs +++ b/atrium-api/src/com/atproto/identity/update_handle.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.identity.updateHandle` namespace. +pub const NSID: &str = "com.atproto.identity.updateHandle"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/label/query_labels.rs b/atrium-api/src/com/atproto/label/query_labels.rs index 22b01f2..9485778 100644 --- a/atrium-api/src/com/atproto/label/query_labels.rs +++ b/atrium-api/src/com/atproto/label/query_labels.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.label.queryLabels` namespace. +pub const NSID: &str = "com.atproto.label.queryLabels"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/moderation/create_report.rs b/atrium-api/src/com/atproto/moderation/create_report.rs index 8062391..e1be5a3 100644 --- a/atrium-api/src/com/atproto/moderation/create_report.rs +++ b/atrium-api/src/com/atproto/moderation/create_report.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.moderation.createReport` namespace. +pub const NSID: &str = "com.atproto.moderation.createReport"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/repo/apply_writes.rs b/atrium-api/src/com/atproto/repo/apply_writes.rs index aa982d6..79c5f9b 100644 --- a/atrium-api/src/com/atproto/repo/apply_writes.rs +++ b/atrium-api/src/com/atproto/repo/apply_writes.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.applyWrites` namespace. +pub const NSID: &str = "com.atproto.repo.applyWrites"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/repo/create_record.rs b/atrium-api/src/com/atproto/repo/create_record.rs index fc874c4..36de794 100644 --- a/atrium-api/src/com/atproto/repo/create_record.rs +++ b/atrium-api/src/com/atproto/repo/create_record.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.createRecord` namespace. +pub const NSID: &str = "com.atproto.repo.createRecord"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/repo/delete_record.rs b/atrium-api/src/com/atproto/repo/delete_record.rs index 499f401..7eafe29 100644 --- a/atrium-api/src/com/atproto/repo/delete_record.rs +++ b/atrium-api/src/com/atproto/repo/delete_record.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.deleteRecord` namespace. +pub const NSID: &str = "com.atproto.repo.deleteRecord"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/repo/describe_repo.rs b/atrium-api/src/com/atproto/repo/describe_repo.rs index 609d3f6..ffb2451 100644 --- a/atrium-api/src/com/atproto/repo/describe_repo.rs +++ b/atrium-api/src/com/atproto/repo/describe_repo.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.describeRepo` namespace. +pub const NSID: &str = "com.atproto.repo.describeRepo"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/repo/get_record.rs b/atrium-api/src/com/atproto/repo/get_record.rs index 6c6e1f4..0565c76 100644 --- a/atrium-api/src/com/atproto/repo/get_record.rs +++ b/atrium-api/src/com/atproto/repo/get_record.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.getRecord` namespace. +pub const NSID: &str = "com.atproto.repo.getRecord"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/repo/import_repo.rs b/atrium-api/src/com/atproto/repo/import_repo.rs index 84fdc75..be99ab0 100644 --- a/atrium-api/src/com/atproto/repo/import_repo.rs +++ b/atrium-api/src/com/atproto/repo/import_repo.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.importRepo` namespace. +pub const NSID: &str = "com.atproto.repo.importRepo"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(tag = "error", content = "message")] pub enum Error {} diff --git a/atrium-api/src/com/atproto/repo/list_missing_blobs.rs b/atrium-api/src/com/atproto/repo/list_missing_blobs.rs index b347482..bad7fcd 100644 --- a/atrium-api/src/com/atproto/repo/list_missing_blobs.rs +++ b/atrium-api/src/com/atproto/repo/list_missing_blobs.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.listMissingBlobs` namespace. +pub const NSID: &str = "com.atproto.repo.listMissingBlobs"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/repo/list_records.rs b/atrium-api/src/com/atproto/repo/list_records.rs index d5a84c5..f41ed43 100644 --- a/atrium-api/src/com/atproto/repo/list_records.rs +++ b/atrium-api/src/com/atproto/repo/list_records.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.listRecords` namespace. +pub const NSID: &str = "com.atproto.repo.listRecords"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/repo/put_record.rs b/atrium-api/src/com/atproto/repo/put_record.rs index 9eaf673..7d9c906 100644 --- a/atrium-api/src/com/atproto/repo/put_record.rs +++ b/atrium-api/src/com/atproto/repo/put_record.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.putRecord` namespace. +pub const NSID: &str = "com.atproto.repo.putRecord"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/repo/upload_blob.rs b/atrium-api/src/com/atproto/repo/upload_blob.rs index 820a97c..f27576a 100644 --- a/atrium-api/src/com/atproto/repo/upload_blob.rs +++ b/atrium-api/src/com/atproto/repo/upload_blob.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.repo.uploadBlob` namespace. +pub const NSID: &str = "com.atproto.repo.uploadBlob"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/com/atproto/server/activate_account.rs b/atrium-api/src/com/atproto/server/activate_account.rs index 70f74e0..7104e43 100644 --- a/atrium-api/src/com/atproto/server/activate_account.rs +++ b/atrium-api/src/com/atproto/server/activate_account.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.activateAccount` namespace. +pub const NSID: &str = "com.atproto.server.activateAccount"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(tag = "error", content = "message")] pub enum Error {} diff --git a/atrium-api/src/com/atproto/server/check_account_status.rs b/atrium-api/src/com/atproto/server/check_account_status.rs index 6529908..1f8787f 100644 --- a/atrium-api/src/com/atproto/server/check_account_status.rs +++ b/atrium-api/src/com/atproto/server/check_account_status.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.checkAccountStatus` namespace. +pub const NSID: &str = "com.atproto.server.checkAccountStatus"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/com/atproto/server/confirm_email.rs b/atrium-api/src/com/atproto/server/confirm_email.rs index 7a4eab9..ba7fe78 100644 --- a/atrium-api/src/com/atproto/server/confirm_email.rs +++ b/atrium-api/src/com/atproto/server/confirm_email.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.confirmEmail` namespace. +pub const NSID: &str = "com.atproto.server.confirmEmail"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/create_account.rs b/atrium-api/src/com/atproto/server/create_account.rs index 3ef585d..424fa22 100644 --- a/atrium-api/src/com/atproto/server/create_account.rs +++ b/atrium-api/src/com/atproto/server/create_account.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.createAccount` namespace. +pub const NSID: &str = "com.atproto.server.createAccount"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/create_app_password.rs b/atrium-api/src/com/atproto/server/create_app_password.rs index 7fd2a01..c676fbc 100644 --- a/atrium-api/src/com/atproto/server/create_app_password.rs +++ b/atrium-api/src/com/atproto/server/create_app_password.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.createAppPassword` namespace. +pub const NSID: &str = "com.atproto.server.createAppPassword"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/create_invite_code.rs b/atrium-api/src/com/atproto/server/create_invite_code.rs index d93038d..2e16584 100644 --- a/atrium-api/src/com/atproto/server/create_invite_code.rs +++ b/atrium-api/src/com/atproto/server/create_invite_code.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.createInviteCode` namespace. +pub const NSID: &str = "com.atproto.server.createInviteCode"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/create_invite_codes.rs b/atrium-api/src/com/atproto/server/create_invite_codes.rs index f6a2fc2..bbba52c 100644 --- a/atrium-api/src/com/atproto/server/create_invite_codes.rs +++ b/atrium-api/src/com/atproto/server/create_invite_codes.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.createInviteCodes` namespace. +pub const NSID: &str = "com.atproto.server.createInviteCodes"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/create_session.rs b/atrium-api/src/com/atproto/server/create_session.rs index c41fdba..9667c82 100644 --- a/atrium-api/src/com/atproto/server/create_session.rs +++ b/atrium-api/src/com/atproto/server/create_session.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.createSession` namespace. +pub const NSID: &str = "com.atproto.server.createSession"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/deactivate_account.rs b/atrium-api/src/com/atproto/server/deactivate_account.rs index 8f9eb4a..af7b5a0 100644 --- a/atrium-api/src/com/atproto/server/deactivate_account.rs +++ b/atrium-api/src/com/atproto/server/deactivate_account.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.deactivateAccount` namespace. +pub const NSID: &str = "com.atproto.server.deactivateAccount"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/delete_account.rs b/atrium-api/src/com/atproto/server/delete_account.rs index 27f1998..eaa4e95 100644 --- a/atrium-api/src/com/atproto/server/delete_account.rs +++ b/atrium-api/src/com/atproto/server/delete_account.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.deleteAccount` namespace. +pub const NSID: &str = "com.atproto.server.deleteAccount"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/delete_session.rs b/atrium-api/src/com/atproto/server/delete_session.rs index 153f098..fdabf82 100644 --- a/atrium-api/src/com/atproto/server/delete_session.rs +++ b/atrium-api/src/com/atproto/server/delete_session.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.deleteSession` namespace. +pub const NSID: &str = "com.atproto.server.deleteSession"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(tag = "error", content = "message")] pub enum Error {} diff --git a/atrium-api/src/com/atproto/server/describe_server.rs b/atrium-api/src/com/atproto/server/describe_server.rs index df2a971..4d20564 100644 --- a/atrium-api/src/com/atproto/server/describe_server.rs +++ b/atrium-api/src/com/atproto/server/describe_server.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.describeServer` namespace. +pub const NSID: &str = "com.atproto.server.describeServer"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/com/atproto/server/get_account_invite_codes.rs b/atrium-api/src/com/atproto/server/get_account_invite_codes.rs index 5bf28ff..0443ca8 100644 --- a/atrium-api/src/com/atproto/server/get_account_invite_codes.rs +++ b/atrium-api/src/com/atproto/server/get_account_invite_codes.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.getAccountInviteCodes` namespace. +pub const NSID: &str = "com.atproto.server.getAccountInviteCodes"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/server/get_service_auth.rs b/atrium-api/src/com/atproto/server/get_service_auth.rs index 093ac57..6bcdb66 100644 --- a/atrium-api/src/com/atproto/server/get_service_auth.rs +++ b/atrium-api/src/com/atproto/server/get_service_auth.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.getServiceAuth` namespace. +pub const NSID: &str = "com.atproto.server.getServiceAuth"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/server/get_session.rs b/atrium-api/src/com/atproto/server/get_session.rs index d5bc76b..d1453cc 100644 --- a/atrium-api/src/com/atproto/server/get_session.rs +++ b/atrium-api/src/com/atproto/server/get_session.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.getSession` namespace. +pub const NSID: &str = "com.atproto.server.getSession"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/com/atproto/server/list_app_passwords.rs b/atrium-api/src/com/atproto/server/list_app_passwords.rs index 7a4ad32..139dea6 100644 --- a/atrium-api/src/com/atproto/server/list_app_passwords.rs +++ b/atrium-api/src/com/atproto/server/list_app_passwords.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.listAppPasswords` namespace. +pub const NSID: &str = "com.atproto.server.listAppPasswords"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/com/atproto/server/refresh_session.rs b/atrium-api/src/com/atproto/server/refresh_session.rs index 7852a44..ab86037 100644 --- a/atrium-api/src/com/atproto/server/refresh_session.rs +++ b/atrium-api/src/com/atproto/server/refresh_session.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.refreshSession` namespace. +pub const NSID: &str = "com.atproto.server.refreshSession"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/com/atproto/server/request_account_delete.rs b/atrium-api/src/com/atproto/server/request_account_delete.rs index 9665cf6..0b3954b 100644 --- a/atrium-api/src/com/atproto/server/request_account_delete.rs +++ b/atrium-api/src/com/atproto/server/request_account_delete.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.requestAccountDelete` namespace. +pub const NSID: &str = "com.atproto.server.requestAccountDelete"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(tag = "error", content = "message")] pub enum Error {} diff --git a/atrium-api/src/com/atproto/server/request_email_confirmation.rs b/atrium-api/src/com/atproto/server/request_email_confirmation.rs index 1e18f83..7066095 100644 --- a/atrium-api/src/com/atproto/server/request_email_confirmation.rs +++ b/atrium-api/src/com/atproto/server/request_email_confirmation.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.requestEmailConfirmation` namespace. +pub const NSID: &str = "com.atproto.server.requestEmailConfirmation"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(tag = "error", content = "message")] pub enum Error {} diff --git a/atrium-api/src/com/atproto/server/request_email_update.rs b/atrium-api/src/com/atproto/server/request_email_update.rs index fe1f156..1f569e0 100644 --- a/atrium-api/src/com/atproto/server/request_email_update.rs +++ b/atrium-api/src/com/atproto/server/request_email_update.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.requestEmailUpdate` namespace. +pub const NSID: &str = "com.atproto.server.requestEmailUpdate"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/com/atproto/server/request_password_reset.rs b/atrium-api/src/com/atproto/server/request_password_reset.rs index f338027..661a693 100644 --- a/atrium-api/src/com/atproto/server/request_password_reset.rs +++ b/atrium-api/src/com/atproto/server/request_password_reset.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.requestPasswordReset` namespace. +pub const NSID: &str = "com.atproto.server.requestPasswordReset"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/reserve_signing_key.rs b/atrium-api/src/com/atproto/server/reserve_signing_key.rs index 54f6dff..a24787c 100644 --- a/atrium-api/src/com/atproto/server/reserve_signing_key.rs +++ b/atrium-api/src/com/atproto/server/reserve_signing_key.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.reserveSigningKey` namespace. +pub const NSID: &str = "com.atproto.server.reserveSigningKey"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/reset_password.rs b/atrium-api/src/com/atproto/server/reset_password.rs index d8f9ec6..6e5784d 100644 --- a/atrium-api/src/com/atproto/server/reset_password.rs +++ b/atrium-api/src/com/atproto/server/reset_password.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.resetPassword` namespace. +pub const NSID: &str = "com.atproto.server.resetPassword"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/revoke_app_password.rs b/atrium-api/src/com/atproto/server/revoke_app_password.rs index a869727..4c003a4 100644 --- a/atrium-api/src/com/atproto/server/revoke_app_password.rs +++ b/atrium-api/src/com/atproto/server/revoke_app_password.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.revokeAppPassword` namespace. +pub const NSID: &str = "com.atproto.server.revokeAppPassword"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/server/update_email.rs b/atrium-api/src/com/atproto/server/update_email.rs index a95edf8..966b99f 100644 --- a/atrium-api/src/com/atproto/server/update_email.rs +++ b/atrium-api/src/com/atproto/server/update_email.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.server.updateEmail` namespace. +pub const NSID: &str = "com.atproto.server.updateEmail"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/sync/get_blob.rs b/atrium-api/src/com/atproto/sync/get_blob.rs index 446727b..f3d76eb 100644 --- a/atrium-api/src/com/atproto/sync/get_blob.rs +++ b/atrium-api/src/com/atproto/sync/get_blob.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.getBlob` namespace. +pub const NSID: &str = "com.atproto.sync.getBlob"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/sync/get_blocks.rs b/atrium-api/src/com/atproto/sync/get_blocks.rs index 79507e8..a79a63b 100644 --- a/atrium-api/src/com/atproto/sync/get_blocks.rs +++ b/atrium-api/src/com/atproto/sync/get_blocks.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.getBlocks` namespace. +pub const NSID: &str = "com.atproto.sync.getBlocks"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/sync/get_checkout.rs b/atrium-api/src/com/atproto/sync/get_checkout.rs index d0db08a..a15c3b0 100644 --- a/atrium-api/src/com/atproto/sync/get_checkout.rs +++ b/atrium-api/src/com/atproto/sync/get_checkout.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.getCheckout` namespace. +pub const NSID: &str = "com.atproto.sync.getCheckout"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/sync/get_head.rs b/atrium-api/src/com/atproto/sync/get_head.rs index c449ac1..4a57501 100644 --- a/atrium-api/src/com/atproto/sync/get_head.rs +++ b/atrium-api/src/com/atproto/sync/get_head.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.getHead` namespace. +pub const NSID: &str = "com.atproto.sync.getHead"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/sync/get_latest_commit.rs b/atrium-api/src/com/atproto/sync/get_latest_commit.rs index 19c69cd..fb32d89 100644 --- a/atrium-api/src/com/atproto/sync/get_latest_commit.rs +++ b/atrium-api/src/com/atproto/sync/get_latest_commit.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.getLatestCommit` namespace. +pub const NSID: &str = "com.atproto.sync.getLatestCommit"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/sync/get_record.rs b/atrium-api/src/com/atproto/sync/get_record.rs index c8b2f03..d92bab2 100644 --- a/atrium-api/src/com/atproto/sync/get_record.rs +++ b/atrium-api/src/com/atproto/sync/get_record.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.getRecord` namespace. +pub const NSID: &str = "com.atproto.sync.getRecord"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/sync/get_repo.rs b/atrium-api/src/com/atproto/sync/get_repo.rs index 6e2431b..34b54dd 100644 --- a/atrium-api/src/com/atproto/sync/get_repo.rs +++ b/atrium-api/src/com/atproto/sync/get_repo.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.getRepo` namespace. +pub const NSID: &str = "com.atproto.sync.getRepo"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/sync/list_blobs.rs b/atrium-api/src/com/atproto/sync/list_blobs.rs index 1d85f8c..e4ae49e 100644 --- a/atrium-api/src/com/atproto/sync/list_blobs.rs +++ b/atrium-api/src/com/atproto/sync/list_blobs.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.listBlobs` namespace. +pub const NSID: &str = "com.atproto.sync.listBlobs"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/sync/list_repos.rs b/atrium-api/src/com/atproto/sync/list_repos.rs index bc545b9..39914d7 100644 --- a/atrium-api/src/com/atproto/sync/list_repos.rs +++ b/atrium-api/src/com/atproto/sync/list_repos.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.listRepos` namespace. +pub const NSID: &str = "com.atproto.sync.listRepos"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/sync/notify_of_update.rs b/atrium-api/src/com/atproto/sync/notify_of_update.rs index 05f1aea..f046b12 100644 --- a/atrium-api/src/com/atproto/sync/notify_of_update.rs +++ b/atrium-api/src/com/atproto/sync/notify_of_update.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.notifyOfUpdate` namespace. +pub const NSID: &str = "com.atproto.sync.notifyOfUpdate"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/sync/request_crawl.rs b/atrium-api/src/com/atproto/sync/request_crawl.rs index 71bb5ab..bd33a06 100644 --- a/atrium-api/src/com/atproto/sync/request_crawl.rs +++ b/atrium-api/src/com/atproto/sync/request_crawl.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.sync.requestCrawl` namespace. +pub const NSID: &str = "com.atproto.sync.requestCrawl"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/com/atproto/temp/check_signup_queue.rs b/atrium-api/src/com/atproto/temp/check_signup_queue.rs index 35cf48e..7cd8f5a 100644 --- a/atrium-api/src/com/atproto/temp/check_signup_queue.rs +++ b/atrium-api/src/com/atproto/temp/check_signup_queue.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.temp.checkSignupQueue` namespace. +pub const NSID: &str = "com.atproto.temp.checkSignupQueue"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/com/atproto/temp/fetch_labels.rs b/atrium-api/src/com/atproto/temp/fetch_labels.rs index 63ea92e..2dd2e46 100644 --- a/atrium-api/src/com/atproto/temp/fetch_labels.rs +++ b/atrium-api/src/com/atproto/temp/fetch_labels.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.temp.fetchLabels` namespace. +pub const NSID: &str = "com.atproto.temp.fetchLabels"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/com/atproto/temp/request_phone_verification.rs b/atrium-api/src/com/atproto/temp/request_phone_verification.rs index e26b937..89b54c5 100644 --- a/atrium-api/src/com/atproto/temp/request_phone_verification.rs +++ b/atrium-api/src/com/atproto/temp/request_phone_verification.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `com.atproto.temp.requestPhoneVerification` namespace. +pub const NSID: &str = "com.atproto.temp.requestPhoneVerification"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/tools/ozone/communication/create_template.rs b/atrium-api/src/tools/ozone/communication/create_template.rs index 7d0161e..9a85d8d 100644 --- a/atrium-api/src/tools/ozone/communication/create_template.rs +++ b/atrium-api/src/tools/ozone/communication/create_template.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.communication.createTemplate` namespace. +pub const NSID: &str = "tools.ozone.communication.createTemplate"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/tools/ozone/communication/delete_template.rs b/atrium-api/src/tools/ozone/communication/delete_template.rs index 4421ed7..871577d 100644 --- a/atrium-api/src/tools/ozone/communication/delete_template.rs +++ b/atrium-api/src/tools/ozone/communication/delete_template.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.communication.deleteTemplate` namespace. +pub const NSID: &str = "tools.ozone.communication.deleteTemplate"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/tools/ozone/communication/list_templates.rs b/atrium-api/src/tools/ozone/communication/list_templates.rs index 65e7259..6255543 100644 --- a/atrium-api/src/tools/ozone/communication/list_templates.rs +++ b/atrium-api/src/tools/ozone/communication/list_templates.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.communication.listTemplates` namespace. +pub const NSID: &str = "tools.ozone.communication.listTemplates"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Output { diff --git a/atrium-api/src/tools/ozone/communication/update_template.rs b/atrium-api/src/tools/ozone/communication/update_template.rs index 67a4cb3..aed5022 100644 --- a/atrium-api/src/tools/ozone/communication/update_template.rs +++ b/atrium-api/src/tools/ozone/communication/update_template.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.communication.updateTemplate` namespace. +pub const NSID: &str = "tools.ozone.communication.updateTemplate"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/tools/ozone/moderation/emit_event.rs b/atrium-api/src/tools/ozone/moderation/emit_event.rs index 78b9faf..ac6e17d 100644 --- a/atrium-api/src/tools/ozone/moderation/emit_event.rs +++ b/atrium-api/src/tools/ozone/moderation/emit_event.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.moderation.emitEvent` namespace. +pub const NSID: &str = "tools.ozone.moderation.emitEvent"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Input { diff --git a/atrium-api/src/tools/ozone/moderation/get_event.rs b/atrium-api/src/tools/ozone/moderation/get_event.rs index e668b30..32fe4ff 100644 --- a/atrium-api/src/tools/ozone/moderation/get_event.rs +++ b/atrium-api/src/tools/ozone/moderation/get_event.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.moderation.getEvent` namespace. +pub const NSID: &str = "tools.ozone.moderation.getEvent"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/tools/ozone/moderation/get_record.rs b/atrium-api/src/tools/ozone/moderation/get_record.rs index de5de48..1b6083f 100644 --- a/atrium-api/src/tools/ozone/moderation/get_record.rs +++ b/atrium-api/src/tools/ozone/moderation/get_record.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.moderation.getRecord` namespace. +pub const NSID: &str = "tools.ozone.moderation.getRecord"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/tools/ozone/moderation/get_repo.rs b/atrium-api/src/tools/ozone/moderation/get_repo.rs index fd49ab8..0d0e6b9 100644 --- a/atrium-api/src/tools/ozone/moderation/get_repo.rs +++ b/atrium-api/src/tools/ozone/moderation/get_repo.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.moderation.getRepo` namespace. +pub const NSID: &str = "tools.ozone.moderation.getRepo"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/tools/ozone/moderation/query_events.rs b/atrium-api/src/tools/ozone/moderation/query_events.rs index b75f590..02dca69 100644 --- a/atrium-api/src/tools/ozone/moderation/query_events.rs +++ b/atrium-api/src/tools/ozone/moderation/query_events.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.moderation.queryEvents` namespace. +pub const NSID: &str = "tools.ozone.moderation.queryEvents"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/tools/ozone/moderation/query_statuses.rs b/atrium-api/src/tools/ozone/moderation/query_statuses.rs index 5423231..864e605 100644 --- a/atrium-api/src/tools/ozone/moderation/query_statuses.rs +++ b/atrium-api/src/tools/ozone/moderation/query_statuses.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.moderation.queryStatuses` namespace. +pub const NSID: &str = "tools.ozone.moderation.queryStatuses"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-api/src/tools/ozone/moderation/search_repos.rs b/atrium-api/src/tools/ozone/moderation/search_repos.rs index 56a070f..3102ecc 100644 --- a/atrium-api/src/tools/ozone/moderation/search_repos.rs +++ b/atrium-api/src/tools/ozone/moderation/search_repos.rs @@ -1,5 +1,6 @@ // This file is generated by atrium-codegen. DO NOT EDIT. //!Definitions for the `tools.ozone.moderation.searchRepos` namespace. +pub const NSID: &str = "tools.ozone.moderation.searchRepos"; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct Parameters { diff --git a/atrium-xrpc-client/src/tests.rs b/atrium-xrpc-client/src/tests.rs index 4c8d9e3..5c9a979 100644 --- a/atrium-xrpc-client/src/tests.rs +++ b/atrium-xrpc-client/src/tests.rs @@ -33,7 +33,7 @@ async fn run_query( let response = client .send_xrpc::<_, (), _, _>(&XrpcRequest { method: Method::GET, - path, + nsid: path, parameters: Some(Parameters { query: "foo".into(), }), @@ -54,7 +54,7 @@ async fn run_procedure( let response = client .send_xrpc::<(), _, _, _>(&XrpcRequest { method: Method::POST, - path, + nsid: path, parameters: None, input: Some(InputDataOrBytes::Data(Input { data: "foo".into() })), encoding: Some("application/json".into()), diff --git a/atrium-xrpc/src/lib.rs b/atrium-xrpc/src/lib.rs index 10f1b97..bbc169c 100644 --- a/atrium-xrpc/src/lib.rs +++ b/atrium-xrpc/src/lib.rs @@ -57,7 +57,7 @@ mod tests { let response = xrpc .send_xrpc::<_, (), _, _>(&XrpcRequest { method: http::Method::GET, - path: "example".into(), + nsid: "example".into(), parameters: Some(params), input: None, encoding: None, @@ -200,7 +200,7 @@ mod tests { let response = xrpc .send_xrpc::<_, (), (), _>(&XrpcRequest { method: http::Method::GET, - path: "example".into(), + nsid: "example".into(), parameters: Some(params), input: None, encoding: None, @@ -279,7 +279,7 @@ mod tests { let response = xrpc .send_xrpc::<(), _, (), _>(&XrpcRequest { method: http::Method::POST, - path: "example".into(), + nsid: "example".into(), parameters: None, input: Some(InputDataOrBytes::Data(input)), encoding: None, @@ -341,7 +341,7 @@ mod tests { let response = xrpc .send_xrpc::<(), Vec, _, _>(&XrpcRequest { method: http::Method::POST, - path: "example".into(), + nsid: "example".into(), parameters: None, input: Some(InputDataOrBytes::Bytes(input)), encoding: None, diff --git a/atrium-xrpc/src/traits.rs b/atrium-xrpc/src/traits.rs index 2f7fa8e..de5ccc1 100644 --- a/atrium-xrpc/src/traits.rs +++ b/atrium-xrpc/src/traits.rs @@ -49,7 +49,7 @@ pub trait XrpcClient: HttpClient { O: DeserializeOwned + Send + Sync, E: DeserializeOwned + Send + Sync, { - let mut uri = format!("{}/xrpc/{}", self.base_uri(), request.path); + let mut uri = format!("{}/xrpc/{}", self.base_uri(), request.nsid); // Query parameters if let Some(p) = &request.parameters { serde_html_form::to_string(p).map(|qs| { @@ -64,7 +64,7 @@ pub trait XrpcClient: HttpClient { } if let Some(token) = self .authentication_token( - request.method == Method::POST && request.path == NSID_REFRESH_SESSION, + request.method == Method::POST && request.nsid == NSID_REFRESH_SESSION, ) .await { diff --git a/atrium-xrpc/src/types.rs b/atrium-xrpc/src/types.rs index 211463b..0fb2386 100644 --- a/atrium-xrpc/src/types.rs +++ b/atrium-xrpc/src/types.rs @@ -29,7 +29,7 @@ where I: Serialize, { pub method: Method, - pub path: String, + pub nsid: String, pub parameters: Option

, pub input: Option>, pub encoding: Option, diff --git a/lexicon/atrium-codegen/src/generator.rs b/lexicon/atrium-codegen/src/generator.rs index 9b4afa6..376309f 100644 --- a/lexicon/atrium-codegen/src/generator.rs +++ b/lexicon/atrium-codegen/src/generator.rs @@ -25,8 +25,13 @@ pub(crate) fn generate_schemas( let mut tokens = Vec::new(); let mut names = Vec::new(); for (name, def) in &schema.defs { - // NSID (for XrpcSubscription only) - if let LexUserType::XrpcSubscription(_) = &def { + // NSID (for XRPC Query, Procedure, Subscription) + if matches!( + def, + LexUserType::XrpcQuery(_) + | LexUserType::XrpcProcedure(_) + | LexUserType::XrpcSubscription(_) + ) { let nsid = schema.id.clone(); tokens.push(quote! { pub const NSID: &str = #nsid; diff --git a/lexicon/atrium-codegen/src/token_stream.rs b/lexicon/atrium-codegen/src/token_stream.rs index 8b85fe4..5d285ae 100644 --- a/lexicon/atrium-codegen/src/token_stream.rs +++ b/lexicon/atrium-codegen/src/token_stream.rs @@ -595,8 +595,7 @@ pub fn record_enum( let enum_name = format_ident!("{name}"); let mut variants = Vec::new(); for r#ref in refs { - let default = if is_record { "record" } else { "main" }; - let path = resolve_path(r#ref, default)?; + let path = resolve_path(r#ref, if is_record { "record" } else { "main" })?; let rename = if r#ref.starts_with('#') { format!( "{}{}", @@ -880,10 +879,11 @@ fn xrpc_impl_query(query: &LexXrpcQuery, nsid: &str) -> Result { } else { quote!(None) }; + let nsid_path = resolve_path(nsid, "NSID")?; let xrpc_call = quote! { self.xrpc.send_xrpc::<#(#generic_args),*>(&atrium_xrpc::XrpcRequest { method: http::Method::GET, - path: #nsid.into(), + nsid: #nsid_path.into(), parameters: #param_value, input: None, encoding: None, @@ -946,10 +946,11 @@ fn xrpc_impl_procedure(procedure: &LexXrpcProcedure, nsid: &str) -> Result(&atrium_xrpc::XrpcRequest { method: http::Method::POST, - path: #nsid.into(), + nsid: #nsid_path.into(), parameters: None, input: #input_value, encoding: #encoding, @@ -1040,7 +1041,11 @@ fn resolve_path(r#ref: &str, default: &str) -> Result { format!( "crate::{}::{}", namespace.split('.').map(str::to_snake_case).join("::"), - def.to_pascal_case() + if def.chars().all(char::is_uppercase) { + def.to_string() + } else { + def.to_pascal_case() + } ) })?; Ok(quote!(#path)) From 02f3dcd112e5f3f9524883169655f21a9124fb91 Mon Sep 17 00:00:00 2001 From: sugyan Date: Wed, 22 May 2024 12:16:06 +0900 Subject: [PATCH 4/6] Update AtpAgent interfaces, add tests --- atrium-api/src/agent.rs | 252 +++++++++++++++++++++++++++++----- atrium-api/src/agent/inner.rs | 51 ++++--- 2 files changed, 253 insertions(+), 50 deletions(-) diff --git a/atrium-api/src/agent.rs b/atrium-api/src/agent.rs index 2d30c00..d164dcc 100644 --- a/atrium-api/src/agent.rs +++ b/atrium-api/src/agent.rs @@ -4,6 +4,7 @@ pub mod store; use self::store::SessionStore; use crate::client::Service; +use crate::types::string::Did; use atrium_xrpc::error::Error; use atrium_xrpc::XrpcClient; use std::sync::Arc; @@ -11,6 +12,19 @@ use std::sync::Arc; /// Type alias for the [com::atproto::server::create_session::Output](crate::com::atproto::server::create_session::Output) pub type Session = crate::com::atproto::server::create_session::Output; +/// Supported proxy targets +pub enum AtprotoServiceType { + AtprotoLabeler, +} + +impl AsRef for AtprotoServiceType { + fn as_ref(&self) -> &str { + match self { + Self::AtprotoLabeler => "atproto_labeler", + } + } +} + /// An ATP "Agent". /// Manages session token lifecycles and provides convenience methods. pub struct AtpAgent @@ -87,14 +101,22 @@ where } } /// Configures the moderation services to be applied on requests. - pub fn configure_labelers_header(&self, labeler_dids: Option>) { + pub fn configure_labelers_header(&self, labeler_dids: Option>) { self.inner.configure_labelers_header(labeler_dids); } /// Configures the atproto-proxy header to be applied on requests. + pub fn configure_proxy_header(&self, did: Did, service_type: impl AsRef) { + self.inner.configure_proxy_header(did, service_type); + } + /// Configures the atproto-proxy header to be applied on requests. /// /// Returns a new client service with the proxy header configured. - pub fn api_with_proxy(&self, proxy: impl AsRef) -> Service> { - Service::new(Arc::new(self.inner.clone_with_proxy(proxy))) + pub fn api_with_proxy( + &self, + did: Did, + service_type: impl AsRef, + ) -> Service> { + Service::new(Arc::new(self.inner.clone_with_proxy(did, service_type))) } } @@ -105,27 +127,28 @@ mod tests { use crate::did_doc::{DidDocument, Service, VerificationMethod}; use async_trait::async_trait; use atrium_xrpc::HttpClient; - use http::{Request, Response}; + use http::{HeaderMap, HeaderName, HeaderValue, Request, Response}; use std::collections::HashMap; use tokio::sync::RwLock; #[cfg(target_arch = "wasm32")] use wasm_bindgen_test::wasm_bindgen_test; #[derive(Default)] - struct DummyResponses { + struct MockResponses { create_session: Option, get_session: Option, } #[derive(Default)] - struct DummyClient { - responses: DummyResponses, + struct MockClient { + responses: MockResponses, counts: Arc>>, + headers: Arc>>>, } #[cfg_attr(target_arch = "wasm32", async_trait(?Send))] #[cfg_attr(not(target_arch = "wasm32"), async_trait)] - impl HttpClient for DummyClient { + impl HttpClient for MockClient { async fn send_http( &self, request: Request>, @@ -133,6 +156,7 @@ mod tests { #[cfg(not(target_arch = "wasm32"))] tokio::time::sleep(std::time::Duration::from_micros(10)).await; + self.headers.write().await.push(request.headers().clone()); let builder = Response::builder().header(http::header::CONTENT_TYPE, "application/json"); let token = request @@ -152,19 +176,19 @@ mod tests { if let Some(nsid) = request.uri().path().strip_prefix("/xrpc/") { *self.counts.write().await.entry(nsid.into()).or_default() += 1; match nsid { - "com.atproto.server.createSession" => { + crate::com::atproto::server::create_session::NSID => { if let Some(output) = &self.responses.create_session { body.extend(serde_json::to_vec(output)?); } } - "com.atproto.server.getSession" => { + crate::com::atproto::server::get_session::NSID => { if token == Some("access") { if let Some(output) = &self.responses.get_session { body.extend(serde_json::to_vec(output)?); } } } - "com.atproto.server.refreshSession" => { + crate::com::atproto::server::refresh_session::NSID => { if token == Some("refresh") { body.extend(serde_json::to_vec( &crate::com::atproto::server::refresh_session::Output { @@ -177,6 +201,18 @@ mod tests { )?); } } + crate::com::atproto::server::describe_server::NSID => { + body.extend(serde_json::to_vec( + &crate::com::atproto::server::describe_server::Output { + available_user_domains: Vec::new(), + contact: None, + did: "did:web:example.com".parse().expect("valid"), + invite_code_required: None, + links: None, + phone_verification_required: None, + }, + )?); + } _ => {} } } @@ -195,7 +231,7 @@ mod tests { } } - impl XrpcClient for DummyClient { + impl XrpcClient for MockClient { fn base_uri(&self) -> String { "http://localhost:8080".into() } @@ -217,7 +253,7 @@ mod tests { #[tokio::test] #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)] async fn test_new() { - let agent = AtpAgent::new(DummyClient::default(), MemorySessionStore::default()); + let agent = AtpAgent::new(MockClient::default(), MemorySessionStore::default()); assert_eq!(agent.store.get_session().await, None); } @@ -227,8 +263,8 @@ mod tests { let session = session(); // success { - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { create_session: Some(crate::com::atproto::server::create_session::Output { ..session.clone() }), @@ -245,8 +281,8 @@ mod tests { } // failure with `createSession` error { - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { ..Default::default() }, ..Default::default() @@ -264,8 +300,8 @@ mod tests { #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)] async fn test_xrpc_get_session() { let session = session(); - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { get_session: Some(crate::com::atproto::server::get_session::Output { did: session.did.clone(), did_doc: session.did_doc.clone(), @@ -296,8 +332,8 @@ mod tests { async fn test_xrpc_get_session_with_refresh() { let mut session = session(); session.access_jwt = String::from("expired"); - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { get_session: Some(crate::com::atproto::server::get_session::Output { did: session.did.clone(), did_doc: session.did_doc.clone(), @@ -336,8 +372,8 @@ mod tests { async fn test_xrpc_get_session_with_duplicated_refresh() { let mut session = session(); session.access_jwt = String::from("expired"); - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { get_session: Some(crate::com::atproto::server::get_session::Output { did: session.did.clone(), did_doc: session.did_doc.clone(), @@ -389,8 +425,8 @@ mod tests { let session = session(); // success { - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { get_session: Some(crate::com::atproto::server::get_session::Output { did: session.did.clone(), did_doc: session.did_doc.clone(), @@ -416,8 +452,8 @@ mod tests { } // failure with `getSession` error { - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { ..Default::default() }, ..Default::default() @@ -436,8 +472,8 @@ mod tests { #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)] async fn test_resume_session_with_refresh() { let session = session(); - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { get_session: Some(crate::com::atproto::server::get_session::Output { did: session.did.clone(), did_doc: session.did_doc.clone(), @@ -484,8 +520,8 @@ mod tests { }; // success { - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { create_session: Some(crate::com::atproto::server::create_session::Output { did_doc: Some(did_doc.clone()), ..session.clone() @@ -507,8 +543,8 @@ mod tests { } // invalid services { - let client = DummyClient { - responses: DummyResponses { + let client = MockClient { + responses: MockResponses { create_session: Some(crate::com::atproto::server::create_session::Output { did_doc: Some(DidDocument { service: Some(vec![ @@ -544,4 +580,154 @@ mod tests { ); } } + + #[tokio::test] + #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)] + async fn test_configure_labelers_header() { + let client = MockClient::default(); + let headers = Arc::clone(&client.headers); + let agent = AtpAgent::new(client, MemorySessionStore::default()); + + agent + .api + .com + .atproto + .server + .describe_server() + .await + .expect("describe_server should be succeeded"); + assert_eq!(headers.read().await.last(), Some(&HeaderMap::new())); + + agent.configure_labelers_header(Some(vec!["did:plc:test1" + .parse() + .expect("did should be valid")])); + agent + .api + .com + .atproto + .server + .describe_server() + .await + .expect("describe_server should be succeeded"); + assert_eq!( + headers.read().await.last(), + Some(&HeaderMap::from_iter([( + HeaderName::from_static("atproto-accept-labelers"), + HeaderValue::from_static("did:plc:test1"), + )])) + ); + + agent.configure_labelers_header(Some(vec![ + "did:plc:test1".parse().expect("did should be valid"), + "did:plc:test2".parse().expect("did should be valid"), + ])); + agent + .api + .com + .atproto + .server + .describe_server() + .await + .expect("describe_server should be succeeded"); + assert_eq!( + headers.read().await.last(), + Some(&HeaderMap::from_iter([( + HeaderName::from_static("atproto-accept-labelers"), + HeaderValue::from_static("did:plc:test1, did:plc:test2"), + )])) + ); + } + + #[tokio::test] + #[cfg_attr(target_arch = "wasm32", wasm_bindgen_test)] + async fn test_configure_proxy_header() { + let client = MockClient::default(); + let headers = Arc::clone(&client.headers); + let agent = AtpAgent::new(client, MemorySessionStore::default()); + + agent + .api + .com + .atproto + .server + .describe_server() + .await + .expect("describe_server should be succeeded"); + assert_eq!(headers.read().await.last(), Some(&HeaderMap::new())); + + agent.configure_proxy_header( + "did:plc:test1".parse().expect("did should be balid"), + AtprotoServiceType::AtprotoLabeler, + ); + agent + .api + .com + .atproto + .server + .describe_server() + .await + .expect("describe_server should be succeeded"); + assert_eq!( + headers.read().await.last(), + Some(&HeaderMap::from_iter([( + HeaderName::from_static("atproto-proxy"), + HeaderValue::from_static("did:plc:test1#atproto_labeler"), + ),])) + ); + + agent.configure_proxy_header( + "did:plc:test1".parse().expect("did should be balid"), + "atproto_labeler", + ); + agent + .api + .com + .atproto + .server + .describe_server() + .await + .expect("describe_server should be succeeded"); + assert_eq!( + headers.read().await.last(), + Some(&HeaderMap::from_iter([( + HeaderName::from_static("atproto-proxy"), + HeaderValue::from_static("did:plc:test1#atproto_labeler"), + ),])) + ); + + agent + .api_with_proxy( + "did:plc:test2".parse().expect("did should be balid"), + "atproto_labeler", + ) + .com + .atproto + .server + .describe_server() + .await + .expect("describe_server should be succeeded"); + assert_eq!( + headers.read().await.last(), + Some(&HeaderMap::from_iter([( + HeaderName::from_static("atproto-proxy"), + HeaderValue::from_static("did:plc:test2#atproto_labeler"), + ),])) + ); + + agent + .api + .com + .atproto + .server + .describe_server() + .await + .expect("describe_server should be succeeded"); + assert_eq!( + headers.read().await.last(), + Some(&HeaderMap::from_iter([( + HeaderName::from_static("atproto-proxy"), + HeaderValue::from_static("did:plc:test1#atproto_labeler"), + ),])) + ); + } } diff --git a/atrium-api/src/agent/inner.rs b/atrium-api/src/agent/inner.rs index b7810d4..8bbccdb 100644 --- a/atrium-api/src/agent/inner.rs +++ b/atrium-api/src/agent/inner.rs @@ -1,5 +1,6 @@ use super::{Session, SessionStore}; use crate::did_doc::DidDocument; +use crate::types::string::Did; use async_trait::async_trait; use atrium_xrpc::error::{Error, Result, XrpcErrorKind}; use atrium_xrpc::{HttpClient, OutputDataOrBytes, XrpcClient, XrpcRequest}; @@ -10,22 +11,24 @@ use tokio::sync::{Mutex, Notify}; struct WrapperClient { store: Arc>, + proxy_header: RwLock>, labelers_header: Arc>>>, - proxy_header: Option, inner: Arc, } impl WrapperClient { - fn configure_labelers_header(&self, labelers_dids: Option>) { + fn configure_proxy_header(&self, value: String) { + self.proxy_header + .write() + .expect("failed to write proxy header") + .replace(value); + } + fn configure_labelers_header(&self, labelers_dids: Option>) { *self .labelers_header .write() - .expect("failed to write labelers header") = labelers_dids - } - fn configure_proxy_header(&mut self, did: impl AsRef) { - if did.as_ref().starts_with("did:") { - self.proxy_header = Some(did.as_ref().to_string()); - } + .expect("failed to write labelers header") = + labelers_dids.map(|dids| dids.iter().map(|did| did.as_ref().into()).collect()) } } @@ -34,7 +37,12 @@ impl Clone for WrapperClient { Self { store: self.store.clone(), labelers_header: self.labelers_header.clone(), - proxy_header: self.proxy_header.clone(), + proxy_header: RwLock::new( + self.proxy_header + .read() + .expect("failed to read proxy header") + .clone(), + ), inner: self.inner.clone(), } } @@ -76,7 +84,10 @@ where }) } async fn atproto_proxy_header(&self) -> Option { - self.proxy_header.clone() + self.proxy_header + .read() + .expect("failed to read proxy header") + .clone() } async fn atproto_accept_labelers_header(&self) -> Option> { self.labelers_header @@ -102,7 +113,7 @@ where let inner = WrapperClient { store: Arc::clone(&store), labelers_header: Arc::new(RwLock::new(None)), - proxy_header: None, + proxy_header: RwLock::new(None), inner: Arc::new(xrpc), }; Self { @@ -112,13 +123,19 @@ where notify: Arc::new(Notify::new()), } } - pub(crate) fn configure_labelers_header(&self, labeler_dids: Option>) { - self.inner.configure_labelers_header(labeler_dids); + pub(crate) fn configure_proxy_header(&self, did: Did, service_type: impl AsRef) { + self.inner + .configure_proxy_header(format!("{}#{}", did.as_ref(), service_type.as_ref())); } - pub(crate) fn clone_with_proxy(&self, did: impl AsRef) -> Self { - let mut new = self.clone(); - new.inner.configure_proxy_header(did); - new + pub(crate) fn clone_with_proxy(&self, did: Did, service_type: impl AsRef) -> Self { + let cloned = self.clone(); + cloned + .inner + .configure_proxy_header(format!("{}#{}", did.as_ref(), service_type.as_ref())); + cloned + } + pub(crate) fn configure_labelers_header(&self, labeler_dids: Option>) { + self.inner.configure_labelers_header(labeler_dids); } // Internal helper to refresh sessions // - Wraps the actual implementation to ensure only one refresh is attempted at a time. From 093f5bb5ae764caf844d224256c166f667569b32 Mon Sep 17 00:00:00 2001 From: sugyan Date: Wed, 22 May 2024 13:20:45 +0900 Subject: [PATCH 5/6] Update API, based on the latest lexicon schemas --- atrium-api/src/chat/bsky/convo/defs.rs | 9 ++++----- atrium-api/src/chat/bsky/convo/send_message.rs | 2 +- atrium-api/src/chat/bsky/convo/send_message_batch.rs | 2 +- .../src/chat/bsky/moderation/get_message_context.rs | 3 +++ 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/atrium-api/src/chat/bsky/convo/defs.rs b/atrium-api/src/chat/bsky/convo/defs.rs index 7047b8b..4cac98a 100644 --- a/atrium-api/src/chat/bsky/convo/defs.rs +++ b/atrium-api/src/chat/bsky/convo/defs.rs @@ -47,19 +47,18 @@ pub struct LogLeaveConvo { } #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] -pub struct Message { +pub struct MessageInput { #[serde(skip_serializing_if = "Option::is_none")] - pub embed: Option>, + pub embed: Option>, ///Annotations of text (mentions, URLs, hashtags, etc) #[serde(skip_serializing_if = "Option::is_none")] pub facets: Option>, - #[serde(skip_serializing_if = "Option::is_none")] - pub id: Option, pub text: String, } #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub struct MessageRef { + pub convo_id: String, pub did: crate::types::string::Did, pub message_id: String, } @@ -108,7 +107,7 @@ pub enum LogDeleteMessageMessageRefs { } #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] #[serde(tag = "$type")] -pub enum MessageEmbedRefs { +pub enum MessageInputEmbedRefs { #[serde(rename = "app.bsky.embed.record")] AppBskyEmbedRecordMain(Box), } diff --git a/atrium-api/src/chat/bsky/convo/send_message.rs b/atrium-api/src/chat/bsky/convo/send_message.rs index bf7e273..98a4237 100644 --- a/atrium-api/src/chat/bsky/convo/send_message.rs +++ b/atrium-api/src/chat/bsky/convo/send_message.rs @@ -5,7 +5,7 @@ pub const NSID: &str = "chat.bsky.convo.sendMessage"; #[serde(rename_all = "camelCase")] pub struct Input { pub convo_id: String, - pub message: crate::chat::bsky::convo::defs::Message, + pub message: crate::chat::bsky::convo::defs::MessageInput, } pub type Output = crate::chat::bsky::convo::defs::MessageView; #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] diff --git a/atrium-api/src/chat/bsky/convo/send_message_batch.rs b/atrium-api/src/chat/bsky/convo/send_message_batch.rs index c37d1e7..389c478 100644 --- a/atrium-api/src/chat/bsky/convo/send_message_batch.rs +++ b/atrium-api/src/chat/bsky/convo/send_message_batch.rs @@ -23,5 +23,5 @@ impl std::fmt::Display for Error { #[serde(rename_all = "camelCase")] pub struct BatchItem { pub convo_id: String, - pub message: crate::chat::bsky::convo::defs::Message, + pub message: crate::chat::bsky::convo::defs::MessageInput, } diff --git a/atrium-api/src/chat/bsky/moderation/get_message_context.rs b/atrium-api/src/chat/bsky/moderation/get_message_context.rs index e8b09ca..207ff79 100644 --- a/atrium-api/src/chat/bsky/moderation/get_message_context.rs +++ b/atrium-api/src/chat/bsky/moderation/get_message_context.rs @@ -8,6 +8,9 @@ pub struct Parameters { pub after: Option, #[serde(skip_serializing_if = "Option::is_none")] pub before: Option, + ///Conversation that the message is from. NOTE: this field will eventually be required. + #[serde(skip_serializing_if = "Option::is_none")] + pub convo_id: Option, pub message_id: String, } #[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] From a20f2f7947ee67decaaa854715ea26bc5cdc9fe1 Mon Sep 17 00:00:00 2001 From: sugyan Date: Wed, 22 May 2024 16:37:15 +0900 Subject: [PATCH 6/6] Add bluesky specific module --- atrium-api/src/agent.rs | 9 ++++++++- atrium-api/src/agent/bluesky.rs | 19 +++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 atrium-api/src/agent/bluesky.rs diff --git a/atrium-api/src/agent.rs b/atrium-api/src/agent.rs index d164dcc..9abfd0f 100644 --- a/atrium-api/src/agent.rs +++ b/atrium-api/src/agent.rs @@ -1,4 +1,6 @@ //! Implementation of [`AtpAgent`] and definitions of [`SessionStore`] for it. +#[cfg(feature = "bluesky")] +pub mod bluesky; mod inner; pub mod store; @@ -12,11 +14,16 @@ use std::sync::Arc; /// Type alias for the [com::atproto::server::create_session::Output](crate::com::atproto::server::create_session::Output) pub type Session = crate::com::atproto::server::create_session::Output; -/// Supported proxy targets +/// Supported proxy targets. +#[cfg(feature = "bluesky")] +pub type AtprotoServiceType = self::bluesky::AtprotoServiceType; + +#[cfg(not(feature = "bluesky"))] pub enum AtprotoServiceType { AtprotoLabeler, } +#[cfg(not(feature = "bluesky"))] impl AsRef for AtprotoServiceType { fn as_ref(&self) -> &str { match self { diff --git a/atrium-api/src/agent/bluesky.rs b/atrium-api/src/agent/bluesky.rs new file mode 100644 index 0000000..cce4dc1 --- /dev/null +++ b/atrium-api/src/agent/bluesky.rs @@ -0,0 +1,19 @@ +//! Bluesky specific constants. + +/// DID of the bluesky labeler service. +pub const CHAT_BSKY_DID: &str = "did:web:api.bsky.chat"; + +/// Supported proxy targets, which includes the bluesky specific services. +pub enum AtprotoServiceType { + AtprotoLabeler, + BskyChat, +} + +impl AsRef for AtprotoServiceType { + fn as_ref(&self) -> &str { + match self { + Self::AtprotoLabeler => "atproto_labeler", + Self::BskyChat => "bsky_chat", + } + } +}