diff --git a/src-tauri/src/cookie_manager.rs b/src-tauri/src/cookie_manager.rs index fe28eaa..e249815 100644 --- a/src-tauri/src/cookie_manager.rs +++ b/src-tauri/src/cookie_manager.rs @@ -10,7 +10,7 @@ use tauri::AppHandle; /// Chromium cookie encryption/decryption support. /// On macOS: uses "Chromium Safe Storage" key from Keychain with PBKDF2 + AES-128-CBC. /// On Linux: uses os_crypt_key file from profile directory with PBKDF2 + AES-128-CBC. -mod chrome_decrypt { +pub mod chrome_decrypt { use aes::cipher::{block_padding::Pkcs7, BlockDecryptMut, BlockEncryptMut, KeyIvInit}; use std::path::Path; diff --git a/src-tauri/src/extension_manager.rs b/src-tauri/src/extension_manager.rs index 106a1c3..6485231 100644 --- a/src-tauri/src/extension_manager.rs +++ b/src-tauri/src/extension_manager.rs @@ -1091,12 +1091,6 @@ lazy_static::lazy_static! { #[tauri::command] pub async fn list_extensions() -> Result, String> { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .list_extensions() @@ -1115,12 +1109,6 @@ pub async fn add_extension( file_name: String, file_data: Vec, ) -> Result { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .add_extension(name, file_name, file_data) @@ -1134,12 +1122,6 @@ pub async fn update_extension( file_name: Option, file_data: Option>, ) -> Result { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .update_extension(&extension_id, name, file_name, file_data) @@ -1151,12 +1133,6 @@ pub async fn delete_extension( app_handle: tauri::AppHandle, extension_id: String, ) -> Result<(), String> { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .delete_extension(&app_handle, &extension_id) @@ -1165,12 +1141,6 @@ pub async fn delete_extension( #[tauri::command] pub async fn list_extension_groups() -> Result, String> { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .list_groups() @@ -1179,12 +1149,6 @@ pub async fn list_extension_groups() -> Result, String> { #[tauri::command] pub async fn create_extension_group(name: String) -> Result { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .create_group(name) @@ -1197,12 +1161,6 @@ pub async fn update_extension_group( name: Option, extension_ids: Option>, ) -> Result { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .update_group(&group_id, name, extension_ids) @@ -1214,12 +1172,6 @@ pub async fn delete_extension_group( app_handle: tauri::AppHandle, group_id: String, ) -> Result<(), String> { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .delete_group(&app_handle, &group_id) @@ -1231,12 +1183,6 @@ pub async fn add_extension_to_group( group_id: String, extension_id: String, ) -> Result { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .add_extension_to_group(&group_id, &extension_id) @@ -1248,12 +1194,6 @@ pub async fn remove_extension_from_group( group_id: String, extension_id: String, ) -> Result { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } let mgr = EXTENSION_MANAGER.lock().unwrap(); mgr .remove_extension_from_group(&group_id, &extension_id) @@ -1265,13 +1205,6 @@ pub async fn assign_extension_group_to_profile( profile_id: String, extension_group_id: Option, ) -> Result { - if !crate::cloud_auth::CLOUD_AUTH - .has_active_paid_subscription() - .await - { - return Err("Extension management requires an active Pro subscription".to_string()); - } - // Validate compatibility if assigning a group if let Some(ref group_id) = extension_group_id { let profile_manager = crate::profile::ProfileManager::instance(); diff --git a/src/components/home-header.tsx b/src/components/home-header.tsx index b09e3fa..b2d596c 100644 --- a/src/components/home-header.tsx +++ b/src/components/home-header.tsx @@ -22,7 +22,6 @@ import { DropdownMenuTrigger, } from "./ui/dropdown-menu"; import { Input } from "./ui/input"; -import { ProBadge } from "./ui/pro-badge"; import { Tooltip, TooltipContent, TooltipTrigger } from "./ui/tooltip"; const CLICK_THRESHOLD = 5; @@ -301,15 +300,12 @@ const HomeHeader = ({ {t("header.menu.groups")} { onExtensionManagementDialogOpen(true); }} > {t("header.menu.extensions")} - {!crossOsUnlocked && } {