فهرست منبع

Merge pull request #783 from weseek/imprv/add-reveal-growi_renderer-plugin

Imprv/add reveal growi renderer plugin
Yuki Takei 7 سال پیش
والد
کامیت
7089214438
2فایلهای تغییر یافته به همراه23 افزوده شده و 2 حذف شده
  1. 1 2
      src/client/js/legacy/crowi-presentation.js
  2. 22 0
      src/client/js/util/reveal/plugins/growi-renderer.js

+ 1 - 2
src/client/js/legacy/crowi-presentation.js

@@ -33,10 +33,9 @@ Reveal.initialize({
 
 require.ensure([], () => {
   require('reveal.js/lib/js/classList.js');
-  require('reveal.js/plugin/markdown/marked.js');
-  require('reveal.js/plugin/markdown/markdown.js');
   require('reveal.js/plugin/zoom-js/zoom.js');
   require('reveal.js/plugin/notes/notes.js');
+  require('../util/reveal/plugins/growi-renderer.js');
 
   // fix https://github.com/weseek/crowi-plus/issues/96
   Reveal.slide(0, 0);

+ 22 - 0
src/client/js/util/reveal/plugins/growi-renderer.js

@@ -0,0 +1,22 @@
+/**
+ * reveal.js growi-renderer plugin.
+ */
+(function() {
+  // put 'hoge' on each slide.
+  let sections = document.querySelectorAll( '[data-markdown]'), section;
+  for (let i = 0, len = sections.length; i < len; i++ ) {
+    section = sections[i];
+    // remove all existing children.
+    while (section.firstChild) section.removeChild(section.firstChild);
+    // add h1 DOM 'Hoge'.
+    let h1 = document.createElement('h1');
+    h1.appendChild(document.createTextNode('Hoge'));
+    section.appendChild(h1);
+  }
+  const GrowiRenderer = require('../../GrowiRenderer').default;
+  // parent window DOM (crowi.js) of presentation window.
+  let parentWindow = window.parent;
+  let growiRenderer = new GrowiRenderer(parentWindow.crowi, parentWindow.crowiRenderer, {mode: 'editor'});
+  growiRenderer.setup();
+  // TODO: retract code block by GrowiRenderer in GC-1354.
+}());