mirror of
				https://github.com/mermaid-js/mermaid.git
				synced 2025-11-04 04:44:08 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			68 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<!--Do not edit this file-->
 | 
						|
<!--Duplicate this file to any name you like, run `pnpm dev`, open http://localhost:9000/dev/name.html to view-->
 | 
						|
<html>
 | 
						|
  <head>
 | 
						|
    <title>Mermaid development page</title>
 | 
						|
    <style>
 | 
						|
      .container {
 | 
						|
        display: flex;
 | 
						|
        flex-direction: row;
 | 
						|
      }
 | 
						|
 | 
						|
      #code {
 | 
						|
        max-width: 30vw;
 | 
						|
        width: 30vw;
 | 
						|
      }
 | 
						|
 | 
						|
      #dynamicDiagram {
 | 
						|
        padding-left: 2em;
 | 
						|
        flex: 1;
 | 
						|
      }
 | 
						|
    </style>
 | 
						|
  </head>
 | 
						|
  <body>
 | 
						|
    <pre id="diagram" class="mermaid">
 | 
						|
graph TB
 | 
						|
      a --> b
 | 
						|
      a --> c
 | 
						|
      b --> d
 | 
						|
      c --> d
 | 
						|
    </pre>
 | 
						|
 | 
						|
    <hr />
 | 
						|
    Type code to view diagram:
 | 
						|
    <div class="container">
 | 
						|
      <textarea name="code" id="code" cols="30" rows="10"></textarea>
 | 
						|
      <div id="dynamicDiagram"></div>
 | 
						|
    </div>
 | 
						|
    <pre class="mermaid">info</pre>
 | 
						|
 | 
						|
    <script type="module">
 | 
						|
      import mermaid from '/mermaid.esm.mjs';
 | 
						|
      import layouts from '/mermaid-layout-elk.esm.mjs';
 | 
						|
      mermaid.registerLayoutLoaders(layouts);
 | 
						|
      async function render(str) {
 | 
						|
        const { svg } = await mermaid.render('dynamic', str);
 | 
						|
        document.getElementById('dynamicDiagram').innerHTML = svg;
 | 
						|
      }
 | 
						|
      const storeKey = window.location.pathname;
 | 
						|
      const code = localStorage.getItem(storeKey);
 | 
						|
      if (code) {
 | 
						|
        document.getElementById('code').value = code;
 | 
						|
        await render(code);
 | 
						|
      }
 | 
						|
      mermaid.initialize({
 | 
						|
        startOnLoad: true,
 | 
						|
        logLevel: 0,
 | 
						|
      });
 | 
						|
      document.getElementById('code').addEventListener('input', async (e) => {
 | 
						|
        const value = e.target.value;
 | 
						|
        localStorage.setItem(storeKey, value);
 | 
						|
        await render(value);
 | 
						|
      });
 | 
						|
    </script>
 | 
						|
 | 
						|
    <script src="/dev/reload.js"></script>
 | 
						|
  </body>
 | 
						|
</html>
 |