export default parse import * as initializeContent from './initialize/content.mjs' import * as initializeDocument from './initialize/document.mjs' import * as initializeFlow from './initialize/flow.mjs' import * as initializeText from './initialize/text.mjs' import combineExtensions from './util/combine-extensions.mjs' import createTokenizer from './util/create-tokenizer.mjs' import miniflat from './util/miniflat.mjs' import * as constructs from './constructs.mjs' function parse(options) { var settings = options || {} var parser = { defined: [], constructs: combineExtensions( [constructs].concat(miniflat(settings.extensions)) ), content: create(initializeContent), document: create(initializeDocument), flow: create(initializeFlow), string: create(initializeText.string), text: create(initializeText.text) } return parser function create(initializer) { return creator function creator(from) { return createTokenizer(parser, initializer, from) } } }