e.key === 'Escape' && (searchInput = '')} class="pl-8 h-8 w-48 text-sm" />
{#if $canAccess('volumes', 'remove')} confirmPrune = open} > {#snippet children({ open })} {#if pruneStatus === 'pruning'} {:else if pruneStatus === 'success'} {:else if pruneStatus === 'error'} {:else} {/if} Prune {/snippet} {/if} {#if $canAccess('volumes', 'create')} {/if}
{#if selectedVolumes.size > 0}
{selectedInFilter.length} selected {#if $canAccess('volumes', 'remove')} confirmBulkRemove = open} > {#snippet children({ open })} Delete {/snippet} {/if}
{/if} {#if !loading && ($environments.length === 0 || !$currentEnvironment)} {:else if !loading && volumes.length === 0} {:else} { sortField = state.field as SortField; sortDirection = state.direction; }} highlightedKey={highlightedRowId} onRowClick={(volume) => { highlightedRowId = highlightedRowId === volume.name ? null : volume.name; }} > {#snippet cell(column, volume, rowState)} {@const stack = volume.labels['com.docker.compose.project']} {#if column.id === 'name'} {volume.name} {:else if column.id === 'driver'} {volume.driver} {:else if column.id === 'scope'} {volume.scope} {:else if column.id === 'stack'} {#if stack} {stack} {:else} - {/if} {:else if column.id === 'usedBy'} {#if volume.usedBy && volume.usedBy.length > 0}
{#each volume.usedBy.slice(0, 3) as container} {/each} {#if volume.usedBy.length > 3} +{volume.usedBy.length - 3} {/if}
{:else} - {/if} {:else if column.id === 'created'} {formatDate(volume.created)} {:else if column.id === 'actions'}
{#if $canAccess('volumes', 'inspect')} {/if} {#if $canAccess('volumes', 'create')} {/if} {#if $canAccess('volumes', 'remove')}
removeVolume(volume.name)} onOpenChange={(open) => confirmDeleteName = open ? volume.name : null} > {#snippet children({ open })} {/snippet} {#if deleteError?.name === volume.name}
{deleteError.message}
{/if}
{/if}
{/if} {/snippet}
{/if}
showCreateModal = false} onSuccess={fetchVolumes} /> showBrowserModal = false} /> showCloneModal = false} onsuccess={fetchVolumes} /> showBatchOpModal = false} onComplete={handleBatchComplete} />