11import { Canvg , presets } from "canvg" ;
22import Reveal from "reveal.js" ;
33import RevealMarkdown from "reveal.js/plugin/markdown/markdown.esm.js" ;
4- import Markdown from "reveal.js/plugin/markdown/markdown .esm.js" ;
4+ import RevealMenu from "reveal.js-menu/menu .esm.js" ;
55import "reveal.js/dist/reveal.css" ;
66import "reveal.js/dist/theme/black.css" ;
77import "@fontsource/source-sans-pro" ;
8- import RevealMenu from "reveal.js-menu/menu.esm.js" ;
98import "reveal.js-menu/menu.css" ;
109import mermaid from "mermaid" ;
11- import mermaidAPI from "mermaid " ;
12- import RevealNotes from "reveal.js" ;
10+ import RevealNotes from "reveal.js/plugin/notes/notes.esm.js " ;
11+
1312
1413const preset = presets . offscreen ( ) ;
1514
1615let x = RevealMarkdown ;
1716let $ = require ( "jquery" ) ;
18- global . jQuery = $ ;
19- global . $ = $ ;
20- window . jQuery = $ ;
21- window . $ = $ ;
17+ globalThis . jQuery = $ ;
18+ globalThis . $ = $ ;
2219
2320mermaid . startOnLoad = false ;
2421
@@ -51,13 +48,6 @@ function LoadUpReveal(
5148 pluginsToLoad . push ( RevealMarkdown ) ;
5249 if ( showMenu ) pluginsToLoad . push ( RevealMenu ) ;
5350 pluginsToLoad . push ( RevealNotes ) ;
54- let sleepTime = 100 ;
55- let selectorToUse =
56- "div." +
57- deckid +
58- " > div.slides > section.present > div.mermaid, div." +
59- deckid +
60- " > div.slides > section.present > pre > code.mermaid" ;
6151 let selectorToUseOnSlideChange = "div.mermaid, code.mermaid" ;
6252 let deck1 = new Reveal ( document . querySelector ( "div." + deckid ) , {
6353 embedded : embed ,
@@ -110,13 +100,11 @@ function LoadUpReveal(
110100 if ( useMermaid ) {
111101 currentSlide = deck1 . getCurrentSlide ( ) ;
112102 }
113- let notes = deck1 . getSlideNotes ( currentSlide ) ;
114103 UseMermaidNow ( currentSlide , selectorToUseOnSlideChange ) ;
115104 } ) ;
116105
117106 deck1 . on ( "slidechanged" , ( event ) => {
118107 if ( useMermaid ) {
119- let notes = deck1 . getSlideNotes ( event . currentSlide ) ;
120108 RemoveProcessed ( event . previousSlide ) ;
121109 UseMermaidNow ( event . currentSlide , selectorToUseOnSlideChange ) ;
122110 }
@@ -136,18 +124,17 @@ function RemoveProcessed(slideToRemoveFrom) {
136124 let selectorToUse =
137125 "div.mermaid[data-processed], code.mermaid[data-processed]" ;
138126 let toRender = slideToRemoveFrom . querySelectorAll ( selectorToUse ) ;
139- toRender . forEach ( ( item ) => {
127+ for ( const item of toRender ) {
140128 if ( item . hasAttribute ( processedAttribName ) ) {
141129 while ( item . firstChild ) {
142- item . removeChild ( item . firstChild ) ;
130+ item . firstChild . remove ( ) ;
143131 }
144132 item . removeAttribute ( processedAttribName ) ;
145133
146134 let rawCode = item . rawCode ;
147135 item . innerHTML = rawCode ;
148136 }
149- } ) ;
150- let toRenderCheck = slideToRemoveFrom . querySelectorAll ( selectorToUse ) ;
137+ }
151138}
152139
153140function mermaidCb ( id , addlinks ) {
@@ -198,31 +185,20 @@ export async function UseMermaidNow(
198185) {
199186 let toRender = useMermaidOn . querySelectorAll ( selector ) ;
200187 if ( toRender . length > 0 ) {
201- toRender . forEach ( ( item ) => {
188+ for ( const item of toRender ) {
202189 if ( ! item . hasOwnProperty ( "rawCode" ) ) item . rawCode = item . innerHTML ;
203- } ) ;
204-
205- //await mermaid.run();
206-
207- //await mermaid.run(undefined, toRender, (id) => {
208- // mermaidCb(id, addlinks);
209- //});
190+ }
210191
211192 mermaid . init ( undefined , toRender , ( id ) => {
212193 mermaidCb ( id , addlinks ) ;
213194 } ) ;
214- let afterRender = useMermaidOn . querySelectorAll ( selector ) ;
215- afterRender . forEach ( ( item ) => {
216- let x = 1 ;
217- } ) ;
218195 }
219196}
220197
221198export async function UseMermaid (
222199 document ,
223200 addlinks = true ,
224201 selector = ".language-mermaid" ,
225- excludeSelector = "div.slides > section"
226202) {
227203 $ ( async function ( ) {
228204 MermaidInit ( addlinks ) ;
@@ -291,7 +267,7 @@ function addLinks(id) {
291267function drawCanvas ( id , callback ) {
292268 let svg = document . getElementById ( id ) ;
293269 let { width, height } = svg . getBoundingClientRect ( ) ;
294- let pixelRatio = 2 ; //window.devicePixelRatio || 1;
270+ let pixelRatio = 2 ;
295271
296272 // lets scale the canvas and change its CSS width/height to make it high res.
297273 // canvas.style.width = canvas.width +'px';
@@ -301,9 +277,6 @@ function drawCanvas(id, callback) {
301277 let canvas = ( canvas = new OffscreenCanvas ( newWidth , newHeight ) ) ; // document.createElement('canvas'); // Create a Canvas element.
302278 let ctx = canvas . getContext ( "2d" ) ; // For Canvas returns 2D graphic.
303279
304- // ctx.fillStyle = 'white'; // background color for the canvas
305- // ctx.fillRect(0, 0, width, height); // fill the color on the canvas
306-
307280 // Now that its high res we need to compensate so our images can be drawn as
308281 //normal, by scaling everything up by the pixelRatio.
309282 // ctx.setTransform(pixelRatio,0,0,pixelRatio,0,0);
@@ -321,7 +294,6 @@ function drawCanvas(id, callback) {
321294 callback ( img ) ;
322295 } ) ;
323296
324- //img.style.width = width +'px';
325297 } ) ;
326298 } ) ;
327299}
@@ -331,8 +303,7 @@ export function hookFullScreen() {
331303 cb . checked = localStorage . getItem ( "cb-checked" ) === "true" ;
332304
333305 fullScreen ( ) ;
334- cb . onchange = function ( evt ) {
335- let x = 1 ;
306+ cb . onchange = function ( ) {
336307 fullScreen ( ) ;
337308 } ;
338309}
0 commit comments