<script src="https://npmcdn.com/vue/dist/vue.js"></script>
<div id="exercise">
<!-- 1) Start the Effect with the Button. The Effect should alternate the "highlight" or "shrink" class on each new setInterval tick (attach respective class to the div with id "effect" below) -->
<div>
<button @click="startEffect">Start Effect</button>
<div id="effect" :class="effects"></div>
</div>
<!-- 2) Create a couple of CSS classes and attach them via the array syntax -->
<div :class="[textRed, textBold]">Much class!</div>
<!-- 3) Let the user enter a class (create some example classes) and attach it -->
<div>
<input type="text" v-model="input1">
<div :class="input1"></div>
</div>
<!-- 4) Let the user enter a class and enter true/ false for another class (create some example classes) and attach the classes -->
<div>
<input type="text" v-model="input2"><br>
<label>Make me disappear?</label><br>
<input type="text" v-model="input3">
<div class="square" :class="[input2, {disappear:disappear}]"></div>
</div>
<!-- 5) Repeat 3) but now with values for styles (instead of class names). Attach the respective styles. -->
<div>
<input type="text" v-model="input4">
<div class="square" :style="input4"></div>
</div>
<!-- 6) Create a simple progress bar with setInterval and style bindings. Start it by hitting the below button. -->
<div>
<button v-on:click="startProgress">Start Progress</button>
<div class="progress-bar" :style="progressWidth"></div>
</div>
</div>