<template> <div> <td :style="backgroundColor" class="line-number-cell"> <v-btn flat block depressed class="line-number-btn" @click="toggleEditor" > {{ lineNo }} </v-btn> </v-btn> </td> <td class="code-cell-content pl-2"> <span v-html="code" class="code-line"></span> <slot/> </td> </div> </template> <script> export default { name: 'submission-line', props: { lineNo: { type: String, required: true }, code: { type: String, required: true }, codeLanguage: { type: String, default: 'lang-c' }, hint: { type: Boolean, default: false, }, }, computed: { backgroundColor() { return this.hint ? 'background-color: #F44336;' : 'background-color: transparent;' } }, methods: { toggleEditor () { this.$emit('toggleEditor') } } } </script> <style scoped> .line-number-cell { vertical-align: top; } .code-cell-content { width: 100%; } .code-line { white-space: pre-wrap; font-family: monospace; } .line-number-btn { height: fit-content; min-width: 50px; margin: 0; border-radius: 0; } </style>