const { useDocument } = require('@terrace-lang/js/document') const { createFileReader } = require('@terrace-lang/js/readers/node-readline') const fs = require('fs/promises') const path = require('path') const knownNodes = require('./index.js') module.exports = async function (originalDoc, rootLevel, ...args) { const includedDoc = useDocument(createFileReader(originalDoc.tail())) const { next, head, tail, level } = includedDoc const node = { type: originalDoc.head(), class: '', children: [] } while (await next()) { if (!head()) continue const block = head() if (!knownNodes[block]) continue node.children.push(await knownNodes[block](includedDoc, level(), ...args)) } console.dir(node) return node }