mirror of
				https://github.com/mermaid-js/mermaid.git
				synced 2025-11-04 12:54:08 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			142 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			142 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<!DOCTYPE html>
 | 
						|
<html lang="en">
 | 
						|
<head>
 | 
						|
  <meta charset="UTF-8">
 | 
						|
  <title>mermaid - Markdownish syntax for generating flowcharts, sequence diagrams, class diagrams, gantt charts and git graphs.</title>
 | 
						|
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
 | 
						|
  <meta name="description" content="Markdownish syntax for generating flowcharts, sequence diagrams, class diagrams, gantt charts and git graphs.">
 | 
						|
  <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 | 
						|
  <!-- <link rel="stylesheet" href="//unpkg.com/docsify/lib/themes/vue.css"> -->
 | 
						|
  <link rel="stylesheet" href="theme.css">
 | 
						|
  <script src="//cdn.jsdelivr.net/npm/mermaid@8.13.0/dist/mermaid.min.js"></script>
 | 
						|
  <!-- <script src="http://localhost:9000/mermaid.js"></script> -->
 | 
						|
  <script>
 | 
						|
    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
 | 
						|
    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
 | 
						|
    m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
 | 
						|
    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
 | 
						|
 | 
						|
    ga('create', 'UA-153180559-1', 'auto');
 | 
						|
    if(location) {
 | 
						|
       ga('send', 'pageview', location.hash);
 | 
						|
     }
 | 
						|
 | 
						|
    </script>
 | 
						|
    <script>var require = { paths: { 'vs': 'https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.29.1/min/vs' } }</script>
 | 
						|
    <script src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.29.1/min/vs/loader.min.js"></script>
 | 
						|
    <script src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.29.1/min/vs/editor/editor.main.nls.js"></script>
 | 
						|
    <script src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.29.1/min/vs/editor/editor.main.js"></script>    
 | 
						|
    <script>exports = {};</script>
 | 
						|
    <script src="https://unpkg.com/monaco-mermaid/browser.js"></script>
 | 
						|
 | 
						|
  <style>
 | 
						|
  .markdown-section {
 | 
						|
    max-width: 1200px;
 | 
						|
  }
 | 
						|
  </style>
 | 
						|
</head>
 | 
						|
<body>
 | 
						|
  <div id="app"></div>
 | 
						|
  <script>
 | 
						|
    var initEditor = exports.default;
 | 
						|
    var parser = new DOMParser();
 | 
						|
    var currentCodeExample = 0;
 | 
						|
    var colorize = [];
 | 
						|
 | 
						|
    function colorizeEverything(html) {
 | 
						|
      initEditor(monaco)
 | 
						|
      return new Promise((resolve, reject) => {
 | 
						|
        monaco.editor.setTheme('mermaid')
 | 
						|
        var parsed = parser.parseFromString(html, 'text/html').body
 | 
						|
        Promise.all([...parsed.querySelectorAll('pre[id*="code"]')].map(codeBlock => monaco.editor.colorize(codeBlock.innerText, 'mermaid'))).then(result => {
 | 
						|
          parsed.querySelectorAll('pre[id*="code"]').forEach((codeBlock, index) => codeBlock.innerHTML = result[index])
 | 
						|
          resolve(parsed.innerHTML)
 | 
						|
        })
 | 
						|
      })
 | 
						|
    }
 | 
						|
 | 
						|
    function escapeHTML(html) {
 | 
						|
      return html.replaceAll('&', '&').replaceAll('<', '<').replaceAll('>', '>').replaceAll('"', '"').replaceAll('\'', ''')
 | 
						|
    }
 | 
						|
 | 
						|
    window.$docsify = {
 | 
						|
      search: 'auto',
 | 
						|
      name: 'mermaid',
 | 
						|
      repo: 'https://github.com/mermaid-js/mermaid',
 | 
						|
      loadSidebar: true,
 | 
						|
      mergeNavbar: true,
 | 
						|
      maxLevel: 4,
 | 
						|
      subMaxLevel: 2,
 | 
						|
      markdown: {
 | 
						|
        renderer: {
 | 
						|
          code: function(code, lang) {
 | 
						|
            if (lang.startsWith('mermaid') || lang === 'mmd') {
 | 
						|
              var resultingHTML = '';
 | 
						|
              
 | 
						|
              if (lang === "mmd" || lang === 'mermaid-example') {
 | 
						|
                currentCodeExample++;
 | 
						|
                colorize.push(currentCodeExample);
 | 
						|
                resultingHTML += (
 | 
						|
                  '<pre id="code' + currentCodeExample + '">' + escapeHTML(code) + '</pre>'
 | 
						|
                )
 | 
						|
              }
 | 
						|
              
 | 
						|
              if (lang === 'mermaid' || lang === 'mermaid-example') {
 | 
						|
                resultingHTML += (
 | 
						|
                  '<div class="mermaid">' + mermaid.render('mermaid-svg-' + num++, code) + "</div>"
 | 
						|
                );
 | 
						|
              }
 | 
						|
 | 
						|
              if (resultingHTML !== '') {
 | 
						|
                return resultingHTML;
 | 
						|
              }
 | 
						|
            }
 | 
						|
            return this.origin.code.apply(this, arguments);
 | 
						|
          }
 | 
						|
        }
 | 
						|
      },
 | 
						|
      plugins: [
 | 
						|
        function (hook, vm) {
 | 
						|
          hook.beforeEach(function (html) {
 | 
						|
            url = 'https://github.com/mermaid-js/mermaid/blob/develop/docs/' + vm.route.file
 | 
						|
            var editHtml = '[:memo: Edit this Page](' + url + ')\n'
 | 
						|
            return editHtml + html
 | 
						|
          })
 | 
						|
 | 
						|
          hook.afterEach(function (html, next) {
 | 
						|
            next(html);
 | 
						|
            (async() => {
 | 
						|
                while (!window.hasOwnProperty("monaco"))
 | 
						|
                    await new Promise(resolve => setTimeout(resolve, 1000));
 | 
						|
                colorizeEverything(html).then(newHTML => document.querySelector('article.markdown-section').innerHTML = newHTML)
 | 
						|
            })();
 | 
						|
          })
 | 
						|
        }
 | 
						|
      ]
 | 
						|
    }
 | 
						|
 | 
						|
    var num = 0;
 | 
						|
    const isDarkMode = window.matchMedia("(prefers-color-scheme: dark)").matches
 | 
						|
 | 
						|
    const conf = { logLevel:4, startOnLoad: false, themeCSS:'.label { font-family: Source Sans Pro,Helvetica Neue,Arial,sans-serif; }' };
 | 
						|
    if(isDarkMode && false) conf.theme = 'dark';
 | 
						|
    mermaid.initialize(conf);
 | 
						|
 | 
						|
  </script>
 | 
						|
  <script>
 | 
						|
   window.onhashchange = function(a) {
 | 
						|
     //code
 | 
						|
     if(location) {
 | 
						|
       ga('send', 'pageview', location.hash);
 | 
						|
     }
 | 
						|
  }
 | 
						|
  </script>
 | 
						|
  <script src="//cdn.jsdelivr.net/npm/docsify/lib/docsify.min.js"></script>
 | 
						|
  <script src="//cdn.jsdelivr.net/npm/docsify/lib/plugins/search.min.js"></script>
 | 
						|
  <script src="//cdn.jsdelivr.net/npm/docsify/lib/plugins/ga.min.js"></script>
 | 
						|
</body>
 | 
						|
</html>
 | 
						|
<!--  -->
 | 
						|
 | 
						|
</html>
 |