From a0649911fe5c217ee306e06da343126f647e7af1 Mon Sep 17 00:00:00 2001
From: Sticks <sticks@teamhydra.dev>
Date: Mon, 28 Apr 2025 10:51:08 -0400
Subject: [PATCH] fix: make display_name an Option so parsing doesn't fail

---
 src-tauri/src/handlers/fansly/mod.rs | 16 ++++++++++------
 src-tauri/src/structs/mod.rs         |  2 +-
 src/lib/types.ts                     |  4 +---
 src/routes/setup/+page.svelte        |  3 +++
 4 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/src-tauri/src/handlers/fansly/mod.rs b/src-tauri/src/handlers/fansly/mod.rs
index 3c8591f..35aa447 100644
--- a/src-tauri/src/handlers/fansly/mod.rs
+++ b/src-tauri/src/handlers/fansly/mod.rs
@@ -117,15 +117,19 @@ impl Fansly {
             .await?;
 
         if !response.status().is_success() {
-            eprintln!("[sync::process::get_profile] No successful response from API. Setting error state.");
+            log::error!("[sync::process::get_profile] No successful response from API. Setting error state.");
             return Err(response.error_for_status().unwrap_err());
         } else {
-            println!("[sync::process::get_profile] Got successful response from API.");
+            log::info!("[sync::process::get_profile] Successfully fetched profile data.");
         }
 
         let profile = response
             .json::<FanslyBaseResponse<FanslyAccountResponse>>()
             .await?;
+
+        // Show the profile data
+        log::info!("[sync::process::get_profile] Profile data: {:?}", profile);
+
         Ok(profile)
     }
 
@@ -157,12 +161,12 @@ impl Fansly {
         let response = self.client.get(url).headers(headers).send().await?;
 
         if !response.status().is_success() {
-            eprintln!("[sync::process::fetch_followers] No successful response from API. Setting error state.");
+            log::error!("[sync::process::fetch_followers] No successful response from API. Setting error state.");
             return Err(response.error_for_status().unwrap_err());
         }
 
         let followers: FanslyBaseResponseList<FanslyFollowersResponse> = response.json().await?;
-        println!(
+        log::info!(
             "[sync::process::fetch_followers] Got {} followers from API.",
             followers.response.len()
         );
@@ -423,7 +427,7 @@ impl Fansly {
             .await;
 
             // Every 10 requests, sleep for a bit to avoid rate limiting
-            if total_requests % 10 == 0 {
+            if total_requests % 50 == 0 {
                 tokio::time::sleep(tokio::time::Duration::from_secs(5)).await;
             }
 
@@ -463,7 +467,7 @@ impl Fansly {
             .await;
 
             // Every 10 requests, sleep for a bit to avoid rate limiting
-            if total_requests % 10 == 0 {
+            if total_requests % 50 == 0 {
                 tokio::time::sleep(tokio::time::Duration::from_secs(5)).await;
             }
 
diff --git a/src-tauri/src/structs/mod.rs b/src-tauri/src/structs/mod.rs
index 7bdabb9..881bc6e 100644
--- a/src-tauri/src/structs/mod.rs
+++ b/src-tauri/src/structs/mod.rs
@@ -89,7 +89,7 @@ pub struct Account {
     pub id: String,
     pub email: String,
     pub username: String,
-    pub display_name: String,
+    pub display_name: Option<String>,
     pub flags: i64,
     pub version: i64,
     pub created_at: i64,
diff --git a/src/lib/types.ts b/src/lib/types.ts
index 3406052..86ef1b5 100644
--- a/src/lib/types.ts
+++ b/src/lib/types.ts
@@ -53,7 +53,7 @@ export interface AccountInfoResponse {
 export interface AccountInfo {
 	id: string;
 	username: string;
-	displayName: string;
+	displayName: string | null;
 	flags: number;
 	version: number;
 	createdAt: number;
@@ -76,8 +76,6 @@ export interface AccountInfo {
 	banner: Avatar;
 	postLikes: number;
 	streaming: Streaming;
-	subscriptionTiers: SubscriptionTier[];
-	profileAccess: boolean;
 }
 
 export interface SubscriptionTier {
diff --git a/src/routes/setup/+page.svelte b/src/routes/setup/+page.svelte
index 31c506a..fa0beb4 100644
--- a/src/routes/setup/+page.svelte
+++ b/src/routes/setup/+page.svelte
@@ -54,6 +54,9 @@
 				unknown
 			];
 			if (err || !me?.success) {
+				if (err) {
+					console.error('Error fetching account info:', err);
+				}
 				validationErrors.fanslyToken =
 					'Authentication failed. Please check your token and try again.';
 				step = 1;