mirror of
https://github.com/sern-handler/website
synced 2026-07-05 14:09:45 +00:00
feat: migrate to starlight
This commit is contained in:
31
node_modules/parse-latin/lib/plugin/patch-position.js
generated
vendored
Normal file
31
node_modules/parse-latin/lib/plugin/patch-position.js
generated
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
import {visitChildren} from 'unist-util-visit-children'
|
||||
|
||||
// Patch the position on a parent node based on its first and last child.
|
||||
export const patchPosition = visitChildren(function (child, index, node) {
|
||||
const siblings = node.children
|
||||
|
||||
if (!child.position) {
|
||||
return
|
||||
}
|
||||
|
||||
if (
|
||||
index < 1 &&
|
||||
/* c8 ignore next */
|
||||
(!node.position || !node.position.start)
|
||||
) {
|
||||
patch(node)
|
||||
node.position.start = child.position.start
|
||||
}
|
||||
|
||||
if (index === siblings.length - 1 && (!node.position || !node.position.end)) {
|
||||
patch(node)
|
||||
node.position.end = child.position.end
|
||||
}
|
||||
})
|
||||
|
||||
// Add a `position` object when it does not yet exist on `node`.
|
||||
function patch(node) {
|
||||
if (!node.position) {
|
||||
node.position = {}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user