Skip to content

BOUNDARY_SELECTOR

const BOUNDARY_SELECTOR: "[data-ebitex-source]" = '[data-ebitex-source]'

The pin vocabulary — geometry, naming and appearance — with no framework in it.

It was lifted out of react/PreviewOverlay.tsx unchanged rather than copied, because a server-rendered site now draws the same pins from a plain script. Two implementations of one closed vocabulary drift silently, and the drift is invisible until someone compares two screenshots of the same page. Both overlays call into this module for everything except how they put the boxes on screen: React portals them, the script appends elements.

Nothing here touches React, and nothing here reads the document except through the element handles its caller supplies — which is what lets the same code serve a live React tree (boundaries registered as components mount) and static server-rendered HTML (boundaries recovered from a registry document).