summaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/src/meshbay_hub/static/app.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/meshbay-hub/src/meshbay_hub/static/app.js')
-rw-r--r--packages/meshbay-hub/src/meshbay_hub/static/app.js16
1 files changed, 11 insertions, 5 deletions
diff --git a/packages/meshbay-hub/src/meshbay_hub/static/app.js b/packages/meshbay-hub/src/meshbay_hub/static/app.js
index c7e46d8..aa0034c 100644
--- a/packages/meshbay-hub/src/meshbay_hub/static/app.js
+++ b/packages/meshbay-hub/src/meshbay_hub/static/app.js
@@ -20,6 +20,7 @@ import { MusicPlayerBar } from './music-player.js';
import { SettingsPage } from './settings-page.js';
import { ProfilePage } from './profile-page.js';
import { ExplorePage } from './explore-page.js';
+import { GroupName } from './group-name.js';
import { FirstRunPage, LoginPage, RegisterPage, ResetPasswordPage } from './auth-page.js';
// ── Constants ────────────────────────────────────────────────────────────────
@@ -397,12 +398,17 @@ function HomePage({ groups, notifications, onMarkRead, onPurge, allowPublicGroup
<div class="group-grid">
${groups.map(g => html`
<a key=${g.id} class="group-card" href="#/group/${g.id}">
- <h3>${g.name}</h3>
+ ${/* The host, not the visibility. "private" and "invite" were on
+ every card because they are the default everywhere — two
+ badges that never varied and so never told anyone anything.
+ Who hosts a group does vary, and is the thing that tells two
+ groups of the same name apart (the hub only enforces
+ uniqueness per owner). GroupName renders it as a smaller
+ @handle beside the name, which is how the group header and
+ Explore already write it. "admin" stays: it does vary. */''}
+ <h3><${GroupName} name=${g.name} owner=${g.owner_username} /></h3>
${g.description && html`<p class="group-card-desc">${g.description}</p>`}
- <span class="badge">${g.visibility}</span>
- ${' '}
- <span class="badge">${g.join_policy}</span>
- ${g.is_admin && html`${' '}<span class="badge">admin</span>`}
+ ${g.is_admin && html`<span class="badge">admin</span>`}
</a>
`)}
</div>