onchange(color)} />
{#if gradientOpen}
{gradient ? 'Gradient' : 'Add gradient'}
(gradientOpen = false)}>×
{#if !gradient}
onchange(gradientFor('linear_gradient'))} >Linear gradient
onchange(gradientFor('radial_gradient'))} >Radial gradient
{:else}
Type
Linear
Radial
Spread
updateGradient((current) => ({ ...current, spread: (event.currentTarget as HTMLSelectElement) .value as typeof current.spread }))}>
Pad
Reflect
Repeat
{#each gradient.stops as stop, index}
updateStop( index, 'color', (event.currentTarget as HTMLInputElement).value )} />
Position
updateStop( index, 'offset', (event.currentTarget as HTMLInputElement).value )} />
Opacity
updateStop( index, 'opacity', (event.currentTarget as HTMLInputElement).value )} />
removeStop(index)}>×
{/each}
Add stop
{/if}
{/if}