Sotaro KARASAWA 9 лет назад
Родитель
Сommit
24bd65d92d
2 измененных файлов с 16 добавлено и 1 удалено
  1. 16 1
      resource/js/util/CrowiRenderer.js
  2. 0 0
      resource/js/util/PostProcessor/Emoji.js

+ 16 - 1
resource/js/util/CrowiRenderer.js

@@ -4,7 +4,8 @@ import hljs from 'highlight.js';
 import MarkdownFixer from './PreProcessor/MarkdownFixer';
 import Linker        from './PreProcessor/Linker';
 import ImageExpander from './PreProcessor/ImageExpander';
-import Emoji         from './PreProcessor/Emoji';
+
+import Emoji         from './PostProcessor/Emoji';
 
 import Tsv2Table from './LangProcessor/Tsv2Table';
 import Template from './LangProcessor/Template';
@@ -18,6 +19,8 @@ export default class CrowiRenderer {
       new MarkdownFixer(),
       new Linker(),
       new ImageExpander(),
+    ];
+    this.postProcessors = [
       new Emoji(),
     ];
 
@@ -41,6 +44,17 @@ export default class CrowiRenderer {
     return markdown;
   }
 
+  postProcess(html) {
+    for (let i = 0; i < this.postProcessors.length; i++) {
+      if (!this.postProcessors[i].process) {
+        continue;
+      }
+      html = this.postProcessors[i].process(html);
+    }
+
+    return html;
+  }
+
   codeRenderer(code, lang, escaped) {
     let result = '', hl;
 
@@ -116,6 +130,7 @@ export default class CrowiRenderer {
 
     markdown = this.preProcess(markdown);
     html = this.parseMarkdown(markdown);
+    html = this.postProcess(html);
 
     return html;
   }

+ 0 - 0
resource/js/util/PreProcessor/Emoji.js → resource/js/util/PostProcessor/Emoji.js