[READ-ONLY] Mirror of https://github.com/danielroe/dwaring87-webdev-wedding. Marissa & David's Wedding Website!
0

Configure Feed

Select the types of activity you want to include in your feed.

dwaring87-webdev-wedding / components / CollapsibleWell.vue
1.3 kB 50 lines
1<script setup> 2 import RiExpand from '~icons/ri/add-circle-fill'; 3 import RiCollapse from '~icons/ri/indeterminate-circle-fill'; 4 5 const props = defineProps({ 6 title: String 7 }); 8 9 const visible = ref(false); 10</script> 11 12<template> 13 <div class="well"> 14 <div class="w-full cursor-pointer flex justify-between items-center text-emerald-800/60 hover:text-emerald-800/80" @click="visible = !visible"> 15 <h3>{{ title }}</h3> 16 <div class="relative h-full"> 17 &nbsp; 18 <Transition name="fade"> 19 <RiExpand v-if="!visible" class="absolute top-1 right-2 text-xl" /> 20 <RiCollapse v-else class="absolute top-1 right-2 text-xl" /> 21 </Transition> 22 </div> 23 </div> 24 <Transition name="slide-fade"> 25 <div v-if="visible"> 26 <slot></slot> 27 </div> 28 </Transition> 29 </div> 30</template> 31 32<style scoped> 33 .fade-enter-active, .fade-leave-active { 34 transition: opacity 0.5s ease; 35 } 36 .fade-enter-from, .fade-leave-to { 37 opacity: 0; 38 } 39 40 .slide-fade-enter-active { 41 transition: all 0.5s ease-out; 42 } 43 .slide-fade-leave-active { 44 transition: all 0.3s ease-in; 45 } 46 .slide-fade-enter-from, .slide-fade-leave-to { 47 transform: translateY(-50px); 48 opacity: 0; 49 } 50</style>