import { document } from '../../../implementations/js/packages/core/src/terrace.js' import fs from 'node:fs' import readline from 'node:readline/promises' import markdown from '../../../packages/js/block-markdown/index.js' async function main() { const mdHandler = markdown({}) const it = readline.createInterface({ input: fs.createReadStream('./test.tce', 'utf-8'), })[Symbol.asyncIterator]() const doc = document(async () => (await it.next()).value) async function mainHandler({ line, lineData, ended, next, current }, page) { if (ended) return page if (line.startsWith('markdown')) { lineData.offset = 'markdown'.length page.body += await mdHandler(current(), mainHandler) lineData.offset = 0 return mainHandler(current(), page) } return mainHandler(await next(), page) } console.log(await mainHandler(await doc.next(), { body: '' })) } main()