mirror of
				https://github.com/mermaid-js/mermaid.git
				synced 2025-10-31 10:54:15 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			166 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			166 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE html>
 | |
| <html lang="en">
 | |
|   <!--# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT. Please edit the corresponding file in packages/mermaid/src/docs.--><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" />
 | |
|     <link
 | |
|       rel="stylesheet"
 | |
|       href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.9.0/css/all.min.css"
 | |
|     />
 | |
|     <script
 | |
|       defer=""
 | |
|       data-domain="mermaid-js.github.io"
 | |
|       src="https://plausible.io/js/plausible.js"
 | |
|     ></script>
 | |
|     <script>
 | |
|       const 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 type="module">
 | |
|       import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@9/dist/mermaid.esm.min.mjs';
 | |
|       window.mermaid = mermaid;
 | |
|     </script>
 | |
|     <script>
 | |
|       let initEditor = exports.default;
 | |
|       let parser = new DOMParser();
 | |
|       let currentCodeExample = 0;
 | |
|       let colorize = [];
 | |
| 
 | |
|       function colorizeEverything(html) {
 | |
|         initEditor(monaco);
 | |
|         return new Promise((resolve, reject) => {
 | |
|           monaco.editor.setTheme('mermaid');
 | |
|           const 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 === 'mermaid-example') {
 | |
|                 currentCodeExample++;
 | |
|                 colorize.push(currentCodeExample);
 | |
|                 return '<pre id="code' + currentCodeExample + '">' + escapeHTML(code) + '</pre>';
 | |
|               } else if (lang === 'mermaid') {
 | |
|                 // TODO: This will need to be updated when render is async.
 | |
|                 return (
 | |
|                   '<pre class="mermaid">' + mermaid.render('mermaid-svg-' + num++, code) + '</pre>'
 | |
|                 );
 | |
|               }
 | |
|               return this.origin.code.apply(this, arguments);
 | |
|             },
 | |
|             heading: function (text) {
 | |
|               if (text.includes('THIS IS AN AUTOGENERATED FILE. DO NOT EDIT')) {
 | |
|                 return '';
 | |
|               }
 | |
|               return this.origin.heading.apply(this, arguments);
 | |
|             },
 | |
|           },
 | |
|         },
 | |
|         plugins: [
 | |
|           function (hook, vm) {
 | |
|             hook.beforeEach(function (html) {
 | |
|               url = 'https://github.com/mermaid-js/mermaid/blob/develop/src/docs/' + vm.route.file;
 | |
|               const 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)
 | |
|                 );
 | |
|               })();
 | |
|             });
 | |
|           },
 | |
|         ],
 | |
|       };
 | |
| 
 | |
|       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) 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>
 | |
|     <script src="//cdn.jsdelivr.net/npm/prismjs@1/components/prism-coffeescript.min.js"></script>
 | |
|   </body>
 | |
| </html>
 | 
