This content appeared because the shared consent state changed—not because a framework wrapper reimplemented it.
Web Components + vanilla API
One consent layer.
Any rendering stack.
No React context is required here. Native custom elements subscribe directly to the same purpose decisions, GPC state, and preference surface.HTML / NATIVE
<pact-gate purpose="marketing">
<campaign-insights />
</pact-gate>
<pact-preferences-button>
Privacy choices
</pact-preferences-button>RENDERED RESULTPurpose gate / marketingCampaign insights are active. Privacy choices
Unknown purpose should never render.