(isHovered = true)} onmouseleave={() => (isHovered = false)} > {#if isEditing}
{#if node.isFolder} {@const IconComponent = fileIcon.icon} {#if expanded} {:else} {/if} {:else} {@const IconComponent = fileIcon.icon} {/if} handleInputBlur(e), type: 'text' }} size="xs" />
{:else} {#if isHovered || dropdownOpen} {#if !noEdit} onAddFile?.(node.path) }, { displayName: 'New folder', icon: FolderPlus, action: () => onAddFolder?.(node.path) } ] : []), { displayName: 'Rename', icon: Pencil, action: handleEdit }, { displayName: 'Delete', icon: Trash2, action: handleDelete, type: 'delete' } ]} placement="bottom-end" class="absolute -translate-y-1/2 top-1/2 right-1" bind:open={dropdownOpen} > {#snippet buttonReplacement()} {/snippet} {:else} {/if} {/if} {/if}
{#if node.isFolder && expanded && sortedChildren} {#each sortedChildren as child (child.path)} {/each} {/if}