AK-21/Graphite-Industrial-Intelligence
0
1/**2 * @import {Event, Resolver, TokenizeContext} from 'micromark-util-types'3 */4 5/**6 * Call all `resolveAll`s.7 *8 * @param {ReadonlyArray<{resolveAll?: Resolver | undefined}>} constructs9 * List of constructs, optionally with `resolveAll`s.10 * @param {Array<Event>} events11 * List of events.12 * @param {TokenizeContext} context13 * Context used by `tokenize`.14 * @returns {Array<Event>}15 * Changed events.16 */17export function resolveAll(constructs, events, context) {18 /** @type {Array<Resolver>} */19 const called = []20 let index = -121 22 while (++index < constructs.length) {23 const resolve = constructs[index].resolveAll24 25 if (resolve && !called.includes(resolve)) {26 events = resolve(events, context)27 called.push(resolve)28 }29 }30 31 return events32}33 