def pattern.resolve
gralha-svg-render@0.1.0.1 · svg.bend:2967
import gralha-svg-render@0.1.0.1/svg.bend as Svg
import Base
import gralha-text-scan@0.1.0.1/scan.bend as U
import gralha-xml-doc@0.1.0.1/xml.bend as XML
2967def pattern.resolve(depth: Nat, +node: XML.Element, +all: List<&2, XML.Element>) -> XML.Element:
2968 match depth:
2969 case 0n: node
2970 case 1n+d:
2971 XML.Element{n, as, kids, txt} = node
2972 +href = XML.attr.get(as, "href", XML.attr.get(as, "xlink:href", ""))
2973 U.branch(XML.Element, U.prefix(href, "#"),
2974 _ => pattern.reference(node, resource.find(all, U.drop(href, "#")), e => pattern.resolve(d, e, all)), _ => node)