Upload Settings
{COUNTRIES.find((c) => c.value === selectedCountry)?.label || 'Select country'}
{#each COUNTRIES as country}
{country.label}
{/each}
Naming & Size Rules
taobin_adv_menu_*.mp4
Menu banner ad
1080 × 380
taobin_adv_*.mp4
Fullscreen / Idle ad
1080 × 608
{#if pushingToMachine}
{/if}
{#if uploading}
{/if}
{#if generatingManifest}
Generating sync_1.file on machine and uploading...
{/if}
{#if files.length > 0}
Selected Files ({files.length})
{#if files.some((f) => f.status === 'success')}
{files.filter((f) => f.status === 'success').length} uploaded
{/if}
{#if files.some((f) => f.status === 'error')}
{files.filter((f) => f.status === 'error').length} invalid/failed
{/if}
{#each files as item (item.id)}
{#if item.status === 'uploading'}
{:else if item.status === 'success'}
{/if}
{#if item.status !== 'uploading'}
{/if}
{item.file.name}
{item.category === 'menu' ? 'Menu banner' : 'Fullscreen'}
{#if !item.dimChecked}
Reading…
{:else if item.dimOk}
{item.width}×{item.height}
{:else}
{item.width ?? '?'}×{item.height ?? '?'}
{/if}
{(item.file.size / (1024 * 1024)).toFixed(1)} MB
Expected {item.expectedWidth}×{item.expectedHeight}
{#if item.error}
{item.error}
{/if}
{/each}
{/if}