<script>
import { chain } from 'svelte-chainstore';
let changeCounter = 0;
const name = chain((v) => v.toUpperCase())
.chain((v) => {
changeCounter++;
return v;
})
.sync()
.store('JOHN');
</script>
<!-- chain ensures name value is always uppercase and also counts the changes made -->
<input bind:value={$name} />
<br />This value changed {changeCounter} times.