mirror of
https://github.com/immich-app/immich.git
synced 2025-07-08 18:57:09 -04:00
added few more type hint
This commit is contained in:
parent
6c505334a8
commit
07830f9802
@ -1,7 +1,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Icon from '$lib/components/elements/icon.svelte';
|
import Icon from '$lib/components/elements/icon.svelte';
|
||||||
import {
|
import {
|
||||||
getMyUser, // Reintroduce the API to fetch the current user
|
getMyUser,
|
||||||
updateAlbumInfo,
|
updateAlbumInfo,
|
||||||
removeUserFromAlbum,
|
removeUserFromAlbum,
|
||||||
type AlbumResponseDto,
|
type AlbumResponseDto,
|
||||||
@ -21,7 +21,7 @@
|
|||||||
import ConfirmDialog from '$lib/components/shared-components/dialog/confirm-dialog.svelte';
|
import ConfirmDialog from '$lib/components/shared-components/dialog/confirm-dialog.svelte';
|
||||||
import { notificationController, NotificationType } from '../shared-components/notification/notification';
|
import { notificationController, NotificationType } from '../shared-components/notification/notification';
|
||||||
import MenuOption from '$lib/components/shared-components/context-menu/menu-option.svelte';
|
import MenuOption from '$lib/components/shared-components/context-menu/menu-option.svelte';
|
||||||
import { onMount } from 'svelte'; // Import onMount to fetch the user when component mounts
|
import { onMount } from 'svelte';
|
||||||
|
|
||||||
export let album: AlbumResponseDto;
|
export let album: AlbumResponseDto;
|
||||||
export let order: AssetOrder | undefined;
|
export let order: AssetOrder | undefined;
|
||||||
@ -31,8 +31,8 @@
|
|||||||
export let onShowSelectSharedUser: () => void;
|
export let onShowSelectSharedUser: () => void;
|
||||||
export let onRemove: (userId: string) => void;
|
export let onRemove: (userId: string) => void;
|
||||||
|
|
||||||
let currentUser: UserResponseDto | null = null; // Store the current user fetched from the API
|
let currentUser: UserResponseDto | null = null;
|
||||||
let selectedRemoveUser: UserResponseDto | null = null; // Keep track of the user selected for removal
|
let selectedRemoveUser: UserResponseDto | null = null;
|
||||||
|
|
||||||
const options: Record<AssetOrder, RenderedOption> = {
|
const options: Record<AssetOrder, RenderedOption> = {
|
||||||
[AssetOrder.Asc]: { icon: mdiArrowUpThin, title: $t('oldest_first') },
|
[AssetOrder.Asc]: { icon: mdiArrowUpThin, title: $t('oldest_first') },
|
||||||
@ -42,7 +42,7 @@
|
|||||||
$: selectedOption = order ? options[order] : options[AssetOrder.Desc];
|
$: selectedOption = order ? options[order] : options[AssetOrder.Desc];
|
||||||
|
|
||||||
// Fetch the current user when the component mounts
|
// Fetch the current user when the component mounts
|
||||||
onMount(async () => {
|
onMount(async (): Promise<void> => {
|
||||||
try {
|
try {
|
||||||
currentUser = await getMyUser();
|
currentUser = await getMyUser();
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@ -50,11 +50,11 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
const handleToggle = async (returnedOption: RenderedOption) => {
|
const handleToggle = async (returnedOption: RenderedOption): Promise<void> => {
|
||||||
if (selectedOption === returnedOption) {
|
if (selectedOption === returnedOption) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
let order = AssetOrder.Desc;
|
let order: AssetOrder = AssetOrder.Desc;
|
||||||
order = findKey(options, (option) => option === returnedOption) as AssetOrder;
|
order = findKey(options, (option) => option === returnedOption) as AssetOrder;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@ -70,15 +70,14 @@
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleMenuRemove = (user: UserResponseDto) => {
|
const handleMenuRemove = (user: UserResponseDto): void => {
|
||||||
selectedRemoveUser = user;
|
selectedRemoveUser = user;
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleRemoveUser = async () => {
|
const handleRemoveUser = async (): Promise<void> => {
|
||||||
if (!selectedRemoveUser) {
|
if (!selectedRemoveUser) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
console.log(selectedRemoveUser,"selectedRemoveUser");
|
|
||||||
try {
|
try {
|
||||||
await removeUserFromAlbum({ id: album.id, userId: selectedRemoveUser.id });
|
await removeUserFromAlbum({ id: album.id, userId: selectedRemoveUser.id });
|
||||||
onRemove(selectedRemoveUser.id);
|
onRemove(selectedRemoveUser.id);
|
||||||
@ -124,15 +123,15 @@ console.log(selectedRemoveUser,"selectedRemoveUser");
|
|||||||
</div>
|
</div>
|
||||||
<div>{$t('invite_people')}</div>
|
<div>{$t('invite_people')}</div>
|
||||||
</button>
|
</button>
|
||||||
{#if currentUser}
|
{#if currentUser}
|
||||||
<div class="flex items-center gap-2 py-2 mt-2">
|
<div class="flex items-center gap-2 py-2 mt-2">
|
||||||
<div>
|
<div>
|
||||||
<UserAvatar user={currentUser} size="md" />
|
<UserAvatar user={currentUser} size="md" />
|
||||||
</div>
|
</div>
|
||||||
<div class="w-full">{currentUser.name}</div>
|
<div class="w-full">{currentUser.name}</div>
|
||||||
<div>{$t('owner')}</div>
|
<div>{$t('owner')}</div>
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
{#each album.albumUsers as { user } (user.id)}
|
{#each album.albumUsers as { user } (user.id)}
|
||||||
<div class="flex items-center gap-2 py-2">
|
<div class="flex items-center gap-2 py-2">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user