{t('messages.title')} · libreDecision {#if !session.me} {:else if box.error} box.load()} /> {:else}

{t('messages.title')}

{t('messages.intro')}

{#if unread} {/if}
{#if error}{/if} {#if box.value}
    {#each box.value.messages as m (m.id)}
  • {t(`messages.topic.${m.topic}`)} {m.doc.title[i18n.lang] ?? m.doc.title.fr ?? ''} {i18n.date(m.createdAt)} {#if !m.read}{t('messages.unread')}{/if}

    {textOf(m)}

    {#if m.objection?.reason && m.kind !== 'objection_answered'}

    {m.objection.reason}

    {/if} {#if m.typo}{/if} {#if m.done}

    {outcomeOf(m)}

    {:else if m.dueAt}

    {t('messages.due', { date: i18n.date(m.dueAt) })}

    {/if}
    {#if !m.done} {#each m.gestures as g (g)} {/each} {/if} void read(m)}>{t('messages.open')} {#if !m.read}{/if}
  • {:else}
  • {t('messages.none')}
  • {/each}
{:else}

{t('common.loading')}

{/if}
{/if}