Skip to content

Commit

Permalink
Merge pull request #3589 from mermaid-js/sidv/fixLazyLoad
Browse files Browse the repository at this point in the history
fix: Import diagram
  • Loading branch information
knsv committed Oct 6, 2022
2 parents 0f2e0c2 + 9f286b4 commit e49825b
Show file tree
Hide file tree
Showing 5 changed files with 11 additions and 18 deletions.
2 changes: 1 addition & 1 deletion cypress/platform/knsv2.html
Expand Up @@ -100,7 +100,7 @@
logLevel: 0,
// basePath: './packages/',
// themeVariables: { darkMode: true },
extraDiagrams: ['./mermaid-mindmap-detector.js'],
extraDiagrams: ['./mermaid-mindmap-detector.core.mjs'],
// extraDiagrams: ['../../mermaid-mindmap/registry.ts'],
});
function callback() {
Expand Down
2 changes: 1 addition & 1 deletion cypress/platform/viewer.js
Expand Up @@ -36,7 +36,7 @@ const contentLoaded = function () {
document.getElementsByTagName('body')[0].appendChild(div);
}

graphObj.mermaid.extraDiagrams = ['/mermaid-mindmap-detector.js'];
graphObj.mermaid.extraDiagrams = ['/mermaid-mindmap-detector.core.mjs'];

mermaid2.initialize(graphObj.mermaid);
mermaid2.init();
Expand Down
8 changes: 1 addition & 7 deletions packages/mermaid-mindmap/src/registry.ts
@@ -1,16 +1,10 @@
export const id = 'mindmap';

const detector = (txt: string) => {
export const detector = (txt: string) => {
return txt.match(/^\s*mindmap/) !== null;
};

export const loadDiagram = async () => {
const { mindmap } = await import('./add-diagram');
return { id, diagram: mindmap };
};

export default {
id,
detector,
loadDiagram,
};
3 changes: 3 additions & 0 deletions packages/mermaid/src/diagram-api/detectType.ts
Expand Up @@ -54,6 +54,9 @@ export const addDetector = (
loader: DiagramLoader | null
) => {
detectors[key] = { detector, loader };
// TODO: Remove
// eslint-disable-next-line no-console
console.log(detectors);
};

export const getDiagramLoader = (key: string) => detectors[key].loader;
14 changes: 5 additions & 9 deletions packages/mermaid/src/mermaid.ts
Expand Up @@ -57,15 +57,11 @@ const init = async function (
const conf = mermaidAPI.getConfig();
if (typeof conf.extraDiagrams !== 'undefined' && conf.extraDiagrams.length > 0) {
// config.extraDiagrams.forEach(async (diagram: string) => {
const apa = await import(conf.extraDiagrams[0]);
// Todo figure out how to get the diagram properly
//@ts-ignore temporary code
const did = window['mermaid-mindmap-detector'].default.id; //eslint-disable-line
//@ts-ignore temporary code
const detector = window['mermaid-mindmap-detector'].default.detector; //eslint-disable-line
//@ts-ignore temporary code
const loader = window['mermaid-mindmap-detector'].default.loadDiagram; //eslint-disable-line
addDetector(did, detector, loader);
const { id, detector, loadDiagram } = await import(conf.extraDiagrams[0]);
// TODO: Remove
// eslint-disable-next-line no-console
console.log(id, detector, loadDiagram);
addDetector(id, detector, loadDiagram);
// });
}
mermaid.detectors.forEach(({ id, detector, path }) => {
Expand Down

0 comments on commit e49825b

Please sign in to comment.