File size: 888 Bytes
04ec17f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
export function findNextSibling(el, selector) {
    let sibling = el.nextElementSibling;
    while (sibling) {
        if (sibling.matches(selector))
            return sibling;
        sibling = sibling.nextElementSibling;
    }
}
export function findPreviousSibling(el, selector) {
    let sibling = el.previousElementSibling;
    while (sibling) {
        if (sibling.matches(selector))
            return sibling;
        sibling = sibling.previousElementSibling;
    }
}
export function findFirstStartMarkerWithImmediateSiblingAsEnd(el, type) {
    const startMarkers = el.querySelectorAll(`[data-bits-command-${type}-start]`);
    for (const startMarker of startMarkers) {
        const endMarker = startMarker.nextElementSibling;
        if (endMarker && endMarker.hasAttribute(`data-bits-command-${type}-end`)) {
            return startMarker;
        }
    }
    return null;
}