Browse Source

fix: markdown footnotes id incorrectly stripped

NGPixel 5 years ago
parent
commit
c81ba5a503
1 changed files with 14 additions and 14 deletions
  1. 14 14
      server/modules/rendering/html-security/renderer.js

+ 14 - 14
server/modules/rendering/html-security/renderer.js

@@ -10,11 +10,11 @@ module.exports = {
           blockquote: ['class', 'id', 'style'],
           code: ['class', 'style'],
           details: ['class', 'style'],
-          defs: ['stroke', 'fill', 'stroke-width', 'transform'],
+          defs: ['stroke', 'fill', 'stroke-width', 'transform', 'id'],
           div: ['class', 'id', 'style'],
           em: ['class', 'style'],
-          figcaption: ['class', 'style'],
-          figure: ['class', 'style'],
+          figcaption: ['class', 'style', 'id'],
+          figure: ['class', 'style', 'id'],
           g: ['transform', 'stroke', 'stroke-width', 'fill'],
           h1: ['class', 'id', 'style'],
           h2: ['class', 'id', 'style'],
@@ -22,31 +22,31 @@ module.exports = {
           h4: ['class', 'id', 'style'],
           h5: ['class', 'id', 'style'],
           h6: ['class', 'id', 'style'],
-          i: ['class', 'style'],
-          img: ['alt', 'class', 'draggable', 'height', 'src', 'style', 'width'],
+          i: ['class', 'id', 'style'],
+          img: ['alt', 'class', 'draggable', 'height', 'id', 'src', 'style', 'width'],
           input: ['class', 'disabled', 'type', 'checked', 'id'],
           kbd: ['class'],
           label: ['class', 'id', 'for'],
-          li: ['class', 'style'],
+          li: ['class', 'id', 'style'],
           mark: ['class', 'style'],
-          ol: ['class', 'style', 'start'],
-          p: ['class', 'style'],
+          ol: ['class', 'id', 'style', 'start'],
+          p: ['class', 'id', 'style'],
           path: ['d', 'style', 'id'],
-          pre: ['class', 'style'],
+          pre: ['class', 'id', 'style'],
           section: ['class', 'style'],
           span: ['class', 'style', 'aria-hidden'],
           strong: ['class', 'style'],
-          summary: ['class', 'style'],
+          summary: ['class', 'id', 'style'],
           svg: ['width', 'height', 'viewbox', 'preserveaspectratio', 'style'],
           table: ['border', 'class', 'id', 'style', 'width'],
           tabset: [],
           tbody: ['class', 'style'],
-          td: ['align', 'class', 'colspan', 'rowspan', 'style', 'valign'],
+          td: ['align', 'class', 'colspan', 'rowspan', 'style', 'valign', 'id'],
           template: ['v-slot:tabs', 'v-slot:content'],
-          th: ['align', 'class', 'colspan', 'rowspan', 'style', 'valign'],
+          th: ['align', 'class', 'colspan', 'rowspan', 'style', 'valign', 'id'],
           thead: ['class', 'style'],
-          tr: ['class', 'rowspan', 'style', 'align', 'valign'],
-          ul: ['class', 'style'],
+          tr: ['class', 'rowspan', 'style', 'align', 'valign', 'id'],
+          ul: ['class', 'id', 'style'],
           use: ['href', 'transform']
         },
         css: false