@@ -93,7 +98,7 @@
{/if}
-
+
{user.name}
@@ -101,6 +106,21 @@
{user.email}
+
+ {#if Object.keys(selectedUsers).includes(user.id)}
+
e.stopPropagation()}>
+ title}
+ on:select={({detail: {value}}) => handleChangeRole(user, value)}
+ />
+
+ {/if}
{/each}
@@ -117,8 +137,8 @@
size="sm"
fullwidth
rounded="full"
- disabled={selectedUsers.length === 0}
- on:click={() => dispatch('select', selectedUsers)}>Add dispatch('select', Object.values(selectedUsers).map(({user, ...rest}) => ({userId: user.id, ...rest})))}>Add
{/if}
diff --git a/web/src/routes/(user)/albums/[albumId]/+page.svelte b/web/src/routes/(user)/albums/[albumId]/+page.svelte
index aa5d23fe34..37350f637b 100644
--- a/web/src/routes/(user)/albums/[albumId]/+page.svelte
+++ b/web/src/routes/(user)/albums/[albumId]/+page.svelte
@@ -63,7 +63,7 @@
ReactionLevel,
ReactionType,
updateAlbumInfo,
- type UserResponseDto,
+ type AddUserDto,
} from '@immich/sdk';
import {
mdiArrowLeft,
@@ -316,12 +316,12 @@
viewMode = ViewMode.VIEW;
};
- const handleAddUsers = async (users: UserResponseDto[]) => {
+ const handleAddUsers = async (albumUsers: AddUserDto[]) => {
try {
album = await addUsersToAlbum({
id: album.id,
addUsersDto: {
- sharedUserIds: [...users].map(({ id }) => id),
+ albumUsers,
},
});