@redrob-labs/ui v1.0.2 · Redrob Group Design System 2026

PrivacyProtection

Safeguards · src/components/PrivacyProtection/PrivacyProtection.tsx

Whether the on-device privacy check is running, at what level, and what it does.

The off state is the important one. On the web and on a phone the check cannot run, and this says so in plain words: what you send goes to the AI as written. A privacy panel that renders the same everywhere would be telling people they are protected where they are not, which is worse than having no panel.

The explanation names where the work happens - a small model on the person's own laptop, swapping details for placeholders before Send and putting the real ones back in the answer. "Your data is protected" is not a claim anybody can check.

Import

import { PrivacyProtection } from '@redrob-labs/ui';

Rendered

The design system's own preview case, run against this package's build. The parity gate compares this rendering to the reference bundle's.

Props

PropTypeNotes
state 'on' | 'off' off when the check cannot run here - on the web, or on a phone.
level string
levels PrivacyLevel[]
running string What is running, beside the live dot.
summary React.ReactNode
lede React.ReactNode | false false hides the explanation.
card boolean false hides the status card.
showLevels boolean false hides the level list.
last React.ReactNode What it caught last, and when.
onLabel string
offTitle React.ReactNode
offText React.ReactNode
foot React.ReactNode
className string