diff --git a/CHANGELOG.md b/CHANGELOG.md index 55242092..84439d40 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,9 @@ * Switch back to indexeddb to fix memory and performance * Add pay invoice functionality -* Add room membership management and bans +* Add space membership management and bans +* Add event info to profile dialog +* Add better room membership management # 1.5.3 diff --git a/src/app/components/ProfileDetail.svelte b/src/app/components/ProfileDetail.svelte index 80553303..a212a768 100644 --- a/src/app/components/ProfileDetail.svelte +++ b/src/app/components/ProfileDetail.svelte @@ -1,8 +1,10 @@
- - {#snippet title()} -
Members
- {/snippet} - {#snippet info()} -
of
- {/snippet} -
+
+

Members

+

of

+
+ {#if $userIsAdmin} +
+ +
+ {/if} {#each $members as pubkey (pubkey)} -
- +
+
+
+ +
+
+ + {#if menuPubkey === pubkey} + + + + {/if} +
+
{/each} - + + +
diff --git a/src/app/components/RoomMembersAdd.svelte b/src/app/components/RoomMembersAdd.svelte new file mode 100644 index 00000000..03753c8d --- /dev/null +++ b/src/app/components/RoomMembersAdd.svelte @@ -0,0 +1,77 @@ + + +
+ + {#snippet title()} +
Add Members
+ {/snippet} + {#snippet info()} +
to
+ {/snippet} +
+ + {#snippet label()} +

Search for People

+ {/snippet} + {#snippet input()} + + {/snippet} +
+ + + + +
diff --git a/src/app/components/SpaceMembersAdd.svelte b/src/app/components/SpaceMembersAdd.svelte index d76af0cd..be480b2e 100644 --- a/src/app/components/SpaceMembersAdd.svelte +++ b/src/app/components/SpaceMembersAdd.svelte @@ -38,7 +38,7 @@ } } - pushToast({message: "User has successfully been added!"}) + pushToast({message: "Members have successfully been added!"}) back() } finally { loading = false @@ -60,7 +60,7 @@ {#snippet label()} -

Search for Members

+

Search for People

{/snippet} {#snippet input()} diff --git a/src/app/core/state.ts b/src/app/core/state.ts index cc649556..da84cb4c 100644 --- a/src/app/core/state.ts +++ b/src/app/core/state.ts @@ -727,7 +727,7 @@ export const deriveSpaceMembers = (url: string) => const membersEvent = $events.find(spec({kind: RELAY_MEMBERS})) if (membersEvent) { - return getTagValues("member", membersEvent.tags) + return uniq(getTagValues("member", membersEvent.tags)) } const members = new Set() @@ -780,7 +780,7 @@ export const deriveRoomMembers = (url: string, h: string) => const membersEvent = $events.find(spec({kind: ROOM_MEMBERS})) if (membersEvent) { - return getPubkeyTagValues(membersEvent.tags) + return uniq(getPubkeyTagValues(membersEvent.tags)) } const members = new Set()