From ae33bd8d9f8871101699521cb0b5e60b526e2252 Mon Sep 17 00:00:00 2001 From: Ivan Date: Mon, 13 Apr 2026 17:36:31 -0500 Subject: [PATCH] feat(App, Contacts, Messages, Settings, Tools): improve UI components with loading overlays, contact editing, and new license links; improve display name handling and auto-select node descriptions --- meshchatx/src/frontend/components/App.vue | 63 ++++++++++++------- .../frontend/components/about/AboutPage.vue | 7 +++ .../components/contacts/ContactsPage.vue | 25 ++++++++ .../messages/ConversationViewer.vue | 20 ++++-- .../components/messages/MessagesPage.vue | 33 ++++++++-- .../components/settings/SettingsPage.vue | 18 ++++++ .../frontend/components/tools/ToolsPage.vue | 8 +++ 7 files changed, 141 insertions(+), 33 deletions(-) diff --git a/meshchatx/src/frontend/components/App.vue b/meshchatx/src/frontend/components/App.vue index d7359e1..44ba8e0 100644 --- a/meshchatx/src/frontend/components/App.vue +++ b/meshchatx/src/frontend/components/App.vue @@ -47,13 +47,7 @@ {{ $t("app.name") }}
@@ -535,21 +529,36 @@
-
-
+
+
-
- + class="mx-auto mb-4 flex h-14 w-14 items-center justify-center rounded-2xl bg-slate-50 ring-1 ring-gray-200/80 dark:bg-zinc-950 dark:ring-zinc-700" + > + +
+

+ {{ $t("app.loading_overlay_kicker") }} +

+

+ {{ $t("app.loading_overlay_title") }} +

+

+ {{ $t("app.loading_overlay_subtitle") }} +

+
+
+
+
-
- {{ $t("app.switching_identity") }} -
-
{{ $t("app.loading_identity") }}
@@ -649,9 +658,6 @@ export default { }; }, computed: { - giteaBaseUrl() { - return this.config?.gitea_base_url || "https://git.quad4.io"; - }, currentPopoutType() { if (this.$route?.meta?.popoutType) { return this.$route.meta.popoutType; @@ -810,7 +816,7 @@ export default { if (this.isSwitchingIdentity) { this.isSwitchingIdentity = false; } - }, 10000); + }, 45000); }, onSyncPropagationNodeShell() { this.syncPropagationNode(); @@ -1528,4 +1534,17 @@ export default { opacity: 0; backdrop-filter: blur(0); } + +@keyframes identity-switch-indeterminate { + 0% { + transform: translateX(-100%); + } + 100% { + transform: translateX(350%); + } +} + +.identity-switch-indeterminate { + animation: identity-switch-indeterminate 1.4s ease-in-out infinite; +} diff --git a/meshchatx/src/frontend/components/about/AboutPage.vue b/meshchatx/src/frontend/components/about/AboutPage.vue index 4312c55..18144c7 100644 --- a/meshchatx/src/frontend/components/about/AboutPage.vue +++ b/meshchatx/src/frontend/components/about/AboutPage.vue @@ -44,6 +44,13 @@ {{ $t("app.changelog_title") }} + + + {{ $t("about.third_party_licenses") }} +