diff --git a/apps/tauri/src-tauri/Cargo.toml b/apps/tauri/src-tauri/Cargo.toml
index a13e4ab..e9fbf5e 100644
--- a/apps/tauri/src-tauri/Cargo.toml
+++ b/apps/tauri/src-tauri/Cargo.toml
@@ -22,9 +22,9 @@ tauri-plugin-opener = "2"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
base64 = "0.22"
-reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"] }
+reqwest = { version = "0.13", default-features = false, features = ["json", "rustls-tls"] }
tokio = { version = "1", features = ["rt-multi-thread", "sync", "time"] }
-mtp = { git = "https://git.methanium.net/methanium/mtp.git", rev = "7182272e3edb0079d7b74b45b2f62a298d2fee22", features = ["client", "crypto"] }
+mtp = { git = "https://git.methanium.net/methanium/mtp.git", rev = "b067614a684eb1856bc5db7b3fd82148c036ce6b", features = ["client", "crypto"] }
mtp-transport = { git = "https://git.methanium.net/methanium/mtp.git", rev = "b067614a684eb1856bc5db7b3fd82148c036ce6b" }
webpki-root-certs = "1"
tauri-plugin-deep-link = "2"
diff --git a/apps/web/src/components/modals/basic.tsx b/apps/web/src/components/modals/basic.tsx
index 46eaa45..dc4e48a 100644
--- a/apps/web/src/components/modals/basic.tsx
+++ b/apps/web/src/components/modals/basic.tsx
@@ -15,7 +15,10 @@ export function Basic({
user,
extra,
}: {
- user: User;
+ user: Pick<
+ User,
+ "Display" | "Username" | "Avatar" | "OnlineStatus" | "Status"
+ >;
extra?: React.ReactNode;
}) {
const display = user.Display || user.Username || "Unknown";
@@ -57,8 +60,9 @@ export function Basic({
-
+
{display}
+
{user.Status}
{extra}
diff --git a/apps/web/src/components/modals/profile.tsx b/apps/web/src/components/modals/profile.tsx
index 6324ab5..a4bddb2 100644
--- a/apps/web/src/components/modals/profile.tsx
+++ b/apps/web/src/components/modals/profile.tsx
@@ -4,7 +4,20 @@ import { Text } from "@methanium/ui/markdown";
import { ChevronDown, ChevronUp } from "lucide-react";
import { useState } from "react";
-export default function Profile({ user }: { user: User }) {
+export default function Profile({
+ user,
+}: {
+ user: Pick<
+ User,
+ | "UserId"
+ | "Display"
+ | "Username"
+ | "Avatar"
+ | "About"
+ | "IotaId"
+ | "PublicKey"
+ >;
+}) {
const [showAdvancedInformation, setShowAdvancedInformation] = useState(false);
return (
diff --git a/apps/web/src/components/navbar.tsx b/apps/web/src/components/navbar.tsx
index 6c86f96..2f1c115 100644
--- a/apps/web/src/components/navbar.tsx
+++ b/apps/web/src/components/navbar.tsx
@@ -91,6 +91,15 @@ export default function Navbar({ forMobile }: { forMobile: boolean }) {
{pathname === "/chat" && id && (
isMobile ? (
{user?.Display}
diff --git a/apps/web/src/components/sidebar.tsx b/apps/web/src/components/sidebar.tsx
index 7a7c58b..6c3de28 100644
--- a/apps/web/src/components/sidebar.tsx
+++ b/apps/web/src/components/sidebar.tsx
@@ -35,7 +35,7 @@ import SidebarBox from "@tensamin/call/sidebarBox";
import { useShowMobileNavbar } from "@/routes/app/useShowMobileNavbar";
import { Ellipsis, Check } from "lucide-react";
import { useState } from "react";
-import type { User } from "@tensamin/user/context";
+import { useUser, type User } from "@tensamin/user/context";
import { mtp, userPresencePreferenceSchema } from "@tensamin/shared/data";
import { useMTP } from "@tensamin/mtp";
import {
@@ -64,7 +64,7 @@ function StatusDialog({
saveSucceeded,
setSaveSucceeded,
}: {
- user: User;
+ user: Pick;
open: boolean;
onOpenChange: (open: boolean) => void;
send: ReturnType["send"];
@@ -77,6 +77,8 @@ function StatusDialog({
saveSucceeded: boolean;
setSaveSucceeded: (value: boolean) => void;
}) {
+ const { updateProfile, updateState } = useUser();
+
return (
diff --git a/packages/call/src/components/buttons/invite.tsx b/packages/call/src/components/buttons/invite.tsx
index b478529..d49a643 100644
--- a/packages/call/src/components/buttons/invite.tsx
+++ b/packages/call/src/components/buttons/invite.tsx
@@ -63,6 +63,7 @@ export default function InviteButton({
Loading...}
component={(user) => (