lix-website/themes/lix/assets/bootstrap/node_modules/unist-util-find-all-after/index.js
2024-04-26 22:49:34 -06:00

35 lines
747 B
JavaScript

'use strict'
var convert = require('unist-util-is/convert')
module.exports = findAllAfter
function findAllAfter(parent, index, test) {
var is = convert(test)
var results = []
if (!parent || !parent.type || !parent.children) {
throw new Error('Expected parent node')
}
if (typeof index === 'number') {
if (index < 0 || index === Infinity) {
throw new Error('Expected positive finite number as index')
}
} else {
index = parent.children.indexOf(index)
if (index < 0) {
throw new Error('Expected child node or index')
}
}
while (++index < parent.children.length) {
if (is(parent.children[index], index, parent)) {
results.push(parent.children[index])
}
}
return results
}