Builds a richer "no elements matched" error that distinguishes between
three common failure modes so users can fix them quickly:
Nothing at all was drawn (no SVG children) — likely the binder ran
before D3 rendered.
Something was drawn but nothing matches the given selector — likely
a typo, wrong class, or wrong element name.
The selector matches elements but none carry a __data__ binding —
the DOM was drawn by hand (or by a non-D3 library), so the binder
has no data to extract.
Parameters
container: Element
The root element the selector was run against.
selector: string
The CSS selector the user provided.
elementKind: string
Human-friendly name for the target elements
(e.g. "bar", "box group", "cell") used in the
suggestion text.
Builds a richer "no elements matched" error that distinguishes between three common failure modes so users can fix them quickly:
__data__binding — the DOM was drawn by hand (or by a non-D3 library), so the binder has no data to extract.