{#if rows.length === 0}

Nessuna riga corrisponde ai filtri.

{:else}
{#each visibleColumns as col (col)} {/each} {#each rows as row (row.id)} onRowClick(row)} onkeydown={(e) => onRowKey(e, row)} tabindex="0" role="button" aria-label={`Apri riga ${row.id}`} > {#each visibleColumns as col (col)} {@const editable = EDITABLE_COLS.has(col)} {@const isEditing = editing && editing.id === row.id && editing.col === col} {@const multiline = col === 'note'} {/each} {/each}
# {LABELS[col] ?? col}
{row.id} {#if row.edited === 1} ✏ modificata {/if} startEdit(e, row, col)} > {#if isEditing} {#if multiline} {:else} e.stopPropagation()} onkeydown={(e) => onCellKeydown(e, row, col, false)} onblur={(e) => commitEdit( row, col, (e.currentTarget as HTMLInputElement).value )} /> {/if} {:else} {display(row, col)} {/if}
{/if}