{#if dragged && x && y}
{title}
{/if}
{#if confirmEdit}
{ // check if target is generate button if (e.relatedTarget?.id === 'generate-title-button') { return; } if (doubleClicked) { e.preventDefault(); e.stopPropagation(); await tick(); setTimeout(() => { const input = document.getElementById(`chat-title-input-${id}`); if (input) input.focus(); }, 0); doubleClicked = false; return; } if (chatTitle !== title) { editChatTitle(id, chatTitle); } confirmEdit = false; chatTitle = ''; }} />
{:else}
{ dispatch('select'); if ($mobile) { showSidebar.set(false); } }} on:dblclick={async (e) => { e.preventDefault(); e.stopPropagation(); doubleClicked = true; renameHandler(); }} on:mouseenter={(e) => { mouseOver = true; }} on:mouseleave={(e) => { mouseOver = false; }} on:focus={(e) => {}} draggable="false" >
{title}
{/if}
{ mouseOver = true; }} on:mouseleave={(e) => { mouseOver = false; }} > {#if confirmEdit}
{ e.preventDefault(); e.stopImmediatePropagation(); e.stopPropagation(); generateTitleHandler(); }} >
{:else if shiftKey && mouseOver}
{ archiveChatHandler(id); }} type="button" >
{ deleteChatHandler(id); }} type="button" >
{:else}
{ cloneChatHandler(id); }} shareHandler={() => { showShareChatModal = true; }} archiveChatHandler={() => { archiveChatHandler(id); }} {renameHandler} deleteHandler={() => { showDeleteConfirm = true; }} onClose={() => { dispatch('unselect'); }} on:change={async () => { dispatch('change'); }} on:tag={(e) => { dispatch('tag', e.detail); }} >
{ dispatch('select'); }} >
{#if id === $chatId}
{ showDeleteConfirm = true; }} >
{/if}
{/if}