<template> <button v-if="link.type !== 'loading'" :class="['toggle-button', 'toggle-preview', {opened: link.shown}]" :aria-label="ariaLabel" @click="onClick" /> </template> <script> export default { name: "LinkPreviewToggle", props: { link: Object, }, computed: { ariaLabel() { return this.link.shown ? "Collapse preview" : "Expand preview"; }, }, methods: { onClick() { this.link.shown = !this.link.shown; this.$parent.$emit("linkPreviewToggle", this.link, this.$parent.message); }, }, }; </script>