From 5c25e5a4f42f2eb05c525a284cd584786324b6e1 Mon Sep 17 00:00:00 2001 From: Christophe Besson Date: Tue, 1 Sep 2026 15:18:27 +0200 Subject: fix(hub): adjust no-group prompt and post-create wizard step No-group home/explore message: when the hub offers no public groups, drop the "browse public groups" invitation and just ask to be invited by an admin. New home.invite_only key added to all ten catalogues. Create-group wizard done step: reword the message to point at inviting members, and send the button to the group's Settings tab (where the invite form lives) instead of a stale /groups/ path that never matched the router. The landing tab is a one-shot session hint, so the usual per-user default-tab preference is left untouched. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01QNPfgH6VWcRzJDZGuzy1jJ --- packages/meshbay-hub/src/meshbay_hub/static/app.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'packages/meshbay-hub/src/meshbay_hub/static/app.js') diff --git a/packages/meshbay-hub/src/meshbay_hub/static/app.js b/packages/meshbay-hub/src/meshbay_hub/static/app.js index 994cb73..06b6c10 100644 --- a/packages/meshbay-hub/src/meshbay_hub/static/app.js +++ b/packages/meshbay-hub/src/meshbay_hub/static/app.js @@ -358,7 +358,7 @@ function NotificationFeed({ notifications, onMarkRead, onPurge }) { `; } -function HomePage({ groups, notifications, onMarkRead, onPurge }) { +function HomePage({ groups, notifications, onMarkRead, onPurge, allowPublicGroups = true }) { const [setupDismissed, setSetupDismissed] = useState(false); if (groups.length === 0) { @@ -373,7 +373,9 @@ function HomePage({ groups, notifications, onMarkRead, onPurge }) { onMarkRead=${onMarkRead} onPurge=${onPurge} />

${t('home.no_groups')} - ${' '}${t('home.browse_prefix')}${t('home.browse_link')}${t('home.browse_suffix')} + ${' '}${allowPublicGroups + ? html`${t('home.browse_prefix')}${t('home.browse_link')}${t('home.browse_suffix')}` + : t('home.invite_only')}

`; @@ -846,6 +848,7 @@ function App() { page = (user.role === 'moderator' || user.role === 'admin') ? html`<${LazyAdminPage} token=${user.token} role=${user.role} />` : html`<${HomePage} groups=${groups} notifications=${notifications} + allowPublicGroups=${allowPublicGroups} onMarkRead=${markRead} onPurge=${purgeNotifications} />`; } else if (route === '/settings') { page = html`<${SettingsPage} user=${user} theme=${theme} @@ -862,6 +865,7 @@ function App() { page = html`<${ProfilePage} user=${user} onLogout=${authCtx.logout} />`; } else { page = html`<${HomePage} groups=${groups} notifications=${notifications} + allowPublicGroups=${allowPublicGroups} onMarkRead=${markRead} onPurge=${purgeNotifications} />`; } -- cgit v1.2.3