diff --git a/src/pages/provider_contact.rs b/src/pages/provider_contact.rs index 445f6d9..98a83d4 100644 --- a/src/pages/provider_contact.rs +++ b/src/pages/provider_contact.rs @@ -10,11 +10,6 @@ use crate::pages::utils::get_user_claims; #[cfg(feature = "ssr")] use crate::pages::utils::server_utils::create_dynamo_client; -#[cfg(feature = "ssr")] -fn into_attr_map(map: HashMap) -> HashMap { - map.into_iter().map(|(k, v)| (k, v.into())).collect() -} - #[server] async fn get_provider_contact(id: String) -> Result, ServerFnError> { use aws_sdk_dynamodb::types::AttributeValue; @@ -54,6 +49,7 @@ async fn get_provider_contact(id: String) -> Result, #[server] async fn put_provider_contact(id: String, contact_info: HashMap) -> Result<(), ServerFnError> { use aws_sdk_dynamodb::error::ProvideErrorMetadata; + use crate::pages::utils::server_utils::into_attr_map; let client = create_dynamo_client().await; diff --git a/src/pages/utils.rs b/src/pages/utils.rs index 03cf49e..898ed2f 100644 --- a/src/pages/utils.rs +++ b/src/pages/utils.rs @@ -9,7 +9,9 @@ use crate::common::UserClaims; /// dependencies cannot be compiled for WASM (nor should they be). #[cfg(feature = "ssr")] pub mod server_utils { + use std::collections::HashMap; use aws_config::SdkConfig; + use crate::common::ValueType; /// Creates an [`SdkConfig`] struct for use with AWS SDK structs. pub async fn create_aws_config() -> SdkConfig { @@ -20,6 +22,10 @@ pub mod server_utils { pub async fn create_dynamo_client() -> aws_sdk_dynamodb::Client { aws_sdk_dynamodb::Client::new(&create_aws_config().await) } + + pub fn into_attr_map(map: HashMap) -> HashMap { + map.into_iter().map(|(k, v)| (k, v.into())).collect() + } } /// Gets the current user claims. This function should only be used in an area that has