From 68778615b9bfd43c5327dfcfc88e94edf5f190b1 Mon Sep 17 00:00:00 2001 From: Ethan Girouard Date: Tue, 6 May 2025 01:24:30 +0000 Subject: [PATCH] Move extract_field to util --- src/api/upload.rs | 14 +------------- src/util/extract_field.rs | 14 ++++++++++++++ src/util/mod.rs | 1 + 3 files changed, 16 insertions(+), 13 deletions(-) create mode 100644 src/util/extract_field.rs diff --git a/src/api/upload.rs b/src/api/upload.rs index caf0cd5..24fbcc1 100644 --- a/src/api/upload.rs +++ b/src/api/upload.rs @@ -7,6 +7,7 @@ cfg_if! { if #[cfg(feature = "ssr")] { use multer::Field; use crate::util::database::get_db_conn; + use crate::util::extract_field::extract_field; use diesel::prelude::*; use log::*; use server_fn::error::NoCustomError; @@ -14,19 +15,6 @@ cfg_if! { } } -/// Extract the text from a multipart field -#[cfg(feature = "ssr")] -async fn extract_field(field: Field<'static>) -> Result { - let field = match field.text().await { - Ok(field) => field, - Err(e) => Err(ServerFnError::::ServerError(format!( - "Error reading field: {e}" - )))?, - }; - - Ok(field) -} - /// Validate the artist ids in a multipart field /// Expects a field with a comma-separated list of artist ids, and ensures each is a valid artist id in the database #[cfg(feature = "ssr")] diff --git a/src/util/extract_field.rs b/src/util/extract_field.rs new file mode 100644 index 0000000..c7ffa7a --- /dev/null +++ b/src/util/extract_field.rs @@ -0,0 +1,14 @@ +use multer::Field; +use server_fn::{error::NoCustomError, ServerFnError}; + +/// Extract the text from a multipart field +pub async fn extract_field(field: Field<'static>) -> Result { + let field = match field.text().await { + Ok(field) => field, + Err(e) => Err(ServerFnError::::ServerError(format!( + "Error reading field: {e}" + )))?, + }; + + Ok(field) +} diff --git a/src/util/mod.rs b/src/util/mod.rs index a19ea09..b1d7033 100644 --- a/src/util/mod.rs +++ b/src/util/mod.rs @@ -8,6 +8,7 @@ cfg_if! { pub mod database; pub mod auth_backend; pub mod redis; + pub mod extract_field; } }