{#snippet buddyRow(buddy: Buddy)}
{#if editMode}{/if}
{/snippet} {#snippet menu()} {/snippet}
{#if me}
{me.nickname}{meQuery?.data?.status === 'away' ? `Absent${meQuery.data.awayMessage ? ` : ${meQuery.data.awayMessage}` : ''}` : (STATUS_LABELS_FR[(meQuery?.data?.status ?? me.status) as AimStatus] ?? 'En ligne')}
{:else}

Connectez-vous pour voir vos contacts.

{/if}
{#if me} {#each sortedGroups as group (group.name)} {#if !collapsed.has(group.name)}{#each group.members as buddy (buddy.id)}{@render buddyRow( buddy )}{/each}{/if} {/each} {#if !collapsed.has('Offline')}{#each offline as buddy (buddy.id)}{@render buddyRow( buddy )}{/each}{/if} {#if !collapsed.has('Salons')}{#each [...(roomsQuery?.data ?? [])].sort((a, b) => Number(b.isDefault) - Number(a.isDefault) || a.name.localeCompare(b.name)) as room (room.id)}{/each}{/if} {#if !collapsed.has('Conversations')}{#each directQuery?.data ?? [] as room (room.id)}{#if room.other}{/if}{/each}{/if} {/if}
{#if me && panel === 'im'}
{ e.preventDefault(); void startIm(); }} >
{/if} {#if me && panel === 'add'}
{ e.preventDefault(); void addBuddy(); }} > {#if addGroup === 'Autre…'}{/if}
{/if} {#if error}{/if}
{#if context}{/if}