Add code highlighting for rendered user input text

This commit is contained in:
kolaente 2021-01-10 19:03:47 +01:00
parent 0c833af72f
commit f1206e8274
Signed by untrusted user who does not match committer: konrad
GPG key ID: F40E70337AB24C9B
3 changed files with 12 additions and 0 deletions

View file

@ -329,6 +329,11 @@ export default {
return `<input type="checkbox" data-checkbox-num="${checkboxNum}" ${checked} class="text-checkbox-${this._uid}"/>`
},
},
highlight: function(code, language) {
const hljs = require('highlight.js');
const validLanguage = hljs.getLanguage(language) ? language : 'plaintext';
return hljs.highlight(validLanguage, code).value;
},
})
this.preview = DOMPurify.sanitize(marked(this.text))
@ -406,6 +411,7 @@ export default {
</script>
<style lang="scss">
@import '../../../node_modules/highlight.js/scss/atelier-heath-light';
@import '../../../node_modules/easymde/dist/easymde.min.css';
@import '../../styles/theme/variables';