{#if !hasImages || (hasImages && canAddMore)}
{#if isUploading}

Uploading images...

{#each Object.entries(uploadProgress) as [fileName, progress]}
{fileName.split('-')[0]}
{Math.round(progress)}%
{/each}
{:else}

{placeholder}

Supports JPG, PNG, GIF up to {maxFileSize}MB {#if maxItems} • Maximum {maxItems} images {/if} {#if hasImages && remainingSlots < Infinity} • {remainingSlots} slots remaining {/if}

{/if}
{/if} {#if !isUploading && canAddMore}
{#if showBrowseLibrary} {/if}
{/if} {#if hasImages}
{#each value as media, index (`${media.mediaId || media.id || index}`)}
handleImageDragStart(e, index)} ondragover={(e) => handleImageDragOver(e, index)} ondragleave={handleImageDragLeave} ondrop={(e) => handleImageDrop(e, index)} ondragend={handleImageDragEnd} >
{#if allowAltText}
handleAltTextChange(media, e.target.value)} />
{/if}

{media.originalName || media.filename}

{Math.round((media.size || 0) / 1024)} KB {#if media.width && media.height} • {media.width}×{media.height} {/if}

{/each}
{/if} {#if error || uploadError}

{error || uploadError}

{/if}