UNPKG

markdown-code-example-inserter

Version:
16 lines (15 loc) 772 B
import { existsSync } from 'node:fs'; import { readFile } from 'node:fs/promises'; import { dirname, resolve } from 'node:path'; import { CodeExampleFileMissingError } from '../errors/code-example-file-missing.error.js'; export function extractExamplePath(originalMarkdownFilePath, linkComment) { const codeExamplePath = resolve(dirname(originalMarkdownFilePath), linkComment.linkPath); if (!existsSync(codeExamplePath)) { throw new CodeExampleFileMissingError(codeExamplePath, originalMarkdownFilePath); } return codeExamplePath; } export async function extractExampleCode(originalMarkdownFilePath, linkComment) { const exampleCodePath = extractExamplePath(originalMarkdownFilePath, linkComment); return await readFile(exampleCodePath); }