add: user requests in js app sdk

This commit is contained in:
trisua 2025-07-19 00:44:12 -04:00
parent 884a89904e
commit 0138bf4cd4
52 changed files with 282 additions and 53 deletions

View file

@ -7,7 +7,7 @@ use crate::{
State,
};
use axum::{Extension, Json, extract::Path, response::IntoResponse};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{
apps::{AppQuota, ThirdPartyApp},
oauth::{AuthGrant, PkceChallengeMethod},

View file

@ -1,6 +1,6 @@
use std::collections::HashMap;
use axum::{extract::Path, response::IntoResponse, Extension, Json};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::{
database::connections::last_fm::LastFmConnection,
model::{

View file

@ -5,7 +5,7 @@ pub mod stripe;
use std::collections::HashMap;
use axum::{extract::Path, response::IntoResponse, Extension, Json};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use serde::Deserialize;
use tetratto_core::model::{
auth::{ConnectionService, ExternalConnectionData},

View file

@ -1,5 +1,5 @@
use axum::{response::IntoResponse, Extension, Json};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::{
database::connections::spotify::SpotifyConnection,
model::{

View file

@ -1,7 +1,7 @@
use std::{str::FromStr, time::Duration};
use axum::{http::HeaderMap, response::IntoResponse, Extension, Json};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{
auth::{Notification, User},
moderation::AuditLogEntry,

View file

@ -4,7 +4,7 @@ use axum::{
extract::{Path, Query},
response::IntoResponse,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use pathbufd::{PathBufD, pathd};
use serde::Deserialize;
use std::{

View file

@ -4,7 +4,7 @@ use crate::{
routes::api::v1::CreateIpBan,
};
use axum::{Extension, Json, extract::Path, response::IntoResponse};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{addr::RemoteAddr, auth::IpBan, permissions::FinePermission};
/// Create a new IP ban.

View file

@ -16,7 +16,7 @@ use axum::{
response::{IntoResponse, Redirect},
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use serde::Deserialize;
use tetratto_core::model::addr::RemoteAddr;
use tetratto_shared::hash::hash;

View file

@ -18,7 +18,7 @@ use axum::{
response::{IntoResponse, Redirect},
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use futures_util::{sink::SinkExt, stream::StreamExt};
use tetratto_core::{
cache::Cache,

View file

@ -9,7 +9,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{
addr::RemoteAddr,
auth::{AchievementName, FollowResult, IpBlock, Notification, UserBlock, UserFollow},

View file

@ -9,7 +9,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{auth::UserWarning, oauth, permissions::FinePermission};
/// Create a new user warning.

View file

@ -1,5 +1,5 @@
use axum::{Extension, Json, extract::Path, response::IntoResponse};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{oauth, channels::Channel, ApiReturn, Error};
use crate::{
get_user_from_token,

View file

@ -1,6 +1,6 @@
use crate::{get_user_from_token, routes::api::v1::CreateMessageReaction, State};
use axum::{Extension, Json, extract::Path, response::IntoResponse};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{channels::MessageReaction, oauth, ApiReturn, Error};
pub async fn get_request(

View file

@ -7,7 +7,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::{
cache::{Cache, redis::Commands},
model::{

View file

@ -3,7 +3,7 @@ use axum::{
extract::Path,
response::{IntoResponse, Redirect},
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{
auth::Notification,
communities::{Community, CommunityMembership},

View file

@ -3,7 +3,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{auth::AchievementName, communities::PostDraft, oauth, ApiReturn, Error};
use crate::{
get_user_from_token,

View file

@ -7,7 +7,7 @@ use crate::{
State,
};
use axum::{body::Body, extract::Path, response::IntoResponse, Extension, Json};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{
oauth,
uploads::{CustomEmoji, MediaType, MediaUpload},

View file

@ -1,5 +1,5 @@
use axum::{Extension, Json, body::Body, extract::Path, response::IntoResponse};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use pathbufd::{PathBufD, pathd};
use std::fs::exists;
use tetratto_core::model::{ApiReturn, Error, permissions::FinePermission, oauth};

View file

@ -4,7 +4,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{
addr::RemoteAddr,
auth::AchievementName,

View file

@ -4,7 +4,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{
addr::RemoteAddr,
auth::{AchievementName, IpBlock},

View file

@ -9,7 +9,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{
auth::AchievementName,
littleweb::{Domain, ServiceFsMime},

View file

@ -3,7 +3,7 @@ use axum::{
extract::{Json, Path},
Extension,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_shared::snow::Snowflake;
use crate::{
get_user_from_token,

View file

@ -3,7 +3,7 @@ use axum::{
extract::{Json, Path},
Extension,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_shared::unix_epoch_timestamp;
use crate::{
get_user_from_token,

View file

@ -5,7 +5,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{oauth, ApiReturn, Error};
pub async fn delete_request(

View file

@ -15,7 +15,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{
oauth,
products::Product,

View file

@ -5,7 +5,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{addr::RemoteAddr, oauth, reactions::Reaction, ApiReturn, Error};
pub async fn get_request(

View file

@ -1,7 +1,7 @@
use super::CreateReport;
use crate::{State, get_user_from_token};
use axum::{Extension, Json, extract::Path, response::IntoResponse};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{ApiReturn, Error, moderation::Report};
pub async fn create_request(

View file

@ -4,7 +4,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{oauth, ApiReturn, Error};
pub async fn delete_request(

View file

@ -6,7 +6,7 @@ use crate::{
State,
};
use axum::{extract::Path, response::IntoResponse, Extension, Json};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::model::{auth::AchievementName, littleweb::Service, oauth, ApiReturn, Error};
use tetratto_shared::unix_epoch_timestamp;

View file

@ -4,7 +4,7 @@ use axum::{
response::IntoResponse,
Extension, Json,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use tetratto_core::{
model::{
oauth,

View file

@ -1,6 +1,6 @@
use std::fs::exists;
use axum::{body::Body, extract::Path, response::IntoResponse, Extension, Json};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use pathbufd::PathBufD;
use crate::{get_user_from_token, routes::api::v1::UpdateUploadAlt, State};
use super::auth::images::read_image;

View file

@ -7,7 +7,7 @@ use axum::{
response::IntoResponse,
Extension,
};
use axum_extra::extract::CookieJar;
use crate::cookie::CookieJar;
use pathbufd::PathBufD;
use serde::Deserialize;
use tetratto_core::model::permissions::FinePermission;