diff --git a/apps/desktop/src-tauri/src/lib.rs b/apps/desktop/src-tauri/src/lib.rs index 2d4ef75ac..3d75a7c2e 100644 --- a/apps/desktop/src-tauri/src/lib.rs +++ b/apps/desktop/src-tauri/src/lib.rs @@ -240,9 +240,16 @@ pub async fn main() { let config = app_clone.db_get_config(user_id).await; if let Ok(Some(ref config)) = config { - if !config.general.telemetry_consent { + if true { let _ = sentry_client.close(Some(std::time::Duration::from_secs(1))); + } else { + tauri_plugin_sentry::sentry::configure_scope(|scope| { + scope.set_user(Some(tauri_plugin_sentry::sentry::User { + id: Some(user_id.clone()), + ..Default::default() + })); + }); } { @@ -255,13 +262,6 @@ pub async fn main() { } } } - - tauri_plugin_sentry::sentry::configure_scope(|scope| { - scope.set_user(Some(tauri_plugin_sentry::sentry::User { - id: Some(user_id.clone()), - ..Default::default() - })); - }); } } }); diff --git a/apps/desktop/src-tauri/tauri.conf.json b/apps/desktop/src-tauri/tauri.conf.json index 19c43e728..f69eefb26 100644 --- a/apps/desktop/src-tauri/tauri.conf.json +++ b/apps/desktop/src-tauri/tauri.conf.json @@ -67,7 +67,7 @@ }, "resources": { "dlls/*": "./", - "resources/llm.gguf": "llm.gguf" + "resources/": "" } }, "plugins": { diff --git a/apps/desktop/src/components/left-sidebar/top-area/settings-button.tsx b/apps/desktop/src/components/left-sidebar/top-area/settings-button.tsx index e3dd7bd7d..30268e725 100644 --- a/apps/desktop/src/components/left-sidebar/top-area/settings-button.tsx +++ b/apps/desktop/src/components/left-sidebar/top-area/settings-button.tsx @@ -1,15 +1,13 @@ import { Trans } from "@lingui/react/macro"; import { useQuery } from "@tanstack/react-query"; -import type { LinkProps } from "@tanstack/react-router"; import { getName, getVersion } from "@tauri-apps/api/app"; import { check } from "@tauri-apps/plugin-updater"; -import { CastleIcon, CogIcon, ShieldIcon } from "lucide-react"; +import { CogIcon } from "lucide-react"; import { useState } from "react"; import Shortcut from "@/components/shortcut"; import { createUpdateToast } from "@/components/toast/ota"; import { useHypr } from "@/contexts"; -import { useLicense } from "@/hooks/use-license"; import { openURL } from "@/utils/shell"; import { commands as windowsCommands } from "@hypr/plugin-windows"; import { Button } from "@hypr/ui/components/ui/button"; @@ -20,15 +18,11 @@ import { DropdownMenuTrigger, } from "@hypr/ui/components/ui/dropdown-menu"; import { toast } from "@hypr/ui/components/ui/toast"; -import { cn } from "@hypr/ui/lib/utils"; export function SettingsButton() { const [open, setOpen] = useState(false); const { userId } = useHypr(); - const { getLicense } = useLicense(); - const isPro = !!getLicense.data?.valid; - const versionQuery = useQuery({ queryKey: ["appVersion"], queryFn: async () => { @@ -52,21 +46,6 @@ export function SettingsButton() { }); }; - const handleClickPlans = () => { - setOpen(false); - - windowsCommands.windowShow({ type: "settings" }).then(() => { - const params = { to: "/app/settings", search: { tab: "billing" } } as const satisfies LinkProps; - - setTimeout(() => { - windowsCommands.windowEmitNavigate({ type: "settings" }, { - path: params.to, - search: params.search, - }); - }, 500); - }); - }; - const handleClickChangelog = async () => { setOpen(false); try { @@ -124,7 +103,7 @@ export function SettingsButton() { - + {/* */}
); } - -function DropdownHeader({ - isPro, - handleClick, -}: { - isPro: boolean; - handleClick: () => void; -}) { - return ( -
-
-
-
- {isPro ? : } -
-
- {isPro ? "Pro Plan" : "Free Plan"} -
-
- {isPro ? "Full features" : "Basic features"} -
-
-
-
- ); -} diff --git a/apps/desktop/src/components/settings/components/ai/llm-local-view.tsx b/apps/desktop/src/components/settings/components/ai/llm-local-view.tsx index ba1346ed8..0aeca144d 100644 --- a/apps/desktop/src/components/settings/components/ai/llm-local-view.tsx +++ b/apps/desktop/src/components/settings/components/ai/llm-local-view.tsx @@ -1,13 +1,10 @@ import { LmStudio } from "@lobehub/icons"; import { useQuery, useQueryClient } from "@tanstack/react-query"; import { openPath } from "@tauri-apps/plugin-opener"; -import { open } from "@tauri-apps/plugin-shell"; -import { CloudIcon, DownloadIcon, FolderIcon } from "lucide-react"; +import { DownloadIcon, FolderIcon } from "lucide-react"; import { useEffect } from "react"; -import { useLicense } from "@/hooks/use-license"; import { commands as localLlmCommands, type CustomModelInfo, type ModelSelection } from "@hypr/plugin-local-llm"; -import { commands as windowsCommands } from "@hypr/plugin-windows"; import { Button } from "@hypr/ui/components/ui/button"; import { cn } from "@hypr/ui/lib/utils"; import { type LLMModel, SharedLLMProps } from "./shared"; @@ -26,11 +23,8 @@ export function LLMLocalView({ handleModelDownload, configureCustomEndpoint, setOpenAccordion, - hyprCloudEnabled, setHyprCloudEnabledMutation, }: ExtendedSharedLLMProps) { - const { getLicense } = useLicense(); - const isPro = !!getLicense.data?.valid; const queryClient = useQueryClient(); const currentModelSelection = useQuery({ @@ -89,99 +83,12 @@ export function LLMLocalView({ localLlmCommands.restartServer(); }; - const handleHyprCloudSelection = () => { - setSelectedLLMModel("hyprcloud"); - configureCustomEndpoint({ - provider: "hyprcloud", - api_base: "https://pro.hyprnote.com", - api_key: "", - model: "", - }); - setOpenAccordion(null); - }; - - const isHyprCloudSelected = hyprCloudEnabled.data; const buttonResetClass = "appearance-none border-0 outline-0 bg-transparent p-0 m-0 font-inherit text-left w-full"; return (
-
-
-
- - - -
- - {!isPro && ( - - )} -
-
- -
-
-
-
-
- or use local models -
-
- {llmModelsState.map((model) => ( - - - Learn more about AI autonomy - - -
- - {(!customLLMEnabled.data || hyprCloudEnabled.data) - ? Only works with Custom Endpoints. Please configure one of the above first. - : Control how autonomous the AI enhancement should be.} - - -
-
-
- {[1, 2, 3, 4].map((level) => ( - - ))} -
-
- -
-
- {specificityLevels[field.value as keyof typeof specificityLevels]?.description - || specificityLevels[3].description} -
-
-
-
- - - )} - /> -
- -
-
- - )} - - ); + return ; } diff --git a/apps/desktop/src/components/settings/views/ai-stt.tsx b/apps/desktop/src/components/settings/views/ai-stt.tsx index fe6e3c9ee..023965ad6 100644 --- a/apps/desktop/src/components/settings/views/ai-stt.tsx +++ b/apps/desktop/src/components/settings/views/ai-stt.tsx @@ -1,20 +1,13 @@ -import { Trans } from "@lingui/react/macro"; import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; -import { useEffect, useState } from "react"; +import { useState } from "react"; -import { useHypr } from "@/contexts"; -import { commands as analyticsCommands } from "@hypr/plugin-analytics"; import { commands as localSttCommands } from "@hypr/plugin-local-stt"; -import { Tabs, TabsContent, TabsList, TabsTrigger } from "@hypr/ui/components/ui/tabs"; import { showSttModelDownloadToast } from "../../toast/shared"; import { SharedSTTProps, STTModel } from "../components/ai/shared"; import { STTViewLocal } from "../components/ai/stt-view-local"; -import { STTViewRemote } from "../components/ai/stt-view-remote"; export default function SttAI() { const queryClient = useQueryClient(); - const [activeTab, setActiveTab] = useState<"default" | "custom">("default"); - const { userId } = useHypr(); const providerQuery = useQuery({ queryKey: ["stt-provider"], queryFn: () => localSttCommands.getProvider(), @@ -37,27 +30,7 @@ export default function SttAI() { const provider = providerQuery.data ?? "Local"; - useEffect(() => { - if (provider === "Custom") { - setActiveTab("custom"); - } else { - setActiveTab("default"); - } - }, [provider]); - const setProviderToLocal = () => setProviderMutation.mutate("Local"); - const setProviderToCustom = async () => { - setProviderMutation.mutate("Custom"); - - if (userId) { - await analyticsCommands.setProperties({ - distinct_id: userId, - set: { - stt: "custom", - }, - }); - } - }; const [isWerModalOpen, setIsWerModalOpen] = useState(false); const [selectedSTTModel, setSelectedSTTModel] = useState("QuantizedTiny"); @@ -105,30 +78,7 @@ export default function SttAI() { setProviderToLocal, }; - return ( -
- setActiveTab(value as "default" | "custom")} - className="w-full" - > - - - Default - - - Custom - - - - - - - - - -
- ); + return ; } const initialSttModels: STTModel[] = [ diff --git a/apps/desktop/src/components/settings/views/general.tsx b/apps/desktop/src/components/settings/views/general.tsx index adcf57c11..fa6bcffc2 100644 --- a/apps/desktop/src/components/settings/views/general.tsx +++ b/apps/desktop/src/components/settings/views/general.tsx @@ -236,36 +236,6 @@ export default function General() { )} /> - ( - -
- - Share usage data - - - - Help us improve Hyprnote by sharing anonymous usage data. - - - Restart Hyprnote for the change to take effect. - - -
- - - - -
- )} - /> - cu msgid "Chat with this meeting" msgstr "Chat with this meeting" -#: src/components/left-sidebar/top-area/settings-button.tsx:147 +#: src/components/left-sidebar/top-area/settings-button.tsx:126 msgid "Check Updates" msgstr "Check Updates" @@ -462,8 +462,8 @@ msgid "Continue" msgstr "Continue" #: src/components/settings/views/ai-llm.tsx:723 -msgid "Control how autonomous the AI enhancement should be." -msgstr "Control how autonomous the AI enhancement should be." +#~ msgid "Control how autonomous the AI enhancement should be." +#~ msgstr "Control how autonomous the AI enhancement should be." #: src/components/editor-area/note-header/chips/participants-chip.tsx:563 #: src/routes/app.human.$id.tsx:535 @@ -484,21 +484,21 @@ msgstr "Create your first template to get started" #: src/components/settings/views/ai-llm.tsx:671 #: src/components/settings/views/ai-stt.tsx:120 -msgid "Custom" -msgstr "Custom" +#~ msgid "Custom" +#~ msgstr "Custom" #: src/components/settings/components/ai/stt-view-remote.tsx:102 msgid "Custom Speech-to-Text endpoint" msgstr "Custom Speech-to-Text endpoint" -#: src/components/settings/views/general.tsx:425 +#: src/components/settings/views/general.tsx:395 msgid "Custom Vocabulary" msgstr "Custom Vocabulary" #: src/components/settings/views/ai-llm.tsx:668 #: src/components/settings/views/ai-stt.tsx:117 -msgid "Default" -msgstr "Default" +#~ msgid "Default" +#~ msgstr "Default" #: src/components/left-sidebar/notes-list.tsx:336 #: src/components/settings/views/team.tsx:165 @@ -608,8 +608,8 @@ msgstr "Finish Onboarding" msgid "Full name" msgstr "Full name" -#: src/routes/app.settings.tsx:45 -#: src/routes/app.settings.tsx:118 +#: src/routes/app.settings.tsx:44 +#: src/routes/app.settings.tsx:117 msgid "General" msgstr "General" @@ -643,8 +643,8 @@ msgid "Grant both permissions to continue" msgstr "Grant both permissions to continue" #: src/components/settings/views/help-support.tsx:33 -#: src/routes/app.settings.tsx:65 -#: src/routes/app.settings.tsx:138 +#: src/routes/app.settings.tsx:64 +#: src/routes/app.settings.tsx:137 msgid "Help & Support" msgstr "Help & Support" @@ -668,13 +668,13 @@ msgid "Important Q&As" msgstr "Important Q&As" #: src/components/settings/views/integrations.tsx:124 -#: src/routes/app.settings.tsx:59 -#: src/routes/app.settings.tsx:132 +#: src/routes/app.settings.tsx:58 +#: src/routes/app.settings.tsx:131 msgid "Integrations" msgstr "Integrations" -#: src/routes/app.settings.tsx:47 -#: src/routes/app.settings.tsx:120 +#: src/routes/app.settings.tsx:46 +#: src/routes/app.settings.tsx:119 msgid "Intelligence" msgstr "Intelligence" @@ -698,7 +698,7 @@ msgstr "Job title" msgid "Join meeting" msgstr "Join meeting" -#: src/components/settings/views/general.tsx:279 +#: src/components/settings/views/general.tsx:249 msgid "Language for AI-generated summaries" msgstr "Language for AI-generated summaries" @@ -707,8 +707,8 @@ msgid "Learn how to use Hyprnote" msgstr "Learn how to use Hyprnote" #: src/components/settings/views/ai-llm.tsx:716 -msgid "Learn more about AI autonomy" -msgstr "Learn more about AI autonomy" +#~ msgid "Learn more about AI autonomy" +#~ msgstr "Learn more about AI autonomy" #: src/components/settings/views/templates.tsx:306 msgid "Learn more about templates" @@ -746,8 +746,8 @@ msgstr "Logs" msgid "Make it public" msgstr "Make it public" -#: src/routes/app.settings.tsx:63 -#: src/routes/app.settings.tsx:136 +#: src/routes/app.settings.tsx:62 +#: src/routes/app.settings.tsx:135 msgid "MCP" msgstr "MCP" @@ -784,7 +784,7 @@ msgstr "Model Name" msgid "More integrations coming soon..." msgstr "More integrations coming soon..." -#: src/components/left-sidebar/top-area/settings-button.tsx:141 +#: src/components/left-sidebar/top-area/settings-button.tsx:120 msgid "My Profile" msgstr "My Profile" @@ -849,8 +849,8 @@ msgstr "No upcoming events with this contact" msgid "None (disabled)" msgstr "None (disabled)" -#: src/routes/app.settings.tsx:53 -#: src/routes/app.settings.tsx:126 +#: src/routes/app.settings.tsx:52 +#: src/routes/app.settings.tsx:125 msgid "Notifications" msgstr "Notifications" @@ -867,8 +867,8 @@ msgid "Only starts at the background for notification purposes." msgstr "Only starts at the background for notification purposes." #: src/components/settings/views/ai-llm.tsx:722 -msgid "Only works with Custom Endpoints. Please configure one of the above first." -msgstr "Only works with Custom Endpoints. Please configure one of the above first." +#~ msgid "Only works with Custom Endpoints. Please configure one of the above first." +#~ msgstr "Only works with Custom Endpoints. Please configure one of the above first." #: src/components/left-sidebar/top-area/finder-button.tsx:26 msgid "Open finder view" @@ -1021,7 +1021,7 @@ msgstr "Select Calendars" msgid "Select how you want to process your meeting notes" msgstr "Select how you want to process your meeting notes" -#: src/components/settings/views/general.tsx:348 +#: src/components/settings/views/general.tsx:318 msgid "Select languages you speak for better transcription" msgstr "Select languages you speak for better transcription" @@ -1045,13 +1045,13 @@ msgstr "Send invite" msgid "Set up Your AI Provider" msgstr "Set up Your AI Provider" -#: src/components/left-sidebar/top-area/settings-button.tsx:134 +#: src/components/left-sidebar/top-area/settings-button.tsx:113 msgid "Settings" msgstr "Settings" #: src/components/settings/views/general.tsx:246 -msgid "Share usage data" -msgstr "Share usage data" +#~ msgid "Share usage data" +#~ msgstr "Share usage data" #: src/components/right-panel/components/chat/empty-chat-state.tsx:73 msgid "Shorten summary" @@ -1069,12 +1069,12 @@ msgstr "Show notifications when you join a meeting." msgid "Some downloads failed, but you can continue" msgstr "Some downloads failed, but you can continue" -#: src/routes/app.settings.tsx:57 -#: src/routes/app.settings.tsx:130 +#: src/routes/app.settings.tsx:56 +#: src/routes/app.settings.tsx:129 msgid "Sound" msgstr "Sound" -#: src/components/settings/views/general.tsx:345 +#: src/components/settings/views/general.tsx:315 msgid "Spoken languages" msgstr "Spoken languages" @@ -1094,7 +1094,7 @@ msgstr "Stop" msgid "Suggest new features and improvements" msgstr "Suggest new features and improvements" -#: src/components/settings/views/general.tsx:276 +#: src/components/settings/views/general.tsx:246 msgid "Summary language" msgstr "Summary language" @@ -1111,7 +1111,7 @@ msgstr "System Instruction" msgid "Tags" msgstr "Tags" -#: src/components/left-sidebar/top-area/settings-button.tsx:153 +#: src/components/left-sidebar/top-area/settings-button.tsx:132 msgid "Talk to Founders" msgstr "Talk to Founders" @@ -1123,8 +1123,8 @@ msgstr "Team management features are currently under development and will be ava msgid "Teamspace" msgstr "Teamspace" -#: src/routes/app.settings.tsx:55 -#: src/routes/app.settings.tsx:128 +#: src/routes/app.settings.tsx:54 +#: src/routes/app.settings.tsx:127 msgid "Templates" msgstr "Templates" @@ -1168,8 +1168,8 @@ msgstr "Toggle left sidebar" msgid "Toggle transcript panel" msgstr "Toggle transcript panel" -#: src/routes/app.settings.tsx:49 -#: src/routes/app.settings.tsx:122 +#: src/routes/app.settings.tsx:48 +#: src/routes/app.settings.tsx:121 msgid "Transcription" msgstr "Transcription" diff --git a/apps/desktop/src/locales/ko/messages.po b/apps/desktop/src/locales/ko/messages.po index 7fb3d5b43..c87a873c1 100644 --- a/apps/desktop/src/locales/ko/messages.po +++ b/apps/desktop/src/locales/ko/messages.po @@ -14,7 +14,7 @@ msgstr "" "Plural-Forms: \n" #. js-lingui-explicit-id -#: src/components/settings/views/general.tsx:445 +#: src/components/settings/views/general.tsx:415 msgid "Type terms separated by commas (e.g., Blitz Meeting, PaC Squad)" msgstr "" @@ -275,7 +275,7 @@ msgstr "" msgid "Add more quotes" msgstr "" -#: src/components/settings/views/general.tsx:428 +#: src/components/settings/views/general.tsx:398 msgid "Add specific terms or jargon for improved transcription accuracy" msgstr "" @@ -337,8 +337,8 @@ msgid "Audio Permissions" msgstr "" #: src/components/settings/views/ai-llm.tsx:702 -msgid "Autonomy Selector" -msgstr "" +#~ msgid "Autonomy Selector" +#~ msgstr "" #: src/components/welcome-modal/index.tsx:351 msgid "Back" @@ -353,8 +353,8 @@ msgstr "" msgid "Base URL" msgstr "" -#: src/routes/app.settings.tsx:61 -#: src/routes/app.settings.tsx:134 +#: src/routes/app.settings.tsx:60 +#: src/routes/app.settings.tsx:133 msgid "Billing & License" msgstr "" @@ -363,8 +363,8 @@ msgstr "" msgid "Built-in Templates" msgstr "" -#: src/routes/app.settings.tsx:51 -#: src/routes/app.settings.tsx:124 +#: src/routes/app.settings.tsx:50 +#: src/routes/app.settings.tsx:123 msgid "Calendar" msgstr "" @@ -392,7 +392,7 @@ msgstr "" msgid "Chat with this meeting" msgstr "" -#: src/components/left-sidebar/top-area/settings-button.tsx:147 +#: src/components/left-sidebar/top-area/settings-button.tsx:126 msgid "Check Updates" msgstr "" @@ -462,8 +462,8 @@ msgid "Continue" msgstr "" #: src/components/settings/views/ai-llm.tsx:723 -msgid "Control how autonomous the AI enhancement should be." -msgstr "" +#~ msgid "Control how autonomous the AI enhancement should be." +#~ msgstr "" #: src/components/editor-area/note-header/chips/participants-chip.tsx:563 #: src/routes/app.human.$id.tsx:535 @@ -484,21 +484,21 @@ msgstr "" #: src/components/settings/views/ai-llm.tsx:671 #: src/components/settings/views/ai-stt.tsx:120 -msgid "Custom" -msgstr "" +#~ msgid "Custom" +#~ msgstr "" #: src/components/settings/components/ai/stt-view-remote.tsx:102 msgid "Custom Speech-to-Text endpoint" msgstr "" -#: src/components/settings/views/general.tsx:425 +#: src/components/settings/views/general.tsx:395 msgid "Custom Vocabulary" msgstr "" #: src/components/settings/views/ai-llm.tsx:668 #: src/components/settings/views/ai-stt.tsx:117 -msgid "Default" -msgstr "" +#~ msgid "Default" +#~ msgstr "" #: src/components/left-sidebar/notes-list.tsx:336 #: src/components/settings/views/team.tsx:165 @@ -603,8 +603,8 @@ msgstr "" msgid "Full name" msgstr "" -#: src/routes/app.settings.tsx:45 -#: src/routes/app.settings.tsx:118 +#: src/routes/app.settings.tsx:44 +#: src/routes/app.settings.tsx:117 msgid "General" msgstr "" @@ -638,8 +638,8 @@ msgid "Grant both permissions to continue" msgstr "" #: src/components/settings/views/help-support.tsx:33 -#: src/routes/app.settings.tsx:65 -#: src/routes/app.settings.tsx:138 +#: src/routes/app.settings.tsx:64 +#: src/routes/app.settings.tsx:137 msgid "Help & Support" msgstr "" @@ -663,13 +663,13 @@ msgid "Important Q&As" msgstr "" #: src/components/settings/views/integrations.tsx:124 -#: src/routes/app.settings.tsx:59 -#: src/routes/app.settings.tsx:132 +#: src/routes/app.settings.tsx:58 +#: src/routes/app.settings.tsx:131 msgid "Integrations" msgstr "" -#: src/routes/app.settings.tsx:47 -#: src/routes/app.settings.tsx:120 +#: src/routes/app.settings.tsx:46 +#: src/routes/app.settings.tsx:119 msgid "Intelligence" msgstr "" @@ -693,7 +693,7 @@ msgstr "" msgid "Join meeting" msgstr "" -#: src/components/settings/views/general.tsx:279 +#: src/components/settings/views/general.tsx:249 msgid "Language for AI-generated summaries" msgstr "" @@ -702,8 +702,8 @@ msgid "Learn how to use Hyprnote" msgstr "" #: src/components/settings/views/ai-llm.tsx:716 -msgid "Learn more about AI autonomy" -msgstr "" +#~ msgid "Learn more about AI autonomy" +#~ msgstr "" #: src/components/settings/views/templates.tsx:306 msgid "Learn more about templates" @@ -741,8 +741,8 @@ msgstr "" msgid "Make it public" msgstr "" -#: src/routes/app.settings.tsx:63 -#: src/routes/app.settings.tsx:136 +#: src/routes/app.settings.tsx:62 +#: src/routes/app.settings.tsx:135 msgid "MCP" msgstr "" @@ -779,7 +779,7 @@ msgstr "" msgid "More integrations coming soon..." msgstr "" -#: src/components/left-sidebar/top-area/settings-button.tsx:141 +#: src/components/left-sidebar/top-area/settings-button.tsx:120 msgid "My Profile" msgstr "" @@ -844,8 +844,8 @@ msgstr "" msgid "None (disabled)" msgstr "" -#: src/routes/app.settings.tsx:53 -#: src/routes/app.settings.tsx:126 +#: src/routes/app.settings.tsx:52 +#: src/routes/app.settings.tsx:125 msgid "Notifications" msgstr "" @@ -862,8 +862,8 @@ msgid "Only starts at the background for notification purposes." msgstr "" #: src/components/settings/views/ai-llm.tsx:722 -msgid "Only works with Custom Endpoints. Please configure one of the above first." -msgstr "" +#~ msgid "Only works with Custom Endpoints. Please configure one of the above first." +#~ msgstr "" #: src/components/left-sidebar/top-area/finder-button.tsx:26 msgid "Open finder view" @@ -1016,7 +1016,7 @@ msgstr "" msgid "Select how you want to process your meeting notes" msgstr "" -#: src/components/settings/views/general.tsx:348 +#: src/components/settings/views/general.tsx:318 msgid "Select languages you speak for better transcription" msgstr "" @@ -1040,13 +1040,13 @@ msgstr "" msgid "Set up Your AI Provider" msgstr "" -#: src/components/left-sidebar/top-area/settings-button.tsx:134 +#: src/components/left-sidebar/top-area/settings-button.tsx:113 msgid "Settings" msgstr "" #: src/components/settings/views/general.tsx:246 -msgid "Share usage data" -msgstr "" +#~ msgid "Share usage data" +#~ msgstr "" #: src/components/right-panel/components/chat/empty-chat-state.tsx:73 msgid "Shorten summary" @@ -1064,12 +1064,12 @@ msgstr "" msgid "Some downloads failed, but you can continue" msgstr "" -#: src/routes/app.settings.tsx:57 -#: src/routes/app.settings.tsx:130 +#: src/routes/app.settings.tsx:56 +#: src/routes/app.settings.tsx:129 msgid "Sound" msgstr "" -#: src/components/settings/views/general.tsx:345 +#: src/components/settings/views/general.tsx:315 msgid "Spoken languages" msgstr "" @@ -1089,7 +1089,7 @@ msgstr "" msgid "Suggest new features and improvements" msgstr "" -#: src/components/settings/views/general.tsx:276 +#: src/components/settings/views/general.tsx:246 msgid "Summary language" msgstr "" @@ -1106,7 +1106,7 @@ msgstr "" msgid "Tags" msgstr "" -#: src/components/left-sidebar/top-area/settings-button.tsx:153 +#: src/components/left-sidebar/top-area/settings-button.tsx:132 msgid "Talk to Founders" msgstr "" @@ -1118,8 +1118,8 @@ msgstr "" msgid "Teamspace" msgstr "" -#: src/routes/app.settings.tsx:55 -#: src/routes/app.settings.tsx:128 +#: src/routes/app.settings.tsx:54 +#: src/routes/app.settings.tsx:127 msgid "Templates" msgstr "" @@ -1163,8 +1163,8 @@ msgstr "" msgid "Toggle transcript panel" msgstr "" -#: src/routes/app.settings.tsx:49 -#: src/routes/app.settings.tsx:122 +#: src/routes/app.settings.tsx:48 +#: src/routes/app.settings.tsx:121 msgid "Transcription" msgstr "" diff --git a/apps/desktop/src/routes/app.settings.tsx b/apps/desktop/src/routes/app.settings.tsx index 17e245352..aacf7e8d7 100644 --- a/apps/desktop/src/routes/app.settings.tsx +++ b/apps/desktop/src/routes/app.settings.tsx @@ -8,12 +8,11 @@ import { type Tab, TABS } from "@/components/settings/components/types"; import { AILLM, AISTT, - Billing, Calendar, General, HelpSupport, Integrations, - MCP, + // MCP, Notifications, Sound, TemplatesView, @@ -168,11 +167,6 @@ function Component() {
- handleClickTab("billing")} - /> } {search.tab === "templates" && } {search.tab === "integrations" && } - {search.tab === "mcp" && } - {search.tab === "billing" && } {search.tab === "help-support" && }
diff --git a/crates/am/src/model.rs b/crates/am/src/model.rs index 02860150e..8dde0999d 100644 --- a/crates/am/src/model.rs +++ b/crates/am/src/model.rs @@ -58,12 +58,15 @@ impl AmModel { &self, base_dir: impl AsRef, ) -> Result { + let tar_path = base_dir.as_ref().join(format!("{}.tar", self.model_dir())); let model_path = base_dir.as_ref().join(self.model_dir()); - if !model_path.exists() { - return Ok(false); + + // Due to CoreML compilation issue, we can only embed tar file for now + if !model_path.exists() && tar_path.exists() { + let _ = self.tar_verify_and_unpack(&tar_path, &model_path); } - if !model_path.is_dir() { + if !model_path.exists() || !model_path.is_dir() { return Ok(false); } diff --git a/crates/analytics/src/lib.rs b/crates/analytics/src/lib.rs index 61bd52627..ba01ca080 100644 --- a/crates/analytics/src/lib.rs +++ b/crates/analytics/src/lib.rs @@ -4,100 +4,22 @@ mod error; pub use error::*; #[derive(Clone)] -pub struct AnalyticsClient { - client: reqwest::Client, - api_key: String, -} +pub struct AnalyticsClient {} impl AnalyticsClient { - pub fn new(api_key: impl Into) -> Self { - let client = reqwest::Client::new(); - - Self { - client, - api_key: api_key.into(), - } + pub fn new(_api_key: impl Into) -> Self { + Self {} } - pub async fn event(&self, payload: AnalyticsPayload) -> Result<(), Error> { - if !hypr_network::is_online().await { - return Ok(()); - } - - let mut e = posthog::Event::new(payload.event, payload.distinct_id); - e.set_timestamp(chrono::Utc::now().naive_utc()); - - for (key, value) in payload.props { - let _ = e.insert_prop(key, value); - } - - let inner_event = posthog_core::event::InnerEvent::new(e, self.api_key.clone()); - - if !cfg!(debug_assertions) { - let _ = self - .client - .post("https://us.i.posthog.com/i/v0/e/") - .json(&inner_event) - .send() - .await? - .error_for_status()?; - } else { - tracing::info!("event: {}", serde_json::to_string(&inner_event).unwrap()); - } - + pub async fn event(&self, _payload: AnalyticsPayload) -> Result<(), Error> { Ok(()) } - pub async fn set_properties(&self, payload: PropertiesPayload) -> Result<(), Error> { - if !hypr_network::is_online().await { - return Ok(()); - } - - let mut e = posthog::Event::new("$set", &payload.distinct_id); - e.set_timestamp(chrono::Utc::now().naive_utc()); - - if !payload.set.is_empty() { - let _ = e.insert_prop("$set", serde_json::json!(payload.set)); - } - - if !payload.set_once.is_empty() { - let _ = e.insert_prop("$set_once", serde_json::json!(payload.set_once)); - } - - let inner_event = posthog_core::event::InnerEvent::new(e, self.api_key.clone()); - - if !cfg!(debug_assertions) { - let _ = self - .client - .post("https://us.i.posthog.com/i/v0/e/") - .json(&inner_event) - .send() - .await? - .error_for_status()?; - } else { - tracing::info!( - "set_properties: {}", - serde_json::to_string(&inner_event).unwrap() - ); - } - + pub async fn set_properties(&self, _payload: PropertiesPayload) -> Result<(), Error> { Ok(()) } - pub async fn event2(&self, user_id: impl Into) -> Result<(), Error> { - let payload = serde_json::json!({ "user_id": user_id.into() }); - if !cfg!(debug_assertions) { - let _ = self - .client - .post("https://us.i.posthog.com/i/v0/e/") - .query(&payload) - .send() - .await? - .error_for_status()?; - } else { - tracing::info!("event2: {}", serde_json::to_string(&payload).unwrap()); - } - + pub async fn event2(&self, _user_id: impl Into) -> Result<(), Error> { Ok(()) } } diff --git a/plugins/local-llm/src/ext/plugin.rs b/plugins/local-llm/src/ext/plugin.rs index 401b81c16..f5df8a634 100644 --- a/plugins/local-llm/src/ext/plugin.rs +++ b/plugins/local-llm/src/ext/plugin.rs @@ -48,7 +48,12 @@ impl> LocalLlmPluginExt for T { } fn models_dir(&self) -> PathBuf { - self.path().app_data_dir().unwrap().join("ttt") + let a = self + .path() + .resolve("ttt", tauri::path::BaseDirectory::Resource) + .unwrap(); + tracing::info!("models_dir: {:?}", a); + a } #[tracing::instrument(skip_all)] diff --git a/plugins/local-llm/src/lib.rs b/plugins/local-llm/src/lib.rs index 2132f1c6d..88edf8ebe 100644 --- a/plugins/local-llm/src/lib.rs +++ b/plugins/local-llm/src/lib.rs @@ -90,12 +90,9 @@ pub fn init() -> tauri::plugin::TauriPlugin { } { - let model_path = if cfg!(debug_assertions) { - app.path() - .resolve("resources/llm.gguf", BaseDirectory::Resource)? - } else { - app.path().resolve("llm.gguf", BaseDirectory::Resource)? - }; + let model_path = app + .path() + .resolve("hypr-llm.gguf", BaseDirectory::Resource)?; let state = State { api_base: None, diff --git a/plugins/local-stt/src/ext.rs b/plugins/local-stt/src/ext.rs index 84bb75c75..f4d3b9afc 100644 --- a/plugins/local-stt/src/ext.rs +++ b/plugins/local-stt/src/ext.rs @@ -72,7 +72,12 @@ impl> LocalSttPluginExt for T { } fn models_dir(&self) -> PathBuf { - self.path().app_data_dir().unwrap().join("stt") + let a = self + .path() + .resolve("stt", tauri::path::BaseDirectory::Resource) + .unwrap(); + tracing::info!("models_dir: {:?}", a); + a } fn list_ggml_backends(&self) -> Vec {