From 004a50a4f578733c5e458756e871270a2f81a901 Mon Sep 17 00:00:00 2001 From: Michiel de Jong Date: Thu, 24 Sep 2026 16:30:21 +0200 Subject: [PATCH 1/2] Say which integration proxy carries a connection's traffic Self-hosted servers default to a hosted integration proxy (#1700), so wherever someone connects an external service they should see where that traffic goes and how to run their own proxy. A shared ProxyTrafficNotice names the configured proxy's host ("atomic.place" for atomic.place and its subdomains) and links to the atomic-integration-proxy self-hosting guide. It appears in the app's "Connect an account" bar and under the proxy URL field in Settings > Integration. Co-Authored-By: Claude Opus 5.5 --- .../src/chunks/AppPage/AppFrame.tsx | 24 ++++++++--- .../src/components/ProxyTrafficNotice.tsx | 31 ++++++++++++++ .../Settings/IntegrationSettings.tsx | 2 + .../src/helpers/proxyTrafficHost.test.ts | 42 +++++++++++++++++++ .../src/helpers/proxyTrafficHost.ts | 32 ++++++++++++++ browser/data-browser/src/locales/de.po | 11 +++-- browser/data-browser/src/locales/en.po | 15 ++++--- browser/data-browser/src/locales/es.po | 11 +++-- browser/data-browser/src/locales/fr.po | 11 +++-- 9 files changed, 159 insertions(+), 20 deletions(-) create mode 100644 browser/data-browser/src/components/ProxyTrafficNotice.tsx create mode 100644 browser/data-browser/src/helpers/proxyTrafficHost.test.ts create mode 100644 browser/data-browser/src/helpers/proxyTrafficHost.ts diff --git a/browser/data-browser/src/chunks/AppPage/AppFrame.tsx b/browser/data-browser/src/chunks/AppPage/AppFrame.tsx index ffee449358..b291a0943e 100644 --- a/browser/data-browser/src/chunks/AppPage/AppFrame.tsx +++ b/browser/data-browser/src/chunks/AppPage/AppFrame.tsx @@ -16,6 +16,7 @@ import resetCss from '../../reset.css?raw'; import { useCreateThemeVars } from '@views/PluginView/useCreateThemeVars'; import { getIntegrationProxy } from '@helpers/integrationProxy'; import { isPlatformId, ProxyConnections } from '@helpers/proxyConnections'; +import { ProxyTrafficNotice } from '@components/ProxyTrafficNotice'; /** Changing installation or destination must discard source tokens and pending replies. */ export function AppFrame(props: Parameters[0]) { @@ -334,12 +335,15 @@ function AppFrameSession({ )} {connectAsk && ( - - This app wants to connect your{' '} - {platformName(connectAsk.platform)} account through{' '} - {getIntegrationProxy()}. The connection stays in this browser; the - app can only make requests through it. - + + + This app wants to connect your{' '} + {platformName(connectAsk.platform)} account. The + connection stays in this browser; the app can only make requests + through it. + + +