Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | 5x 5x 71x 71x 71x 865x 863x 2x 2x 2x 2x | import { Notice } from 'obsidian'; import { ObsidianUtils } from '../obsidianUtils'; export class ExcalidrawProcessor { private excalidrawImageRegex = /!\[\[(.*\.excalidraw)\|?([^\]]*)??\]\]\s?(<!--.*-->)?/i; private utils: ObsidianUtils; constructor(utils: ObsidianUtils) { this.utils = utils; } process(markdown: string) { return markdown .split('\n') .map(line => { if (this.excalidrawImageRegex.test(line)) return this.transformLine(line); return line; }) .join('\n'); } private transformLine(line: string) { const [, image, ext, comment] = this.excalidrawImageRegex.exec(line); const imgFile = this.utils.findFile(image); Iif (imgFile === null) { new Notice(`Cannot find Image for ${image}. Make sure to activate Auto-export SVG/PNG in Excalidraw Settings.`, 8000); return line; } return `![[${imgFile}${ext == undefined ? '' : '|' + ext}]] ${comment ?? ''}`; } } |